{"dataType":"CVE_RECORD","dataVersion":"5.2","cveMetadata":{"cveId":"CVE-2026-21715","assignerOrgId":"36234546-b8fa-4601-9d6f-f4e334aa8ea1","state":"PUBLISHED","assignerShortName":"hackerone","dateReserved":"2026-01-04T15:00:06.574Z","datePublished":"2026-03-30T19:07:28.507Z","dateUpdated":"2026-09-17T18:36:37.076Z"},"containers":{"cna":{"descriptions":[{"lang":"en","value":"A flaw in Node.js Permission Model filesystem enforcement leaves `fs.realpathSync.native()` without the required read permission checks, while all comparable filesystem functions correctly enforce them.\r\n\r\nAs a result, code running under `--permission` with restricted `--allow-fs-read` can still use `fs.realpathSync.native()` to check file existence, resolve symlink targets, and enumerate filesystem paths outside of permitted directories.\r\n\r\nThis vulnerability affects **20.x, 22.x, 24.x, and 25.x** processes using the Permission Model where `--allow-fs-read` is intentionally restricted."}],"affected":[{"defaultStatus":"unaffected","vendor":"nodejs","product":"node","versions":[{"version":"20.20.1","status":"affected","lessThanOrEqual":"20.20.1","versionType":"semver"},{"version":"22.22.1","status":"affected","lessThanOrEqual":"22.22.1","versionType":"semver"},{"version":"24.14.0","status":"affected","lessThanOrEqual":"24.14.0","versionType":"semver"},{"version":"25.8.1","status":"affected","lessThanOrEqual":"25.8.1","versionType":"semver"},{"version":"4.0","status":"affected","lessThan":"4.*","versionType":"semver"},{"version":"5.0","status":"affected","lessThan":"5.*","versionType":"semver"},{"version":"6.0","status":"affected","lessThan":"6.*","versionType":"semver"},{"version":"7.0","status":"affected","lessThan":"7.*","versionType":"semver"},{"version":"8.0","status":"affected","lessThan":"8.*","versionType":"semver"},{"version":"9.0","status":"affected","lessThan":"9.*","versionType":"semver"},{"version":"10.0","status":"affected","lessThan":"10.*","versionType":"semver"},{"version":"11.0","status":"affected","lessThan":"11.*","versionType":"semver"},{"version":"12.0","status":"affected","lessThan":"12.*","versionType":"semver"},{"version":"13.0","status":"affected","lessThan":"13.*","versionType":"semver"},{"version":"14.0","status":"affected","lessThan":"14.*","versionType":"semver"},{"version":"15.0","status":"affected","lessThan":"15.*","versionType":"semver"},{"version":"16.0","status":"affected","lessThan":"16.*","versionType":"semver"},{"version":"17.0","status":"affected","lessThan":"17.*","versionType":"semver"},{"version":"18.0","status":"affected","lessThan":"18.*","versionType":"semver"},{"version":"19.0","status":"affected","lessThan":"19.*","versionType":"semver"}]}],"references":[{"url":"https://nodejs.org/en/blog/vulnerability/march-2026-security-releases"}],"metrics":[{"cvssV3_0":{"version":"3.0","vectorString":"CVSS:3.0/AV:L/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N","baseScore":3.3,"baseSeverity":"LOW"}}],"providerMetadata":{"orgId":"36234546-b8fa-4601-9d6f-f4e334aa8ea1","shortName":"hackerone","dateUpdated":"2026-03-30T19:07:28.507Z"}},"adp":[{"problemTypes":[{"descriptions":[{"type":"CWE","cweId":"CWE-732","lang":"en","description":"CWE-732 Incorrect Permission Assignment for Critical Resource"}]}],"metrics":[{"other":{"type":"ssvc","content":{"timestamp":"2026-04-01T14:55:13.031405Z","id":"CVE-2026-21715","options":[{"Exploitation":"none"},{"Automatable":"no"},{"Technical Impact":"partial"}],"role":"CISA Coordinator","version":"2.0.3"}}}],"title":"CISA ADP Vulnrichment","providerMetadata":{"orgId":"134c704f-9b21-4f2e-91b3-4a467353bcc0","shortName":"CISA-ADP","dateUpdated":"2026-09-17T18:36:37.076Z"}}]}}