CVE-2026-63312 NLTK StreamBackedCorpusView Bypasses pathsec.ENFORCE Arbitrary File Read

High 8.7 Published Updated

Attackers can read arbitrary local files by bypassing path security checks in NLTK's StreamBackedCorpusView, exposing sensitive system data.

Exploited in the wild
Not known
Login needed
Not needed
Attackable
Over the internet
Victim action needed
Not needed
Fix
Available

What is CVE-2026-63312?

CVE-2026-63312 is a high-severity path traversal vulnerability in nltk, published on 22 Aug 2026. An attacker can exploit it over the internet without logging in, with no action from the victim.

Official description

NLTK before 3.10.0 contains an arbitrary local file read vulnerability in StreamBackedCorpusView that bypasses pathsec.ENFORCE by calling builtins.open() directly instead of pathsec.open(). Attackers who control the fileid argument can read arbitrary local files regardless of the ENFORCE setting, including sensitive system files and application credentials.

Weakness: CWE-22

Which versions are affected by CVE-2026-63312?

3 open source packages ship an affected version, including nltk. It affects 1 product.

PackageAffectedFixed in
nltk PyPIAll versions3.10.0
nltk PyPIAll versions3.10.0
nltk PyPIAll versions3.10.0

Products include Nltk Nltk.

How do I fix CVE-2026-63312?

Upgrade nltk to 3.10.0 or later.

Upgrade, and resolve every user-supplied path against an allowed base folder before opening it. More about Path traversal.

Is CVE-2026-63312 being exploited?

It is not confirmed as exploited in the wild, but public exploit code for CVE-2026-63312 exists.

Sources

Also known as DEBIAN-CVE-2026-63312, ECHO-f69e-0d7e-acbd, GHSA-x5ph-mj9p-rfr8, MINI-h54p-557f-pqc6, PYSEC-2026-3730, UBUNTU-CVE-2026-63312.

Is CVE-2026-63312 in your software?

Upload an SBOM and sbomify checks it against every vulnerability here, every day.

Check your SBOMs for free