Vulnerability · Published Mar 5, 2026 · Assigned by GitHub_M
CVE-2025-64166Mercurius: Incorrect Content-Type parsing can lead to CSRF attack
Medium 5.4
In plain English
A medium-severity cross-site request forgery in mercurius from mercurius-js. Proof-of-concept exploit code is public. The chance it is exploited in the next 30 days is estimated at 0.2% (higher than 8% of all known vulnerabilities). Fixed versions are available - upgrade the affected package.
Official description
Mercurius is a GraphQL adapter for Fastify. Prior to version 16.4.0, a cross-site request forgery (CSRF) vulnerability was identified. The issue arises from incorrect parsing of the Content-Type header in requests. Specifically, requests with Content-Type values such as application/x-www-form-urlencoded, multipart/form-data, or text/plain could be misinterpreted as application/json. This misinterpretation bypasses the preflight checks performed by the fetch() API, potentially allowing unauthorized actions to be performed on behalf of an authenticated user. This issue has been patched in version 16.4.0.
Affected packages & fixed versions
| Ecosystem | Package | Fixed in | Advisory |
|---|---|---|---|
| npm | mercurius | 16.4.0 | GHSA-v66j-6wwf-jc57 |
Affected products (as reported)
| Vendor | Product | Versions |
|---|---|---|
| mercurius-js | mercurius | < 16.4.0 |
Weakness: CWE-352 · Vector: CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:L/I:L/A:N