CVE-2026-81725 NLTK before 3.10.3 Regular Expression Denial of Service via Pl196xCorpusReader

Medium 6.3 Published Updated

Attackers can cause denial of service in NLTK by supplying malformed TEI blocks that trigger quadratic CPU consumption via regex patterns.

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-81725?

CVE-2026-81725 is a medium-severity denial of service vulnerability in nltk, published on 27 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.3 contains a regular expression denial of service vulnerability in Pl196xCorpusReader that allows attackers to cause quadratic CPU consumption by supplying malformed TEI blocks with many unmatched opening tags. Attackers can exploit lazy regex patterns in the read_block method through public APIs like words() and tagged_words() to force repeated rescans and achieve near-quadratic runtime growth.

Weakness: CWE-400

Which versions are affected by CVE-2026-81725?

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

PackageAffectedFixed in
nltk PyPIAll versions3.10.3
nltk PyPIAll versions3.10.3
nltk PyPIAll versions3.10.3

Products include Nltk Nltk.

How do I fix CVE-2026-81725?

Upgrade nltk to 3.10.3 or later.

Upgrade, then put limits on request size, rate and nesting depth so one client cannot exhaust the service. More about Denial of service.

Is CVE-2026-81725 being exploited?

There is no known exploitation of CVE-2026-81725 in the wild and no public exploit code.

Sources

Also known as DEBIAN-CVE-2026-81725, ECHO-c4c0-fd69-5811, GHSA-8mpw-7fpc-4gqj, MINI-v5qj-7q8q-jhfc, PYSEC-2026-3752, UBUNTU-CVE-2026-81725.

Is CVE-2026-81725 in your software?

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

Check your SBOMs for free