Security Digest · Vulnerability record
CVE-2025-55746: Directus allows unauthenticated file upload and file modification due to lacking input sanitization
Directus is a real-time API and App dashboard for managing SQL database content.
CVSS 9.3 Critical EPSS 1.4% · p72
Should you act?
Critical and remotely reachable
No known exploitation yet, but it is network-reachable without credentials. This signal is computed from CISA KEV, EPSS and CVSS data; it is not an editorial verdict.
- No confirmed exploitation. It is not in CISA’s KEV catalog and CISA’s SSVC assessment records no known exploitation. That can change quickly after a public write-up; re-check if you are affected.
- EPSS 1.4%, percentile 72: FIRST’s model estimates a 1.4% chance of exploitation activity in the next 30 days, higher than 72% of all scored CVEs (moderate). EPSS is a probability, not a verdict.
- Remotely reachable with no login and no user interaction. If the vulnerable service is exposed to the internet, prioritize it.
- Only applies if your dependency tree includes
directus(npm) >= 10.8.0, < 11.9.3, fixed in 11.9.3;@directus/api(npm) >= 14.1.0, < 28.0.2, fixed in 28.0.2. Check your lockfile, including transitive dependencies.
What it is
Directus is a real-time API and App dashboard for managing SQL database content. From 10.8.0 to before 11.9.3, a vulnerability exists in the file update mechanism which allows an unauthenticated actor to modify existing files with arbitrary contents (without changes being applied to the files' database-resident metadata) and / or upload new files, with arbitrary content and extensions, which won't show up in the Directus UI. This vulnerability is fixed in 11.9.3.
From the GitHub advisory
Summary
A vulnerability exists in the file update mechanism which allows an unauthenticated actor to modify existing files with arbitrary contents (without changes being applied to the files' database-resident metadata) and / or upload new files, with arbitrary content and extensions, which won't show up in the Directus UI.
Details
Directus exposes the CRUD operations for uploading or handling files under the /files route.
The endpoint handler is responsible for updating an existing file identified by the provided primary key specified through the pk parameter. Primary keys are UUID values such as /files/927b3abf-fb4b-4c66-bdaa-eb7dc48a51cb. Here the filenamedisk value is never sanitized, it's possible to pass a path containing traversal sequences (../) through it, but a fully arbitrary file write is not possible in case the "local" storage handler is used. (Other storage implementations haven't been checked during the research process). The packages/storage-driver-local/src/index.ts file defines two relevant functions: write and fullpath.
Weakness type: CWE-73, CWE-434.
Product: directus (npm) · Assigned by: GitHub_M · Published: 2025-08-20
Affected and fixed versions
| Ecosystem | Package | Vulnerable | First fixed |
|---|---|---|---|
| npm | directus | >= 10.8.0, < 11.9.3 | 11.9.3 |
| npm | @directus/api | >= 14.1.0, < 28.0.2 | 28.0.2 |
| Vendor | Product | Affected versions (per CVE record) |
|---|---|---|
| directus | directus | >= 10.8.0, < 11.9.3 |
Severity scores
| Scored by | CVSS | Score | Vector |
|---|---|---|---|
| GitHub_M | 3.1 | 9.3 Critical | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:N/I:H/A:L |
| GitHub | 3.1 | 9.3 | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:N/I:H/A:L |
- Attack vector: network (remotely reachable)
- Attack complexity: low
- Privileges required: none (no login)
- User interaction: none
- Scope: changed (can affect other components)
CVSS measures how bad a flaw is if exploited, not how likely exploitation is. Read it next to the exploitation data below.
Exploitation and urgency
- CISA KEV: not listed (no confirmed in-the-wild exploitation known to CISA).
- CISA SSVC assessment: exploitation none, automatable yes, technical impact partial.
- FIRST EPSS (model of 2026-10-21): 1.40% probability of exploitation activity in the next 30 days; percentile 72.
Timeline
- — CVE record last updated
- — CVE record published by GitHub_M
- — GitHub-reviewed advisory GHSA-mv33-9f6j-pfmc published (critical)
Sources and references
Original sources first. Version and fix details should always be confirmed against the vendor or project advisory.
Vulnerability records
- GitHub Advisory GHSA-mv33-9f6j-pfmc github.com
- CVE.org record CVE-2025-55746 cve.org
- NVD entry CVE-2025-55746 nvd.nist.gov
Other references from the CVE record and advisory
- github.com github.com
- github.com github.com