Skip to main content

Directus CVE-2026-61836

| EUVDEUVD-2026-44673 HIGH
Use of Cache Containing Sensitive Information (CWE-524)
2026-07-15 GitHub_M GHSA-c6w9-5g5j-jh2p
8.6
CVSS 3.1 · Vendor: GitHub_M
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Identify cached Directus endpoint
  2. Delivery
    Wait for/trigger privileged cache population
  3. Exploit
    Request identical URL as anonymous or other share
  4. Execution
    Receive mis-scoped cached response
  5. Impact
    Read unauthorized filtered data

Vulnerability Assessment

Weakness
CWE
ASVS 5.0
V3 - Web Frontend Security Cache-Control for sensitive pages
Exploitation Conditions

Exploitation requires response caching to be enabled in Directus (not enabled by default), and requires that a cacheable response for the exact same path and query string was already cached by a principal with different effective permissions - specifically a Directus share token or an authenticated user whose accountability.user resolves differently from the attacker. The attacker (an anonymous client or a different share-token holder) must request the identical URL and query while that cache entry is live. Limiting factors: the flaw is inert if caching is off, if URLs/queries differ between principals, or if no higher-privileged request has populated the cache; disclosure is bounded to whatever data the caching principal was permitted to see, not the entire database.

Impact

The published CVSS 3.1 vector (AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:N/A:N, base 8.6) reflects a network-reachable, unauthenticated confidentiality breach with a scope change, which matches a cache that leaks one principal's authorized data to another. Real-world risk is meaningfully gated by two preconditions the base score under-weights: response caching must be explicitly enabled (it is not on by default), and a cacheable response for the exact path and query must have been populated by a principal whose permissions differ from the attacker's. No EPSS score, KEV listing, or POC was provided, so this is a real but not urgent priority: no evidence of active exploitation, and impact is limited to disclosure of data already exposed to some share or role, not full database compromise. I assess AC as higher than the NVD's AC:L because exploitation depends on cache state seeded by another principal; on a busy instance this happens through normal traffic, so defenders running caching with shares should treat it as a genuine data-segregation failure rather than a theoretical one.

Exploit ScenarioDerived

On a Directus instance with response caching enabled, a share link (or an authenticated user) first requests a filtered collection endpoint, populating the cache with a permission-filtered response. An anonymous visitor or a holder of a different share token then requests the identical URL and query and is served that cached response without permission re-evaluation, disclosing records they should not see. No public POC is identified, but the technique requires only normal HTTP requests to matching URLs.

This Week Schedule remediation this week. Why: HIGH severity (CVSS 7.0-8.9).
Patch available 0.3% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Jul 15, 2026

Cross-context cache disclosure in Directus before 12.0.0 lets share-token holders and anonymous clients receive permission-filtered responses that were cached for a differently-scoped principal, because the cache key omits authorization context. When response caching is enabled, the key derived in api/src/utils/get-cache-key.ts covers only version, path, query, and accountability.user; since share tokens and anonymous requests both collapse to user null, requests to the same URL and query share a cache bucket and skip permission re-evaluation. There is no public exploit identified at time of analysis and it is not listed in CISA KEV, but the flaw is a straightforward, config-dependent information-disclosure issue fixed in 12.0.0.

RemediationAI

Vendor-released patch: upgrade to Directus 12.0.0 (https://github.com/directus/directus/releases/tag/v12.0.0), which namespaces cache keys by share and prevents cross-context collisions. If immediate upgrade is not possible, the most effective compensating control is to disable response caching (e.g. CACHE_ENABLED=false), which fully removes the collision at the cost of higher database load and slower repeated queries. As a narrower alternative, avoid using share links and public/anonymous access on cached endpoints, or segregate/purge the cache so share and anonymous traffic cannot reuse entries populated by other principals; this reduces cache hit rates and still does not address collisions between different roles. After patching, flush any existing cache so stale, mis-scoped entries created before the upgrade are not served. See advisory GHSA-c6w9-5g5j-jh2p for authoritative guidance.

Affected VersionsENISA

directus < 12.0.0

Affected Packages

npm directus fix: 12.0.0

Source: OSV (Open Source Vulnerabilities)

Affects your stack

Affects 1 package in npm

Checking this CVE against your own stacks and servers is part of the Basic plan and up.

Technical ContextAI · show details

Directus is a real-time headless CMS that exposes SQL database content through a REST/GraphQL API and admin app, and offers an optional response cache to reduce database load. The root cause is CWE-524 (use of a cache containing sensitive information): the cache-key function keys entries on accountability.user but ignores the broader authorization context (share, role, roles, admin, app, and policies). Directus 'shares' are scoped, tokenized public links to filtered data, and anonymous callers have no user; both resolve accountability.user to null, so two principals with different effective permissions map to the same cache key for an identical path and query. The upstream fix (PR #27707, commit 7ba4efb) namespaces the cache key by adding the share id when present, and adds regression tests proving different shares, anonymous requests, and authenticated users no longer collide on the same URL.

Know when Directus gets its next vulnerability

  • Watch products and get an email when something new is published
  • Check this CVE against your own stack and servers
  • Exploit and PoC references, threat intelligence from 22 sources

No credit card · 7-day full trial

Severity by source

Vendor (GitHub_M) PRIMARY 8.6 HIGH
AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:N/A:N
vuln.today AI 6.8 MEDIUM

Unauthenticated and network-reachable (PR:N/AV:N), but AC:H because exploitation depends on a cache entry pre-populated by a differently-scoped principal; scope changes (S:C) as one principal's data leaks to another, with pure confidentiality impact.

3.1 AV:N/AC:H/PR:N/UI:N/S:C/C:H/I:N/A:N
4.0 AV:N/AC:L/AT:P/PR:N/UI:N/VC:H/VI:N/VA:N/SC:N/SI:N/SA:N

Primary rating from Vendor (GitHub_M).

CVSS VectorVendor: GitHub_M

Attack Vector
Network
Attack Complexity
Low
Privileges Required
None
User Interaction
None
Scope
Changed
Confidentiality
High
Integrity
None
Availability
None

Lifecycle Timeline

2
Patch available
Jul 15, 2026 - 17:48 EUVD
CVE Published
Jul 15, 2026 - 14:17 cve.org
HIGH 8.6

DescriptionCVE.org

Directus is a real-time API and App dashboard for managing SQL database content. Prior to 12.0.0, when response caching is enabled, the cache-key derivation in api/src/utils/get-cache-key.ts includes version, path, query, and accountability.user but omits authorization context such as share, role, roles, admin, app, and policies. Directus share tokens and anonymous requests can both reduce to user null, so different shares or anonymous clients requesting the same URL and query can receive a permission-filtered cached response without permission re-evaluation. This issue is fixed in version 12.0.0.

Blast Radius

ecosystem impact
† from your stack dependencies † transitive graph · vuln.today resolves 4-path depth
  • 2 npm packages depend on directus (1 direct, 1 indirect)

Ecosystem-wide dependent count for version 12.0.0.

Executive ViewAI

Why It Matters

Directus before 12.0.0 contains a cache disclosure vulnerability affecting permission controls when response caching is enabled; no public exploit identified at time of analysis. Unauthorized users and share-token holders could access sensitive data through cached responses, creating compliance and privacy exposure. Immediate upgrade to 12.0.0 is required.

Business Impact: High
Compensating Controls

Apply vendor patch: Upgrade to Directus 12.0.0. Interim mitigation: disable response caching until upgrade is deployed, if operationally feasible.

Threat Intelligence Overview

EPSS Score
0.3%
Top 80% exploitable
Prevalence
Medium
popular open-source headless CMS, moderate self-hosted footprint
Threat Intel
1
1 sources
Data Quality
6 sources
Confidence: High
EUVD NVD CVE.org EPSS Vulnrichment GHSA GitHub VulDB

How this decision was reached

The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.

SignalValue
Severity HIGH
CISA KEV No
Public POC No
EPSS 0.3%
Patch available Yes
Active threat No
Deciding rule
HIGH severity (CVSS 7.0-8.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision
Scheduled
Exploitation
None
System Exposure· derived
Open
Automatable
Yes
Human Impact
High
Technical Impact
Partial

Priority Score

43
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +43
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

Information disclosure occurs when an application unintentionally exposes sensitive data that aids attackers in reconnaissance or directly compromises security.

CVE-2018-10723 CRITICAL POC
9.8 May 05

Directus 6.4.9 has a hardcoded admin password for the Admin account because of an INSERT statement in api/schema.sql. Ra

CVE-2025-55746 CRITICAL POC
9.3 Aug 20

Directus is a real-time API and App dashboard for managing SQL database content. Rated critical severity (CVSS 9.3), thi

CVE-2021-29641 HIGH POC
8.8 Apr 07

Directus 8 before 8.8.2 allows remote authenticated users to execute arbitrary code because file-upload permissions incl

CVE-2021-26594 HIGH POC
8.8 Feb 23

In Directus 8.x through 8.8.1, an attacker can switch to the administrator role (via the PATCH method) without any contr

CVE-2025-30353 HIGH POC
8.6 Mar 26

Directus is a real-time API and App dashboard for managing SQL database content. Rated high severity (CVSS 8.6), this vu

CVE-2024-27295 HIGH POC
8.2 Mar 01

Directus is a real-time API and App dashboard for managing SQL database content. Rated high severity (CVSS 8.2), this vu

CVE-2024-39701 HIGH POC
7.7 Jul 08

Directus is a real-time API and App dashboard for managing SQL database content. Rated high severity (CVSS 7.7), this vu

CVE-2024-54151 HIGH POC
7.5 Dec 09

Directus is a real-time API and App dashboard for managing SQL database content. Rated high severity (CVSS 7.5), this vu

CVE-2024-36128 HIGH POC
7.5 Jun 03

Directus is a real-time API and App dashboard for managing SQL database content. Rated high severity (CVSS 7.5), this vu

CVE-2023-26492 HIGH POC
7.5 Mar 03

Directus is a real-time API and App dashboard for managing SQL database content. Rated high severity (CVSS 7.5), this vu

CVE-2021-26593 HIGH POC
7.5 Feb 23

In Directus 8.x through 8.8.1, an attacker can see all users in the CMS using the API /users/{id}. Rated high severity (

CVE-2024-45596 MEDIUM POC
6.5 Sep 10

Directus is a real-time API and App dashboard for managing SQL database content. Rated medium severity (CVSS 6.5), this

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy