Instituto Nacional de ciberseguridad. Sección Incibe
Instituto Nacional de Ciberseguridad. Sección INCIBE-CERT

Vulnerabilidad en PunktSentenceTokenizer, sent_tokenize y word_tokenize en NLTK (Natural Language Toolkit) (CVE-2021-43854)

Gravedad CVSS v3.1:
ALTA
Tipo:
CWE-400 Consumo de recursos no controlado (Agotamiento de recursos)
Fecha de publicación:
23/12/2021
Última modificación:
04/01/2022

Descripción

NLTK (Natural Language Toolkit) es un conjunto de módulos de código abierto de Python, conjuntos de datos y tutoriales que apoyan la investigación y el desarrollo en el procesamiento del lenguaje natural. Las Versiones anteriores a 3.6.5, son vulnerables a ataques de denegación de servicio con expresiones regulares (ReDoS). La vulnerabilidad está presente en PunktSentenceTokenizer, sent_tokenize y word_tokenize. Cualquier usuario de esta clase, o de estas dos funciones, es vulnerable al ataque ReDoS. En resumen, una entrada larga específicamente diseñada para cualquiera de estas funciones vulnerables causará que tomen una cantidad significativa de tiempo de ejecución. Si su programa depende de cualquiera de las funciones vulnerables para tokenizar entradas de usuario imprevisibles, le recomendamos encarecidamente que actualice a una versión de NLTK sin la vulnerabilidad. Para usuarios que no puedan actualizarse, el tiempo de ejecución puede limitarse mediante la limitación de la longitud máxima de una entrada a cualquiera de las funciones vulnerables. Nuestra recomendación es implementar dicho límite

Productos y versiones vulnerables

CPE Desde Hasta
cpe:2.3:a:nltk:nltk:*:*:*:*:*:*:*:* 3.6.5 (excluyendo)