CVE-2026-12372 json
Server-Side Request Forgery (SSRF) in nltk/nltk
published 2026-08-09 3 mo ago modified 2026-10-23 16 d ago also GHSA-2jhm-w3mp-jcwr , PYSEC-2026-3955 , EUVD-2026-54961
- cvss
- 3.7
- version 3.0, CNA
- cisa kev
- Not listed
- not in CISA's catalog
- epss
- 0.3%
- EPSS 0.3% chance of exploitation in 30 days, percentile 17%
- public exploits
- 0
- none known
Summary
A Server-Side Request Forgery (SSRF) vulnerability exists in nltk/nltk versions 3.9.4 and the current develop branch. The `nltk.pathsec.validate_network_url()` function, intended to prevent SSRF by rejecting internal network addresses, fails to reject IPs in the RFC 6598 shared address space (`100.64.0.0/10`). This occurs because Python's `ipaddress` module does not classify such addresses as `is_private` or `is_global`, and the current guard only checks `is_private` and a few explicit categories. An attacker who can influence a URL passed to NLTK's network-loading helpers can exploit this vulnerability to make a strict-mode application send requests to shared-address-space hosts, potentially exposing non-public infrastructure reachable from the application host. The impact is limited to SSRF-style confidentiality exposure, with no code execution claimed.
Patch / fix
- pypi nltk 3.10.0
- python-nltk openSUSE Tumbleweed 3.10.2-1.1
opensuse advisories openSUSE-SU-2026:11510-1
Vendor advisories
What the vendors themselves say about their products: affected, fixed or not affected, and what to do.
red hat product security vex CVE-2026-12372 updated cvss 3.7
nltk: NLTK: Server-Side Request Forgery via improper network URL validation
-
Red Hat Exploit Intelligence exploit-intelligence-tech-preview/vulnerability-analysis-rhel9affected: no fix planned “Out of support scope”
-
Red Hat Lightspeed Core lightspeed-core/rag-tool-cpu-rhel9, lightspeed-core/lightspeed-stack-rhel9, lightspeed-core/rag-tool-cuda-12.9-rhel9 Red Hat OpenShift Lightspeed openshift-lightspeed/lightspeed-ocp-rag-rhel9, openshift-lightspeed/lightspeed-service-api-rhel9, openshift-lightspeed-tech-preview/lightspeed-rag-tool-rhel9affected: no fix available “Fix deferred”
-
Red Hat Ansible Automation Platform 2 ansible-automation-platform-25/lightspeed-chatbot-rhel8affected: no fix planned “Out of support scope”
-
Red Hat OpenShift AI (RHOAI) rhoai/odh-ta-lmes-job-rhel9, rhoai/odh-llama-stack-core-rhel9, rhoai/odh-trustyai-garak-lls-provider-dsp-rhel9, rhoai/odh-trustyai-nemo-guardrails-server-rhel9, rhoai/odh-pipeline-runtime-pytorch-llmcompressor-cuda-py312-rhel9, rhoai/odh-workbench-jupyter-pytorch-llmcompressor-cuda-py312-rhel9affected: no fix available “Fix deferred”
Red Hat CSAF VEX © Red Hat, Inc., from https://security.access.redhat.com/data/csaf/v2/vex/; changed: reduced to product statuses and remediations. CC BY 4.0 · csaf
CISA SSVC
- Exploitation
- Proof of concept is public
- Automatable
- no
- Technical impact
- partial
- Assessed
- 2 mo ago
Exploit prediction
0.26% chance of exploitation in the next 30 days, higher than 17% of all scored CVEs (FIRST EPSS, 2026-11-08).
Exploits and checks
- huntr.com https://huntr.com/bounties/2911b643-571c-42e4-b0c2-9a1fa6f491db referenced PoC, tagged "exploit" by a source, unverified
CVSS scores
| assigned by | version | score | vector |
|---|---|---|---|
| CNA | 3.0 | 3.7 | CVSS:3.0/AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:N/A:N |
| OSV | 3.0 | 3.7 | CVSS:3.0/AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:N/A:N |
| GitHub | 3.0 | 3.7 | CVSS:3.0/AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:N/A:N |
Affected packages
| ecosystem | package | affected | fixed in |
|---|---|---|---|
| pypi | nltk | <3.10.0 <=3.9.4 |
3.10.0 |
Affected products
- nltk nltk/nltk
Classification
- Weakness
-
- CWE-918 Server-Side Request Forgery
References
-
github.com
/nltk/nltk/commit/4a820afa58810cd05049b6c6eae306694d6cfe65
web
-
huntr.com
/bounties/2911b643-571c-42e4-b0c2-9a1fa6f491db
exploit, web, permissions-required, report
-
nvd.nist.gov
/vuln/detail/CVE-2026-12372
advisory
-
github.com
/nltk/nltk
package
-
github.com
/nltk/nltk/releases/tag/v3.10.0
web
-
github.com
/pypa/advisory-database/tree/main/vulns/nltk/PYSEC-2026-3955.yaml
web
-
github.com
/advisories/GHSA-2jhm-w3mp-jcwr
advisory
Sources
- CVE List CVE-2026-12372
- GitHub Advisory GHSA-2jhm-w3mp-jcwr
- NVD CVE-2026-12372
- OSV PYSEC-2026-3955
Fencer Vulns keeps one entry per vulnerability: the CVE id wins, then GHSA, and records that alias each other are merged, except that two CVEs always keep separate entries. The same data is available as JSON.