nltk
Corrigé dans
3.9.3
Une vulnérabilité d'exécution de code à distance (RCE) a été découverte dans Natural Language Toolkit (NLTK) jusqu'à la version 3.9.2. Cette faille permet à un attaquant de lire arbitrairement des fichiers sur le serveur en exploitant un défaut de validation des chemins de fichiers dans plusieurs classes CorpusReader, telles que WordListCorpusReader, TaggedCorpusReader et BracketParseCorpusReader. L'impact est significatif, car elle peut compromettre la confidentialité des données sensibles.
L'exploitation de cette vulnérabilité permet à un attaquant de contourner les mécanismes de sécurité et d'accéder à des fichiers sensibles sur le serveur. Les classes CorpusReader, utilisées pour lire des données à partir de corpus de texte, ne valident pas correctement les chemins de fichiers fournis. Un attaquant peut donc manipuler ces chemins pour accéder à des répertoires en dehors du répertoire prévu, et lire des fichiers qui ne devraient pas être accessibles. Cela peut inclure des fichiers de configuration, des clés API, ou d'autres informations confidentielles. Dans un contexte d'API de machine learning ou de chatbots utilisant NLTK, cette vulnérabilité pourrait permettre à un attaquant de compromettre l'ensemble du système et d'exécuter du code malveillant.
Cette vulnérabilité a été rendue publique le 4 mars 2026. Il n'y a pas d'indication d'une présence sur le KEV (CISA Known Exploited Vulnerabilities) à ce jour. La probabilité d'exploitation est considérée comme moyenne, compte tenu de la complexité de l'exploitation et de la nécessité d'une connaissance approfondie du fonctionnement interne de NLTK. Aucun proof-of-concept public n'est actuellement disponible, mais la nature de la vulnérabilité (parcours de répertoire) la rend potentiellement exploitable par des acteurs malveillants expérimentés.
Applications and systems utilizing NLTK for natural language processing tasks, particularly those that accept user-provided file inputs, are at risk. This includes machine learning APIs, chatbots, and NLP pipelines. Developers who have built custom corpus readers or extended NLTK functionality without proper input validation are also at increased risk.
• python / server:
import os
import glob
# Check for suspicious file paths in NLTK corpus readers
corpus_root = '/path/to/nltk/corpus'
for filename in glob.glob(os.path.join(corpus_root, '**', '*')): # Recursive search
if '..' in filename:
print(f'Suspicious file path found: {filename}')• linux / server:
# Monitor NLTK process for unusual file access patterns
journalctl -u nltk -f | grep -i 'open|read' | grep '..'disclosure
Statut de l'Exploit
EPSS
0.29% (percentile 52%)
CISA SSVC
Vecteur CVSS
La mitigation principale consiste à mettre à jour NLTK vers une version corrigée, dès que disponible. En attendant, il est possible de limiter l'impact en restreignant l'accès aux répertoires contenant les corpus de texte. Il est également recommandé de désactiver temporairement les fonctionnalités qui utilisent les classes CorpusReader vulnérables. Une solution de contournement consiste à implémenter une validation stricte des chemins de fichiers avant de les utiliser dans ces classes, en utilisant des fonctions de sécurité pour vérifier que le chemin est bien dans le répertoire attendu. Vérifiez après la mise à jour que la nouvelle version ne cause pas de régressions en effectuant des tests unitaires sur les fonctionnalités utilisant NLTK.
Mettez à jour la bibliothèque NLTK à une version postérieure à la 3.9.2. Cela corrigera la vulnérabilité de path traversal. Vous pouvez mettre à jour en utilisant pip : `pip install --upgrade nltk`.
Analyses de vulnérabilités et alertes critiques directement dans votre boîte mail.
CVE-2026-0847 is a Remote Code Execution vulnerability in NLTK versions up to 3.9.2, allowing attackers to read arbitrary files through path traversal.
If you are using NLTK versions 3.9.2 or earlier, you are potentially affected by this vulnerability.
Upgrade to a patched version of NLTK. Until a patch is available, implement strict input validation on file paths.
There is currently no confirmed active exploitation of CVE-2026-0847, but the vulnerability's nature suggests potential for future exploitation.
Refer to the NLTK project's security advisories and release notes for updates regarding CVE-2026-0847.
Téléverse ton fichier de dépendances et découvre instantanément si cette CVE et d'autres te touchent.
Téléverse ton fichier requirements.txt et nous te dirons instantanément si tu es affecté.