CVE-2026-33994
locutus: Locutus: Prototype pollution vulnerability in parse_str function
Sévérité par source
Le label propre à Trivy est CRITICAL. Critique selon NVD. Plus basse selon GHSA (moyenne), Red Hat (moyenne).
Description
Locutus brings stdlibs of other programming languages to JavaScript for educational purposes. Starting in version 2.0.39 and prior to version 3.0.25, a prototype pollution vulnerability exists in the `parse_str` function of the npm package locutus. An attacker can pollute `Object.prototype` by overriding `RegExp.prototype.test` and then passing a crafted query string to `parse_str`, bypassing the prototype pollution guard. This vulnerability stems from an incomplete fix for CVE-2026-25521. The CVE-2026-25521 patch replaced the `String.prototype.includes()`-based guard with a `RegExp.prototype.test()`-based guard. However, `RegExp.prototype.test` is itself a writable prototype method that can be overridden, making the new guard bypassable in the same way as the original — trading one hijackable built-in for another. Version 3.0.25 contains an updated fix.
Paquets affectés et versions corrigées
| Source | Paquet | Corrigé en |
|---|---|---|
| npm::GitHub Security Advisory npm | locutus | 3.0.25 |
Références
- https://access.redhat.com/security/cve/CVE-2026-33994
- https://github.com/locutusjs/locutus
- https://github.com/locutusjs/locutus/commit/345a6211e1e6f939f96a7090bfeff642c9fcf9e4
- https://github.com/locutusjs/locutus/pull/597
- https://github.com/locutusjs/locutus/releases/tag/v3.0.25
- https://github.com/locutusjs/locutus/security/advisories/GHSA-rxrv-835q-v5mh
- https://github.com/locutusjs/locutus/security/advisories/GHSA-vc8f-x9pp-wf5p
- https://nvd.nist.gov/vuln/detail/CVE-2026-33994