CVE-2026-65915: NLTK: FileSystemPathPointer.open() sandbox check is dead code — arbitrary file read via file:// protocol
There’s a logic bug in FileSystemPathPointer.open() inside nltk/data.py
that makes the sandbox check permanently inert. The guard condition is always
False — meaning any file the process can read is accessible by passing a
file:// URL to nltk.data.load().
References
- github.com/advisories/GHSA-72r2-7mfr-5xr9
- github.com/nltk/nltk/commit/69db9911fdba914ceeaca7aec6e892d1b14586a9
- github.com/nltk/nltk/pull/3522
- github.com/nltk/nltk/security/advisories/GHSA-72r2-7mfr-5xr9
- github.com/pypa/advisory-database/tree/main/vulns/nltk/PYSEC-2026-3731.yaml
- huntr.com/bounties/a510de7b-ffaf-4a83-9bf8-fa7e63f4bd2d
- nvd.nist.gov/vuln/detail/CVE-2026-65915
- www.vulncheck.com/advisories/nltk-before-arbitrary-file-read-via-filesystempathpointer
Code Behaviors & Features
Detect and mitigate CVE-2026-65915 with GitLab Dependency Scanning
Secure your software supply chain by verifying that all open source dependencies used in your projects contain no disclosed vulnerabilities. Learn more about Dependency Scanning →