Advisory Database
  • Advisories
  • Dependency Scanning
  1. npm
  2. ›
  3. directus
  4. ›
  5. CVE-2026-61836

CVE-2026-61836: Directus: Authorization-dependent response served from unsegmented cache key

July 20, 2026

When response caching is enabled (CACHE_ENABLED=true), the cache-key derivation in api/src/utils/get-cache-key.ts includes only version, path, query, and accountability.user (plus a conditional ip). Authorization context beyond user (share, role, roles, admin, app, policies) is not part of the key.

For share tokens this is load-bearing. Directus’s share-authentication flow (api/src/services/shares.ts:100-105) issues a JWT without an id claim, so api/src/utils/get-accountability-for-token.ts never assigns accountability.user, leaving it null (the default from create-default-accountability.ts). Every share token, and every anonymous request, therefore reduces to user: null in the cache-key input. Two different shares (or an anonymous request and a share token) requesting the same URL with the same query produce identical cache keys. The first request populates the bucket with a permission-filtered response; subsequent hits from unrelated shares or anonymous clients receive that payload without any permission re-evaluation.

This is the web-cache pattern “authorization-dependent response cached under an unsegmented key” (cache key collision / missing authorization context in cache key, CWE-524 and CWE-639). Two adjacent read populations collide:

  • Share to share: Share A populates the cache, Share B reads Share A’s scoped response.
  • Share to anonymous (and the reverse): any unauthenticated client hitting the same URL retrieves cached share-scoped data without presenting any token.

References

  • github.com/advisories/GHSA-c6w9-5g5j-jh2p
  • github.com/directus/directus/commit/7ba4efb97525d3af33570537c76e44baea767f13
  • github.com/directus/directus/pull/27707
  • github.com/directus/directus/releases/tag/v12.0.0
  • github.com/directus/directus/security/advisories/GHSA-c6w9-5g5j-jh2p
  • nvd.nist.gov/vuln/detail/CVE-2026-61836

Code Behaviors & Features

Detect and mitigate CVE-2026-61836 with GitLab Dependency Scanning

Secure your software supply chain by verifying that all open source dependencies used in your projects contain no disclosed vulnerabilities. Dependency Scanning using SBOM also detects vulnerabilities from proprietary advisories that this site does not include. Learn more about Dependency Scanning using SBOM →

Affected versions

All versions before 12.0.0

Fixed versions

  • 12.0.0

Solution

Upgrade to version 12.0.0 or above.

Impact 8.6 HIGH

CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:N/A:N

Learn more about CVSS

Weakness

  • CWE-524: Use of Cache Containing Sensitive Information
  • CWE-639: Authorization Bypass Through User-Controlled Key

Source file

npm/directus/CVE-2026-61836.yml

Spotted a mistake? Edit the file on GitLab.

  • Site Repo
  • About GitLab
  • Terms
  • Privacy Statement
  • Contact

Page generated Sun, 08 Nov 2026 00:15:37 +0000.