p PatchFirst

CVE-2026-0848

CVE-2026-0848 · Arbitrary Code Execution in NLTK StanfordSegmenter via Untrusted JAR Loading

This page contains facts from public vulnerability sources. Check the original advisory before updating.

NLTK versions <=3.9.2 are vulnerable to arbitrary code execution due to improper input validation in the StanfordSegmenter module. The module dynamically loads external Java .jar files without verification or sandboxing. An attacker can supply or replace the JAR file, enabling the execution of arbitrary Java bytecode at import time. This vulnerability can be exploited through methods such as model poisoning, MITM attacks, or dependency poisoning, leading to remote code execution. The issue arises from the direct execution of the JAR file via subprocess with unvalidated classpath input, allowing malicious classes to execute when loaded by the JVM.

CVSS 10.0 · Critical · EPSS 0.8% · Fix available

Published
Updated

Stack: system · python

Affected products and versions

  • nltk/nltk

    Versions
    • ≥ unspecified, ≤ latest: Affected (custom)

    No fix published

  • nltk Debian:12

    Versions
    • 3.10.0-1
    • 3.10.1-1
    • 3.10.3-1
    • 3.8-1
    • 3.8.1-1
    • 3.9.1-1
    • 3.9.1-2
    • 3.9.2-1
    • 3.9.3-1
    Affected ranges
    • ECOSYSTEM: (−∞, +∞)

    No fix published

  • nltk Debian:13

    Versions
    • 3.10.0-1
    • 3.10.1-1
    • 3.10.3-1
    • 3.9.1-2
    • 3.9.2-1
    • 3.9.3-1
    Affected ranges
    • ECOSYSTEM: (−∞, +∞)

    No fix published

  • nltk Debian:14

    Versions
    • 3.9.1-2
    • 3.9.2-1
    Affected ranges
    • ECOSYSTEM: < 3.9.3-1

    Update to 3.9.3-1

  • nltk PyPI

    Versions
    • 0.8
    • 0.9
    • 0.9.3
    • 0.9.4
    • 0.9.5
    • 0.9.6
    • 0.9.7
    • 0.9.8
    • 0.9.9
    • 2.0.1
    • 2.0.1rc1
    • 2.0.1rc2-git
    • 2.0.1rc3
    • 2.0.1rc4
    • 2.0.2
    • 2.0.3
    • 2.0.4
    • 2.0.5
    • 2.0b4
    • 2.0b5
    • 2.0b6
    • 2.0b7
    • 2.0b8
    • 2.0b9
    • 3.0.0
    • 3.0.0b1
    • 3.0.0b2
    • 3.0.1
    • 3.0.2
    • 3.0.3
    • 3.0.4
    • 3.0.5
    • 3.1
    • 3.2
    • 3.2.1
    • 3.2.2
    • 3.2.3
    • 3.2.4
    • 3.2.5
    • 3.3
    • 3.4
    • 3.4.1
    • 3.4.2
    • 3.4.3
    • 3.4.4
    • 3.4.5
    • 3.5
    • 3.5b1
    • 3.6
    • 3.6.1
    • 3.6.2
    • 3.6.3
    • 3.6.4
    • 3.6.5
    • 3.6.6
    • 3.6.7
    • 3.7
    • 3.8
    • 3.8.1
    • 3.9
    • 3.9.1
    • 3.9.2
    • 3.9b1
    Affected ranges
    • ECOSYSTEM: < 3.9.3

    Update to 3.9.3

  • nltk Ubuntu:Pro:18.04:LTS

    Versions
    • 3.2.4-1
    • 3.2.5-1
    • 3.2.5-1ubuntu0.1
    • 3.2.5-1ubuntu0.1+esm1
    • 3.2.5-1ubuntu0.1+esm2
    • 3.2.5-1ubuntu0.1+esm3
    Affected ranges
    • ECOSYSTEM: < 3.2.5-1ubuntu0.1+esm4

    Update to 3.2.5-1ubuntu0.1+esm4

  • nltk Ubuntu:Pro:20.04:LTS

    Versions
    • 3.4.5-1
    • 3.4.5-2
    • 3.4.5-2ubuntu0.1~esm1
    • 3.4.5-2ubuntu0.1~esm2
    • 3.4.5-2ubuntu0.1~esm3
    Affected ranges
    • ECOSYSTEM: < 3.4.5-2ubuntu0.1~esm4

    Update to 3.4.5-2ubuntu0.1~esm4

  • nltk Ubuntu:Pro:22.04:LTS

    Versions
    • 3.5-1
    • 3.6.5-1
    • 3.6.7-1
    • 3.7-1
    • 3.7-1ubuntu0.1~esm1
    Affected ranges
    • ECOSYSTEM: < 3.7-1ubuntu0.1~esm2

    Update to 3.7-1ubuntu0.1~esm2

  • nltk Ubuntu:Pro:24.04:LTS

    Versions
    • 3.8.1-1
    • 3.8.1-1ubuntu0.1~esm1
    Affected ranges
    • ECOSYSTEM: < 3.8.1-1ubuntu0.1~esm2

    Update to 3.8.1-1ubuntu0.1~esm2

  • nltk Ubuntu:25.10

    Versions
    • 3.9.1-2
    Affected ranges
    • ECOSYSTEM: (−∞, +∞)

    No fix published

  • nltk Ubuntu:26.10

    Versions
    • 3.9.2-1
    • 3.9.3-1
    • 3.10.0-1
    • 3.10.1-1
    • 3.10.3-1
    Affected ranges
    • ECOSYSTEM: (−∞, +∞)

    No fix published

  • nltk Ubuntu:Pro:26.04:LTS

    Versions
    • 3.9.1-2
    • 3.9.1-2build1
    • 3.9.2-1
    • 3.9.2-1ubuntu0.1~esm1
    Affected ranges
    • ECOSYSTEM: < 3.9.2-1ubuntu0.1~esm2

    Update to 3.9.2-1ubuntu0.1~esm2

Original sources

Check your server →