{"url":"http://public2.vulnerablecode.io/api/packages/966395?format=json","purl":"pkg:npm/locutus@3.0.11","type":"npm","namespace":"","name":"locutus","version":"3.0.11","qualifiers":{},"subpath":"","is_vulnerable":true,"next_non_vulnerable_version":"3.0.25","latest_non_vulnerable_version":"3.0.25","affected_by_vulnerabilities":[{"url":"http://public2.vulnerablecode.io/api/vulnerabilities/78030?format=json","vulnerability_id":"VCID-c5db-dmz7-fqej","summary":"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.","references":[{"reference_url":"https://access.redhat.com/hydra/rest/securitydata/cve/CVE-2026-33994.json","reference_id":"","reference_type":"","scores":[{"value":"5.3","scoring_system":"cvssv3","scoring_elements":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:N"}],"url":"https://access.redhat.com/hydra/rest/securitydata/cve/CVE-2026-33994.json"},{"reference_url":"https://api.first.org/data/v1/epss?cve=CVE-2026-33994","reference_id":"","reference_type":"","scores":[{"value":"0.0007","scoring_system":"epss","scoring_elements":"0.21627","published_at":"2026-06-11T12:55:00Z"}],"url":"https://api.first.org/data/v1/epss?cve=CVE-2026-33994"},{"reference_url":"https://github.com/locutusjs/locutus","reference_id":"","reference_type":"","scores":[{"value":"6.3","scoring_system":"cvssv4","scoring_elements":"CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:N/VI:L/VA:N/SC:N/SI:L/SA:N"},{"value":"MODERATE","scoring_system":"generic_textual","scoring_elements":""}],"url":"https://github.com/locutusjs/locutus"},{"reference_url":"https://nvd.nist.gov/vuln/detail/CVE-2026-33994","reference_id":"","reference_type":"","scores":[{"value":"6.3","scoring_system":"cvssv4","scoring_elements":"CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:N/VI:L/VA:N/SC:N/SI:L/SA:N"},{"value":"MODERATE","scoring_system":"generic_textual","scoring_elements":""}],"url":"https://nvd.nist.gov/vuln/detail/CVE-2026-33994"},{"reference_url":"https://bugzilla.redhat.com/show_bug.cgi?id=2452530","reference_id":"2452530","reference_type":"","scores":[],"url":"https://bugzilla.redhat.com/show_bug.cgi?id=2452530"},{"reference_url":"https://github.com/locutusjs/locutus/commit/345a6211e1e6f939f96a7090bfeff642c9fcf9e4","reference_id":"345a6211e1e6f939f96a7090bfeff642c9fcf9e4","reference_type":"","scores":[{"value":"9.8","scoring_system":"cvssv3.1","scoring_elements":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H"},{"value":"6.3","scoring_system":"cvssv4","scoring_elements":"CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:N/VI:L/VA:N/SC:N/SI:L/SA:N"},{"value":"MODERATE","scoring_system":"generic_textual","scoring_elements":""},{"value":"Track*","scoring_system":"ssvc","scoring_elements":"SSVCv2/E:P/A:Y/T:T/P:M/B:A/M:M/D:R/2026-04-01T13:45:33Z/"}],"url":"https://github.com/locutusjs/locutus/commit/345a6211e1e6f939f96a7090bfeff642c9fcf9e4"},{"reference_url":"https://github.com/locutusjs/locutus/pull/597","reference_id":"597","reference_type":"","scores":[{"value":"9.8","scoring_system":"cvssv3.1","scoring_elements":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H"},{"value":"6.3","scoring_system":"cvssv4","scoring_elements":"CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:N/VI:L/VA:N/SC:N/SI:L/SA:N"},{"value":"MODERATE","scoring_system":"generic_textual","scoring_elements":""},{"value":"Track*","scoring_system":"ssvc","scoring_elements":"SSVCv2/E:P/A:Y/T:T/P:M/B:A/M:M/D:R/2026-04-01T13:45:33Z/"}],"url":"https://github.com/locutusjs/locutus/pull/597"},{"reference_url":"https://github.com/locutusjs/locutus/security/advisories/GHSA-rxrv-835q-v5mh","reference_id":"GHSA-rxrv-835q-v5mh","reference_type":"","scores":[{"value":"6.3","scoring_system":"cvssv4","scoring_elements":"CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:N/VI:L/VA:N/SC:N/SI:L/SA:N"},{"value":"MODERATE","scoring_system":"generic_textual","scoring_elements":""}],"url":"https://github.com/locutusjs/locutus/security/advisories/GHSA-rxrv-835q-v5mh"},{"reference_url":"https://github.com/advisories/GHSA-vc8f-x9pp-wf5p","reference_id":"GHSA-vc8f-x9pp-wf5p","reference_type":"","scores":[{"value":"MODERATE","scoring_system":"cvssv3.1_qr","scoring_elements":""}],"url":"https://github.com/advisories/GHSA-vc8f-x9pp-wf5p"},{"reference_url":"https://github.com/locutusjs/locutus/security/advisories/GHSA-vc8f-x9pp-wf5p","reference_id":"GHSA-vc8f-x9pp-wf5p","reference_type":"","scores":[{"value":"9.8","scoring_system":"cvssv3.1","scoring_elements":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H"},{"value":"MODERATE","scoring_system":"cvssv3.1_qr","scoring_elements":""},{"value":"6.3","scoring_system":"cvssv4","scoring_elements":"CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:N/VI:L/VA:N/SC:N/SI:L/SA:N"},{"value":"MODERATE","scoring_system":"generic_textual","scoring_elements":""},{"value":"Track*","scoring_system":"ssvc","scoring_elements":"SSVCv2/E:P/A:Y/T:T/P:M/B:A/M:M/D:R/2026-04-01T13:45:33Z/"}],"url":"https://github.com/locutusjs/locutus/security/advisories/GHSA-vc8f-x9pp-wf5p"},{"reference_url":"https://github.com/locutusjs/locutus/releases/tag/v3.0.25","reference_id":"v3.0.25","reference_type":"","scores":[{"value":"9.8","scoring_system":"cvssv3.1","scoring_elements":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H"},{"value":"6.3","scoring_system":"cvssv4","scoring_elements":"CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:N/VI:L/VA:N/SC:N/SI:L/SA:N"},{"value":"MODERATE","scoring_system":"generic_textual","scoring_elements":""},{"value":"Track*","scoring_system":"ssvc","scoring_elements":"SSVCv2/E:P/A:Y/T:T/P:M/B:A/M:M/D:R/2026-04-01T13:45:33Z/"}],"url":"https://github.com/locutusjs/locutus/releases/tag/v3.0.25"}],"fixed_packages":[{"url":"http://public2.vulnerablecode.io/api/packages/374533?format=json","purl":"pkg:npm/locutus@3.0.25","is_vulnerable":false,"affected_by_vulnerabilities":[],"resource_url":"http://public2.vulnerablecode.io/packages/pkg:npm/locutus@3.0.25"}],"aliases":["CVE-2026-33994","GHSA-vc8f-x9pp-wf5p"],"risk_score":null,"exploitability":null,"weighted_severity":null,"resource_url":"http://public2.vulnerablecode.io/vulnerabilities/VCID-c5db-dmz7-fqej"},{"url":"http://public2.vulnerablecode.io/api/vulnerabilities/78263?format=json","vulnerability_id":"VCID-dxbz-nzmx-hbf1","summary":"Locutus brings stdlibs of other programming languages to JavaScript for educational purposes. Prior to version 3.0.25, the `unserialize()` function in `locutus/php/var/unserialize` assigns deserialized keys to plain objects via bracket notation without filtering the `__proto__` key. When a PHP serialized payload contains `__proto__` as an array or object key, JavaScript's `__proto__` setter is invoked, replacing the deserialized object's prototype with attacker-controlled content. This enables property injection, for...in propagation of injected properties, and denial of service via built-in method override. This is distinct from the previously reported prototype pollution in `parse_str` (GHSA-f98m-q3hr-p5wq, GHSA-rxrv-835q-v5mh) — `unserialize` is a different function with no mitigation applied. Version 3.0.25 patches the issue.","references":[{"reference_url":"https://access.redhat.com/hydra/rest/securitydata/cve/CVE-2026-33993.json","reference_id":"","reference_type":"","scores":[{"value":"5.3","scoring_system":"cvssv3","scoring_elements":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:N"}],"url":"https://access.redhat.com/hydra/rest/securitydata/cve/CVE-2026-33993.json"},{"reference_url":"https://api.first.org/data/v1/epss?cve=CVE-2026-33993","reference_id":"","reference_type":"","scores":[{"value":"0.00055","scoring_system":"epss","scoring_elements":"0.1765","published_at":"2026-06-11T12:55:00Z"}],"url":"https://api.first.org/data/v1/epss?cve=CVE-2026-33993"},{"reference_url":"https://github.com/locutusjs/locutus","reference_id":"","reference_type":"","scores":[{"value":"6.9","scoring_system":"cvssv4","scoring_elements":"CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:L/VA:N/SC:N/SI:N/SA:N"},{"value":"MODERATE","scoring_system":"generic_textual","scoring_elements":""}],"url":"https://github.com/locutusjs/locutus"},{"reference_url":"https://nvd.nist.gov/vuln/detail/CVE-2026-33993","reference_id":"","reference_type":"","scores":[{"value":"6.9","scoring_system":"cvssv4","scoring_elements":"CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:L/VA:N/SC:N/SI:N/SA:N"},{"value":"MODERATE","scoring_system":"generic_textual","scoring_elements":""}],"url":"https://nvd.nist.gov/vuln/detail/CVE-2026-33993"},{"reference_url":"https://bugzilla.redhat.com/show_bug.cgi?id=2452536","reference_id":"2452536","reference_type":"","scores":[],"url":"https://bugzilla.redhat.com/show_bug.cgi?id=2452536"},{"reference_url":"https://github.com/locutusjs/locutus/commit/345a6211e1e6f939f96a7090bfeff642c9fcf9e4","reference_id":"345a6211e1e6f939f96a7090bfeff642c9fcf9e4","reference_type":"","scores":[{"value":"6.9","scoring_system":"cvssv4","scoring_elements":"CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:L/VA:N/SC:N/SI:N/SA:N"},{"value":"MODERATE","scoring_system":"generic_textual","scoring_elements":""},{"value":"Track","scoring_system":"ssvc","scoring_elements":"SSVCv2/E:P/A:Y/T:P/P:M/B:A/M:M/D:T/2026-03-30T15:45:05Z/"}],"url":"https://github.com/locutusjs/locutus/commit/345a6211e1e6f939f96a7090bfeff642c9fcf9e4"},{"reference_url":"https://github.com/locutusjs/locutus/pull/597","reference_id":"597","reference_type":"","scores":[{"value":"6.9","scoring_system":"cvssv4","scoring_elements":"CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:L/VA:N/SC:N/SI:N/SA:N"},{"value":"MODERATE","scoring_system":"generic_textual","scoring_elements":""},{"value":"Track","scoring_system":"ssvc","scoring_elements":"SSVCv2/E:P/A:Y/T:P/P:M/B:A/M:M/D:T/2026-03-30T15:45:05Z/"}],"url":"https://github.com/locutusjs/locutus/pull/597"},{"reference_url":"https://github.com/advisories/GHSA-4mph-v827-f877","reference_id":"GHSA-4mph-v827-f877","reference_type":"","scores":[{"value":"MODERATE","scoring_system":"cvssv3.1_qr","scoring_elements":""}],"url":"https://github.com/advisories/GHSA-4mph-v827-f877"},{"reference_url":"https://github.com/locutusjs/locutus/security/advisories/GHSA-4mph-v827-f877","reference_id":"GHSA-4mph-v827-f877","reference_type":"","scores":[{"value":"MODERATE","scoring_system":"cvssv3.1_qr","scoring_elements":""},{"value":"6.9","scoring_system":"cvssv4","scoring_elements":"CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:L/VA:N/SC:N/SI:N/SA:N"},{"value":"MODERATE","scoring_system":"generic_textual","scoring_elements":""},{"value":"Track","scoring_system":"ssvc","scoring_elements":"SSVCv2/E:P/A:Y/T:P/P:M/B:A/M:M/D:T/2026-03-30T15:45:05Z/"}],"url":"https://github.com/locutusjs/locutus/security/advisories/GHSA-4mph-v827-f877"},{"reference_url":"https://github.com/locutusjs/locutus/releases/tag/v3.0.25","reference_id":"v3.0.25","reference_type":"","scores":[{"value":"6.9","scoring_system":"cvssv4","scoring_elements":"CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:L/VA:N/SC:N/SI:N/SA:N"},{"value":"MODERATE","scoring_system":"generic_textual","scoring_elements":""},{"value":"Track","scoring_system":"ssvc","scoring_elements":"SSVCv2/E:P/A:Y/T:P/P:M/B:A/M:M/D:T/2026-03-30T15:45:05Z/"}],"url":"https://github.com/locutusjs/locutus/releases/tag/v3.0.25"}],"fixed_packages":[{"url":"http://public2.vulnerablecode.io/api/packages/374533?format=json","purl":"pkg:npm/locutus@3.0.25","is_vulnerable":false,"affected_by_vulnerabilities":[],"resource_url":"http://public2.vulnerablecode.io/packages/pkg:npm/locutus@3.0.25"}],"aliases":["CVE-2026-33993","GHSA-4mph-v827-f877"],"risk_score":null,"exploitability":null,"weighted_severity":null,"resource_url":"http://public2.vulnerablecode.io/vulnerabilities/VCID-dxbz-nzmx-hbf1"},{"url":"http://public2.vulnerablecode.io/api/vulnerabilities/76920?format=json","vulnerability_id":"VCID-j1q4-k3yz-r7fd","summary":"Locutus brings stdlibs of other programming languages to JavaScript for educational purposes. Prior to 3.0.14, the create_function(args, code) function passes both parameters directly to the Function constructor without any sanitization, allowing arbitrary code execution. This is distinct from CVE-2026-29091 which was call_user_func_array using eval() in v2.x. This finding affects create_function using new Function() in v3.x. This vulnerability is fixed in 3.0.14.","references":[{"reference_url":"https://access.redhat.com/hydra/rest/securitydata/cve/CVE-2026-32304.json","reference_id":"","reference_type":"","scores":[{"value":"7.5","scoring_system":"cvssv3","scoring_elements":"CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:H"}],"url":"https://access.redhat.com/hydra/rest/securitydata/cve/CVE-2026-32304.json"},{"reference_url":"https://api.first.org/data/v1/epss?cve=CVE-2026-32304","reference_id":"","reference_type":"","scores":[{"value":"0.00161","scoring_system":"epss","scoring_elements":"0.36787","published_at":"2026-06-11T12:55:00Z"}],"url":"https://api.first.org/data/v1/epss?cve=CVE-2026-32304"},{"reference_url":"https://github.com/locutusjs/locutus","reference_id":"","reference_type":"","scores":[{"value":"9.8","scoring_system":"cvssv3.1","scoring_elements":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H"},{"value":"CRITICAL","scoring_system":"generic_textual","scoring_elements":""}],"url":"https://github.com/locutusjs/locutus"},{"reference_url":"https://nvd.nist.gov/vuln/detail/CVE-2026-32304","reference_id":"","reference_type":"","scores":[{"value":"9.8","scoring_system":"cvssv3.1","scoring_elements":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H"},{"value":"CRITICAL","scoring_system":"generic_textual","scoring_elements":""}],"url":"https://nvd.nist.gov/vuln/detail/CVE-2026-32304"},{"reference_url":"https://bugzilla.redhat.com/show_bug.cgi?id=2447200","reference_id":"2447200","reference_type":"","scores":[],"url":"https://bugzilla.redhat.com/show_bug.cgi?id=2447200"},{"reference_url":"https://github.com/advisories/GHSA-vh9h-29pq-r5m8","reference_id":"GHSA-vh9h-29pq-r5m8","reference_type":"","scores":[{"value":"CRITICAL","scoring_system":"cvssv3.1_qr","scoring_elements":""}],"url":"https://github.com/advisories/GHSA-vh9h-29pq-r5m8"},{"reference_url":"https://github.com/locutusjs/locutus/security/advisories/GHSA-vh9h-29pq-r5m8","reference_id":"GHSA-vh9h-29pq-r5m8","reference_type":"","scores":[{"value":"9.8","scoring_system":"cvssv3.1","scoring_elements":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H"},{"value":"CRITICAL","scoring_system":"cvssv3.1_qr","scoring_elements":""},{"value":"CRITICAL","scoring_system":"generic_textual","scoring_elements":""},{"value":"Track*","scoring_system":"ssvc","scoring_elements":"SSVCv2/E:P/A:Y/T:T/P:M/B:A/M:M/D:R/2026-03-13T13:12:02Z/"}],"url":"https://github.com/locutusjs/locutus/security/advisories/GHSA-vh9h-29pq-r5m8"},{"reference_url":"https://github.com/locutusjs/locutus/releases/tag/v3.0.14","reference_id":"v3.0.14","reference_type":"","scores":[{"value":"9.8","scoring_system":"cvssv3.1","scoring_elements":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H"},{"value":"CRITICAL","scoring_system":"generic_textual","scoring_elements":""},{"value":"Track*","scoring_system":"ssvc","scoring_elements":"SSVCv2/E:P/A:Y/T:T/P:M/B:A/M:M/D:R/2026-03-13T13:12:02Z/"}],"url":"https://github.com/locutusjs/locutus/releases/tag/v3.0.14"}],"fixed_packages":[{"url":"http://public2.vulnerablecode.io/api/packages/374862?format=json","purl":"pkg:npm/locutus@3.0.14","is_vulnerable":true,"affected_by_vulnerabilities":[{"vulnerability":"VCID-c5db-dmz7-fqej"},{"vulnerability":"VCID-dxbz-nzmx-hbf1"}],"resource_url":"http://public2.vulnerablecode.io/packages/pkg:npm/locutus@3.0.14"}],"aliases":["CVE-2026-32304","GHSA-vh9h-29pq-r5m8"],"risk_score":null,"exploitability":null,"weighted_severity":null,"resource_url":"http://public2.vulnerablecode.io/vulnerabilities/VCID-j1q4-k3yz-r7fd"}],"fixing_vulnerabilities":[],"risk_score":null,"resource_url":"http://public2.vulnerablecode.io/packages/pkg:npm/locutus@3.0.11"}