Casdoor path traversal flaw enables arbitrary file writes
Casdoor IAM platform contains a path traversal flaw allowing authenticated users to write arbitrary files outside intended storage directories.
Sourcekb.cert.org — open the original
What to check
- Applies to
- The 1 CVE named below. Whether you run an affected version is not assessed: check the versions the source lists.
- Exploitation
- A public exploit is recorded for CVE-2026-6815 (poc); no exploitation in the wild is recorded.
Casdoor, an open-source identity and access management platform, is vulnerable to arbitrary file write attacks through its Local File System storage provider. The vulnerability stems from insufficient sanitization of the pathPrefix parameter in the /api/upload-resource endpoint, allowing authenticated attackers with file upload permissions to use directory traversal sequences (e.g., ../../) to escape the intended $CASDOOR/files/ storage directory. The application fails to validate that destination paths remain within the designated sandbox, enabling attackers to create or overwrite any file accessible to the Casdoor process.
Successful exploitation can lead to severe consequences including overwriting the Casdoor backend database (casdoor.db) causing complete authentication service failure, establishing persistence through scheduled tasks or cron jobs, and potentially achieving full host compromise depending on the privileges of the Casdoor service account. The attack requires an authenticated session with file upload and storage provider management permissions. A patch has been submitted via GitHub pull request #5458, and administrators are advised to restrict use of the Local File System provider in multi-user environments and limit filesystem permissions for the Casdoor service account.
Mentioned in this report
Detection guidance
Suspicious File Write Outside Storage Directory by Casdoor Process
A behavioural hunt for the technique in general, not a signature for the CVEs this report names.
Detects the Casdoor process writing or creating files with path traversal sequences or outside its expected files/ storage directory, consistent with exploitation of the upload-resource path traversal flaw. Auto-generated starting point — validate and tune in your environment before deploying. IOC matches can false-positive on shared infrastructure and decay as adversary infrastructure rotates.
title: Suspicious File Write Outside Storage Directory by Casdoor Process
id: ba6f426b-4e62-510f-9ca9-cd12f7f4bbc7
status: experimental
description: Detects file creation events by the Casdoor process where the target
path contains directory traversal sequences, indicating an attempt to write files
outside the intended $CASDOOR/files/ sandbox (e.g. overwriting casdoor.db or dropping
persistence files).
references:
- https://github.com/casdoor/casdoor/pull/5458
logsource:
category: file_event
product: linux
detection:
selection:
Image|contains: casdoor
traversal:
TargetFilename|contains:
- ../
- ..\\
sensitive_target:
TargetFilename|contains:
- casdoor.db
- /etc/cron
- /var/spool/cron
- crontab
condition: selection and (traversal or sensitive_target)
falsepositives:
- Legitimate Casdoor administration tasks that manipulate configuration or database
files directly on disk
- Backup or migration scripts that copy casdoor.db within expected maintenance windows
level: high
tags:
- attack.t1565.001
- attack.t1078
author: Vorant
Cron or Scheduled Task Creation Spawned by Casdoor Service Process
A behavioural hunt for the technique in general, not a signature for the CVEs this report names.
Detects creation of cron jobs or scheduled tasks by a process tree rooted in the Casdoor service, which may indicate persistence established after exploiting the arbitrary file write vulnerability. Auto-generated starting point — validate and tune in your environment before deploying. IOC matches can false-positive on shared infrastructure and decay as adversary infrastructure rotates.
title: Cron or Scheduled Task Creation Spawned by Casdoor Service Process
id: cd6939d1-dc01-5137-ae0a-a8b6cafdb5bf
status: experimental
description: Detects child processes related to scheduled task or cron job creation
(crontab, at, schtasks) spawned by or shortly after activity from the Casdoor process,
suggesting persistence set up following exploitation of the upload-resource path
traversal vulnerability.
references:
- https://github.com/casdoor/casdoor/pull/5458
logsource:
category: process_creation
product: linux
detection:
selection_parent:
ParentImage|contains: casdoor
selection_cmd:
Image|endswith:
- /crontab
- /at
CommandLine|contains:
- crontab
- /etc/cron
- /var/spool/cron
condition: selection_parent and selection_cmd
falsepositives:
- Administrators legitimately scheduling maintenance tasks from a shell spawned under
the Casdoor service account
- Configuration management tools that manage cron entries via the same service account
level: medium
tags:
- attack.t1053
- attack.t1078
author: Vorant
Behavioural rules are generated from public reporting — validate in your environment before deploying.
Source reporting: https://kb.cert.org/vuls/id/937808
Free public brief. The detections with Splunk SPL already written (plus Elastic and KQL where they apply) are in the app with a free account, no card. Slack alerts on the vendors you run come with the paid plans, and a new account gets three days of them.
What this brief leaves out
This page is the free tier: the write-up, the severity, the names. In the app the same report carries its detections (Splunk SPL already written, plus Elastic and Microsoft KQL where they apply) and live profiles of the CVEs it names. The paid plans add the security research and news reporting the free tier leaves out.
It sits in a corpus of 16,436 reports from 149 sources, 661 of them written in the last seven days, and it grows through the day.
A new account starts with three days of all of it, no card, then keeps the government and CERT reporting free. Slack alerts are a paid-plan feature: name the vendors you run and Slack hears about the reports that touch them, not the rest of the week's. Nothing is charged unless you subscribe.
Create a free account What it costs