SandboxJS has a Sandbox Escape
SandboxJS is a JavaScript sandboxing library. Prior to 0.8.29, The return values of functions aren't wrapped. Object.values/Object.entries can be used to get an Array containing the host's Function constructor, by using Array.prototype.at you can obtain the hosts Function constructor, which can be used to execute arbitrary code outside of the sandbox. This vulnerability is fixed in 0.8.29.
- Products
- Not specified
- Affected versions
- Not specified
- Fixed versions
- Not specified
- CVEs
- CVE-2026-25520
- Confirmed fixed CVEs
- Not specified
- Updated in this feed
- 2 Nov 2026, 20:04 UTC · Revision 1
Source evidence
SandboxJS is a JavaScript sandboxing library. Prior to 0.8.29, The return values of functions aren't wrapped. Object.values/Object.entries can be used to get an Array containing the host's Function constructor, by using Array.prototype.at you can obtain the hosts Function constructor, which can be used to execute arbitrary code outside of the sandbox. This vulnerability is fixed in 0.8.29.
osv:CVE-2026-25520
Complete source record
{
"id": "647f20a79a19fa7dd98c815a0201a49b3cfb12b96e5e9d6253773424d0a23817",
"url": "https://osv.dev/vulnerability/CVE-2026-25520",
"method": "structured",
"payload": {
"kind": "advisory",
"title": "SandboxJS has a Sandbox Escape",
"summary": "SandboxJS is a JavaScript sandboxing library. Prior to 0.8.29, The return values of functions aren't wrapped. Object.values/Object.entries can be used to get an Array containing the host's Function constructor, by using Array.prototype.at you can obtain the hosts Function constructor, which can be used to execute arbitrary code outside of the sandbox. This vulnerability is fixed in 0.8.29.",
"evidence": "osv:CVE-2026-25520",
"products": [],
"severity": "critical",
"structured": {
"id": "CVE-2026-25520",
"aliases": [
"CVE-2026-25520",
"GHSA-58jh-xv4v-pcx4"
],
"metrics": [
{
"type": "CVSS_V3",
"score": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:H"
}
],
"affected": [
{
"ranges": [
{
"repo": "https://github.com/nyariv/sandboxjs",
"type": "GIT",
"events": [
{
"introduced": "0"
},
{
"fixed": "67cb186c41c78c51464f70405504e8ef0a6e43c3"
}
],
"database_specific": {
"extracted_events": [
{
"range": [
{
"introduced": "0"
},
{
"fixed": "0.8.29"
}
],
"source": "AFFECTED_FIELD",
"strategy": "StringRangeExpression"
},
{
"range": [
{
"fixed": "67cb186c41c78c51464f70405504e8ef0a6e43c3"
}
],
"source": "REFERENCES_COMMIT"
},
{
"cpe": "cpe:2.3:a:nyariv:sandboxjs:*:*:*:*:*:node.js:*:*",
"range": [
{
"introduced": "0"
},
{
"fixed": "0.8.29"
}
],
"source": "CPE_RANGE"
}
]
}
}
],
"versions": [
"0.8.28",
"0.8.24-2",
"0.8.24-1",
"0.8.24",
"0.8.23.3",
"0.8.23-1",
"0.8.23.2",
"0.8.23",
"0.8.22",
"0.8.21",
"0.8.20",
"0.8.19",
"0.8.18",
"0.8.17",
"0.8.16",
"0.8.15.1",
"0.8.15",
"0.8.14",
"0.8.12",
"0.8.11",
"0.8.10",
"0.8.9",
"0.8.8",
"0.8.7",
"0.8.6",
"0.8.5",
"0.8.4",
"0.8.3",
"0.8.2",
"0.8.0",
"0.7.1",
"0.7.0",
"0.6.2",
"0.6.1",
"0.6.0",
"0.5.3",
"0.5.2",
"0.5.0"
],
"database_specific": {
"source": "https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-25520.json"
}
}
],
"modified": "2026-10-28T02:30:23.276775613Z",
"provider": "osv",
"references": [
"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/25xxx/CVE-2026-25520.json",
"https://github.com/nyariv/SandboxJS/security/advisories/GHSA-58jh-xv4v-pcx4",
"https://nvd.nist.gov/vuln/detail/CVE-2026-25520",
"https://github.com/nyariv/SandboxJS/commit/67cb186c41c78c51464f70405504e8ef0a6e43c3"
],
"provider_metadata": {
"cwe_ids": [
"CWE-74"
],
"cna_assigner": "GitHub_M",
"osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/25xxx/CVE-2026-25520.json"
}
},
"related_cves": [
{
"value": "CVE-2026-25520",
"evidence": "/id"
}
],
"security_relevant": true,
"severity_evidence": "/severity/0/score"
},
"source_id": "core-osv",
"document_id": 489591,
"published_at": "2026-02-06T19:53:24.219+00:00"
}