Directus's session is cached for OpenID and OAuth2 if `redirect` is not used
Key facts
- Attack vector
- Network
- Privileges required
- None
- User interaction
- Required
- Attack complexity
- Low
- Impact type
- Spoofing
- Confidentiality · integrity · availability
- High · None · None
- Fix status
- Fixed
Attack profile from CVSS 3.1 · CNA. Fix status from CNA and GitHub. Impact type from CWE-384.
Summary
Directus is a real-time API and App dashboard for managing SQL database content. An unauthenticated user can access credentials of last authenticated user via OpenID or OAuth2 where the authentication URL did not include redirect query string. This happens because on that endpoint for both OpenId and Oauth2 Directus is using the respond middleware, which by default will try to cache GET requests that met some conditions. Although, those conditions do not include this scenario, when an unauthenticated request returns user credentials. This vulnerability is fixed in 10.13.3 and 11.1.0.
Why it matters now
SSVC decision points
CISA ADP · SSVC 2.0.3
- Exploitation
- None
- Automatable
- No
- Technical impact
- Partial
The decision (Track, Attend, Act) also depends on your mission and well-being impact; see CISA's SSVC guide.
Affected products
| Vendor | Product | Affected versions | Fixed in | Status | Source |
|---|---|---|---|---|---|
| directus | directus | before 10.13.3; 11.0.0 to before 11.1.0 | 10.13.3, 11.1.0 | Patch available | CNA |
| — | directus (npm) | before 10.13.3 | 10.13.3 | Patch available | GHSA-cff8-x7jv-4fm8 |
| — | directus (npm) | 11.0.0-rc.1 to before 11.1.0 | 11.1.0 | Patch available | GHSA-cff8-x7jv-4fm8 |
| — | @directus/api (npm) | before 21.0.1 | 21.0.1 | Patch available | GHSA-cff8-x7jv-4fm8 |
| — | @directus/api (npm) | 22.0.0 to before 22.2.0 | 22.2.0 | Patch available | GHSA-cff8-x7jv-4fm8 |
- directus Vendordirectus Affected before 10.13.3; 11.0.0 to before 11.1.0 Fixed in 10.13.3, 11.1.0 Patch available CNA
- directus (npm) Vendor— Affected before 10.13.3 Fixed in 10.13.3 Patch available GHSA-cff8-x7jv-4fm8
- directus (npm) Vendor— Affected 11.0.0-rc.1 to before 11.1.0 Fixed in 11.1.0 Patch available GHSA-cff8-x7jv-4fm8
- @directus/api (npm) Vendor— Affected before 21.0.1 Fixed in 21.0.1 Patch available GHSA-cff8-x7jv-4fm8
- @directus/api (npm) Vendor— Affected 22.0.0 to before 22.2.0 Fixed in 22.2.0 Patch available GHSA-cff8-x7jv-4fm8
Remediation
- Fix · CNA directus (directus) Fixed in 10.13.3, 11.1.0
- Fix · GHSA-cff8-x7jv-4fm8 directus (npm) Fixed in 10.13.3 Advisory →
- Fix · GHSA-cff8-x7jv-4fm8 directus (npm) Fixed in 11.1.0 Advisory →
- Fix · GHSA-cff8-x7jv-4fm8 @directus/api (npm) Fixed in 21.0.1 Advisory →
- Fix · GHSA-cff8-x7jv-4fm8 @directus/api (npm) Fixed in 22.2.0 Advisory →
Timeline
- 2026-10-02 Threatist record created from CVE-2024-45596
- 2026-10-03 Alias added: GHSA-cff8-x7jv-4fm8
- 2026-10-13 EPSS moved to the 50th–90th percentile
References
Patch 2
More Directus vulnerabilities
- TI-2025-21659 Directus's webhook trigger flows can leak sensitive data CVSS 3.1HIGH 8.6
- TI-2024-36266 Directus allows unauthenticated access to WebSocket events and operations CVSS 3.1HIGH 7.5
- TI-2024-26791 Directus allows SSO User Enumeration CVSS 3.1HIGH 7.5
- TI-2024-23956 Directus is soft-locked by providing a string value to random string util CVSS 3.1HIGH 7.5
- TI-2024-26624 Directus Incorrectly handles _in` filter CVSS 3.1HIGH 7.7
- TI-2025-21658 Directus `search` query parameter allows enumeration of non permitted fields CVSS 3.1MEDIUM 5.3
Sources
- CVE-2024-45596 · CVE Program
- CVE-2024-45596 · NVD
- FIRST EPSS
- GHSA-cff8-x7jv-4fm8 · GitHub Advisory Database · CC BY 4.0
This product uses the NVD API but is not endorsed or certified by the NVD. Sources and licences