CVE-2025-27097: @graphql mesh/runtime Cache Variables With The Operations Vulnerability

MODERATE
Advisory Identifier: GHSA-rr4x-crhf-8886
CWE-400 CWE-401
Published
Advisory Summary

CVE-2025-27097 is a MODERATE cache variables with the operations vulnerability (CWE-400: Uncontrolled Resource Consumption) affecting @graphql mesh/runtime libraries in the npm ecosystem. The issue involves cache variables with the operations when transforms exist on the root level even if variables change in the further requests with the same operation. Remediation is available by upgrading affected packages to version 0.96.9.

CVE-2025-27097 at a Glance

CVE Identifier CVE-2025-27097
GHSA Identifier GHSA-rr4x-crhf-8886
Severity MODERATE
CVSS v3.1 Base Score N/A
CWE Classification CWE-400: Uncontrolled Resource Consumption
Affected Product @graphql mesh/runtime
Package Ecosystem npm
Published Date
Last Updated

How to Fix CVE-2025-27097

To remediate this vulnerability, upgrade all affected @graphql mesh/runtime dependencies to a patched release. Both direct and transitive dependencies should be checked, as frameworks or security libraries may pull in vulnerable versions transitively.

@graphql-mesh/runtime fixed: 0.96.9
npm install @graphql-mesh/runtime@0.96.9
Verify Direct and Transitive Dependencies

Run the following command in your project directory to verify that all resolved dependencies use the patched release:

npm ls @graphql-mesh/runtime

How to Check if You Are Affected

To determine whether your Node.js application is affected by CVE-2025-27097, inspect your project dependencies using npm:

npm ls @graphql-mesh/runtime

Analyze the terminal output to locate any version of @graphql mesh/runtime in your dependency tree. If any resolved version matches the vulnerable ranges listed in the table below (for example, versions earlier than 0.96.9), your application is affected.

Note: The npm ls @graphql-mesh/runtime command inspects dependencies declared in your package.json and lockfile; it does not perform automated runtime dynamic scanning.

Technical Details

Vulnerability Mechanism & Technical Analysis

This vulnerability is classified under CWE-400: Uncontrolled Resource Consumption, where the product does not properly control the allocation and maintenance of a limited resource. In @graphql mesh/runtime, software state validation or input boundaries are circumvented during processing. Review the official source advisory statement below for specific affected components, classes, and reproduction details.

Source Advisory Statement

When you have transforms on the root level or single source with transforms, and the client sends the same query with different variables, the initial variables are used in all following requests until the cache evicts DocumentNode. Let's say if a token is sent via variables, the following requests will act like the same token is sent even if the following requests have different tokens. This can cause a short memory leak but it won't grow per each request but per different operation until the cache evicts DocumentNode by LRU mechanism.

CVE-2025-27097 Affected @graphql mesh/runtime Versions

1 component(s)
Fixed Versions:
0.96.9
Product / Package Ecosystem Affected Versions Fixed Version
@graphql-mesh/runtime
npm
≥ 0.96.5
< 0.96.9
0.96.9

References

Frequently Asked Questions

What is CVE-2025-27097?
CVE-2025-27097 is a security vulnerability in @graphql mesh/runtime involving Cache variables with the operations when transforms exist on the root level even if variables change in the further requests with the same operation under CWE-400: Uncontrolled Resource Consumption.
Which @graphql mesh/runtime versions are affected?
Affected versions include releases prior to 0.96.9 across affected packages: @graphql-mesh/runtime.
What version fixes CVE-2025-27097?
Upgrading to 0.96.9 (or the latest patched release for your respective branch) resolves the vulnerability.
Is @graphql-mesh/runtime affected?
Yes, @graphql-mesh/runtime is affected in releases prior to 0.96.9. Upgrade your dependency to 0.96.9 or later.
What CWE is associated with CVE-2025-27097?
CVE-2025-27097 is classified under CWE-400: Uncontrolled Resource Consumption (The product does not properly control the allocation and maintenance of a limited resource.).
How can I check npm dependencies for CVE-2025-27097?
Run the dependency tree command: 'npm ls @graphql-mesh/runtime'. This command lists direct and transitive dependencies in your build configuration so you can verify if a vulnerable version is resolved.
Machine-readable OSV JSON OSV v1.5 Schema
Normalized schema output
{
  "schema_version" : "1.4.0",
  "id" : "GHSA-rr4x-crhf-8886",
  "modified" : "2025-02-20T22:50:52Z",
  "published" : "2023-10-10T21:29:50Z",
  "aliases" : [ "CVE-2025-27097" ],
  "summary" : "Cache variables with the operations when transforms exist on the root level even if variables change in the further requests with the same operation",
  "details" : "When you have transforms on the root level or single source with transforms, and the client sends the same query with different variables, the initial variables are used in all following requests until the cache evicts DocumentNode.\n\nLet's say if a token is sent via variables, the following requests will act like the same token is sent even if the following requests have different tokens.\n\nThis can cause a short memory leak but it won't grow per each request but per different operation until the cache evicts DocumentNode by LRU mechanism.",
  "severity" : [ {
    "type" : "CVSS_V4",
    "score" : "CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:P/VC:N/VI:L/VA:L/SC:N/SI:N/SA:N"
  } ],
  "affected" : [ {
    "package" : {
      "ecosystem" : "npm",
      "name" : "@graphql-mesh/runtime"
    },
    "ranges" : [ {
      "type" : "ECOSYSTEM",
      "events" : [ {
        "introduced" : "0.96.5"
      }, {
        "fixed" : "0.96.9"
      } ]
    } ]
  } ],
  "references" : [ {
    "type" : "WEB",
    "url" : "https://github.com/Urigo/graphql-mesh/security/advisories/GHSA-rr4x-crhf-8886"
  }, {
    "type" : "WEB",
    "url" : "https://github.com/ardatan/graphql-mesh/security/advisories/GHSA-rr4x-crhf-8886"
  }, {
    "type" : "ADVISORY",
    "url" : "https://nvd.nist.gov/vuln/detail/CVE-2025-27097"
  }, {
    "type" : "WEB",
    "url" : "https://github.com/Urigo/graphql-mesh/commit/482d813a9f75935024aa77872125d197f5fca3d0"
  }, {
    "type" : "PACKAGE",
    "url" : "https://github.com/Urigo/graphql-mesh"
  }, {
    "type" : "WEB",
    "url" : "https://github.com/Urigo/graphql-mesh/releases/tag/release-1696859949678"
  } ],
  "database_specific" : {
    "cwe_ids" : [ "CWE-400", "CWE-401" ],
    "severity" : "MODERATE",
    "github_reviewed" : true,
    "github_reviewed_at" : "2023-10-10T21:29:50Z",
    "nvd_published_at" : "2025-02-20T21:15:26Z"
  }
}