Plataforma
python
Componente
nltk
Corregido en
3.9.3
La vulnerabilidad CVE-2026-0847 es una falla de Path Traversal descubierta en el Natural Language Toolkit (NLTK) hasta la versión 3.9.2. Esta falla permite a un atacante leer archivos arbitrarios en el servidor, comprometiendo la confidencialidad de los datos. Afecta a las clases CorpusReader, como WordListCorpusReader, TaggedCorpusReader y BracketParseCorpusReader, donde la validación de rutas es insuficiente. Se recomienda actualizar a la última versión disponible o implementar medidas de mitigación.
La explotación exitosa de esta vulnerabilidad permite a un atacante acceder a archivos sensibles en el servidor donde se ejecuta NLTK. Esto podría incluir archivos de configuración, claves de API, datos de entrenamiento de modelos de aprendizaje automático o incluso código fuente. El impacto es particularmente grave en entornos donde NLTK se utiliza en APIs de aprendizaje automático, chatbots o pipelines de procesamiento del lenguaje natural (NLP), ya que estos sistemas a menudo procesan datos proporcionados por el usuario. La capacidad de leer archivos arbitrarios podría conducir a la divulgación de información confidencial, la modificación de datos o incluso la ejecución de código malicioso en el servidor.
Esta vulnerabilidad se publicó el 4 de marzo de 2026. No se ha reportado explotación activa en entornos de producción, pero la naturaleza de la vulnerabilidad de Path Traversal la convierte en un objetivo atractivo para los atacantes. La falta de validación de entrada en las clases CorpusReader facilita la explotación. Se recomienda monitorear activamente los sistemas que utilizan NLTK para detectar cualquier actividad sospechosa.
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
Estado del Exploit
EPSS
0.29% (52% percentil)
CISA SSVC
Vector CVSS
La mitigación principal para CVE-2026-0847 es actualizar NLTK a una versión corregida. Si la actualización no es inmediatamente posible, se recomienda implementar una validación estricta de las rutas de archivo en las clases CorpusReader. Esto implica verificar que las rutas proporcionadas por el usuario estén dentro de un directorio esperado y no contengan caracteres de path traversal como '..' o '/'. Además, se puede considerar el uso de un servidor web con configuraciones de seguridad reforzadas que limiten el acceso a archivos fuera del directorio web. Después de la actualización, confirme la corrección revisando los logs del sistema en busca de intentos de acceso a archivos no autorizados.
Actualice la biblioteca NLTK a una versión posterior a la 3.9.2. Esto solucionará la vulnerabilidad de path traversal. Puede actualizar usando pip: `pip install --upgrade nltk`.
Análisis de vulnerabilidades y alertas críticas directamente en tu correo.
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.
Sube tu archivo de dependencias y detecta esta y otras CVEs al instante.
Sube tu archivo requirements.txt y te decimos al instante si estás afectado.