Skip to content
CriticalVulnerability

GHSA-m4rf-3fr8-xwx3: NLTK: JVM argument injection bypass via per-call options in the NLTK Stanford wrappers (incomplete fix of CVE-2026-12841)

Published
Record updated
View JSON
Affected
  • nltk <= 3.10.2
Fixed in
3.10.3
  • released August 12, 2026, 20 days before disclosure
Known exploitation
Not listed in the CISA Known Exploited Vulnerabilities catalog at the last check.
EPSS
0.8%

Summary

NLTK's Stanford Java wrapper classes (GenericStanfordParser, StanfordTagger, StanfordTokenizer, StanfordSegmenter) pass user-supplied java_options through the per-call options parameter of nltk/internals.py java(), which calls subprocess.Popen without _validate_java_options(). This bypasses the validation added for CVE-2026-12841, which blocks flags such as -agentpath, -javaagent, -agentlib and @argfile when set through config_java(). An attacker who controls java_options can inject these JVM flags, which the source says can achieve arbitrary code execution, and the issue is incomplete fix of CVE-2026-12841.

Mitigation

The source does not state a fix yet. Check the original advisory for updates.