Vulnerability · Published Jun 3, 2025 · Assigned by GitHub_M
CVE-2025-24015Deno's AES GCM authentication tags are not verified
High 7.7
In plain English
A high-severity security flaw in deno from denoland. Proof-of-concept exploit code is public. The chance it is exploited in the next 30 days is estimated at 0.3% (higher than 21% of all known vulnerabilities).
Official description
Deno is a JavaScript, TypeScript, and WebAssembly runtime. Versions 1.46.0 through 2.1.6 have an issue that affects AES-256-GCM and AES-128-GCM in Deno in which the authentication tag is not being validated. This means tampered ciphertexts or incorrect keys might not be detected, which breaks the guarantees expected from AES-GCM. Older versions of Deno correctly threw errors in such cases, as does Node.js. Without authentication tag verification, AES-GCM degrades to essentially CTR mode, removing integrity protection. Authenticated data set with set_aad is also affected, as it is incorporated into the GCM hash (ghash) but this too is not validated, rendering AAD checks ineffective. Version 2.1.7 includes a patch that addresses this issue.
Affected products (as reported)
Weakness: CWE-347 · Vector: CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:H/VA:N/SC:N/SI:N/SA:N/E:P
References
- https://github.com/denoland/deno/security/advisories/GHSA-2x3r-hwv5-p32x x_refsource_CONFIRM
- https://github.com/denoland/deno/commit/0d1beed x_refsource_MISC
- https://github.com/denoland/deno/commit/4f27d7cdc02e3edfb9d36275341fb8185d6e99ed x_refsource_MISC
- https://github.com/denoland/deno/commit/a4003a5292bd0affefad3ecb24a8732886900f67 x_refsource_MISC