CVE-2024-39895: Directus GraphQL field duplication denial of service

CVE-2024-39895 · Severity: low · CVSS 3.1 · Published 2024-07-08

Directus is a popular open-source headless CMS and API platform. An authenticated attacker can send a specially crafted GraphQL query that duplicates fields multiple times, causing the server to consume excessive CPU and memory resources, rendering the service unresponsive for minutes at a time. Repeated attacks could make the platform unavailable to all legitimate users.

Vendors: npm.

Quick answers

Is CVE-2024-39895 exploited in the wild?
No. Junglewise Threat Intelligence has no report of CVE-2024-39895 being exploited in the wild.
How severe is CVE-2024-39895?
Low severity, with a CVSS score of 3.1, published 8 July 2024.
Which products and versions are affected?
@directus/env (npm) SEMVER:introduced=0,fixed=1.1.6.
Is there a fix for CVE-2024-39895?
Yes. @directus/env (npm): upgrade to 1.1.6 or later. Junglewise finds every place you run it, drafts the upgrade and applies it once you approve.
How is CVE-2024-39895 attacked?
It is attacked over the network.
Am I affected by CVE-2024-39895?
Check whether you run @directus/env (npm) at an affected version. Junglewise does that check for you around the clock: connect your code, cloud and domains, and it matches new vulnerabilities like this one against what you actually run and tells you when one reaches you.

How to fix

  • @directus/env (npm): upgrade to 1.1.6 or later
    npm install @directus/env@1.1.6

Technical details

This is a denial-of-service vulnerability exploiting uncontrolled resource consumption in Directus GraphQL query processing (CWE-400). An authenticated user can craft a GraphQL query to the /graphql endpoint that duplicates fields (such as "max" and "id") hundreds of times, forcing the server to perform redundant computation and exhaust CPU/memory. The attack requires valid authentication credentials and network access to the GraphQL endpoint. Exploitation causes the service to become unresponsive for several minutes; repeated attacks could render it indefinitely unavailable. The vulnerability was patched in Directus 10.12.0.

Affected products

  • Directus Directus < 10.12.0

Identifiers

  • CVE-2024-39895
  • GHSA-7hmh-pfrp-vcx4

Timeline

  • 2024-07-08: disclosed
  • 2024-07-08: patched: Fixed in version 10.12.0

References

This page as Markdown. Free to reuse under CC BY 4.0 with a link back.