Katalog CVE

CVE-2026-71514

NiskieCVSS 2.5
Opublikowano: Zaktualizowano: Przetłumaczono: NVD NIST

Prawdopodobieństwo exploitacji (EPSS)

Niskie ryzyko
0.14%

Percentyl 4 - wyżej niż 4% wszystkich znanych CVE

Streszczenie

NLTK 3.9.4 do 3.10.2 zawiera podatność na path traversal w CrubadanCorpusReader. _load_lang_ngrams łączy korzeń korpusu z crubadan_code, wartością z kolumny 0 odczytaną z pliku mapowania corpus table.txt, i otwiera wynik za pomocą wbudowanego open() zamiast walidowanego przez pathsec otwieracza, więc os.path.join odrzuca korzeń, gdy ta wartość jest absolutna, a odczyt wychodzi poza katalog korpusu bez sprawdzenia zawartości, które nltk.pathsec stosuje, gdy ENFORCE jest ustawione. Atakujący, który kontroluje pakiet korpusu, może ujawnić zawartość plików poza korzeniem korpusu przez lang_freq, ograniczone do ścieżek kończących się na -3grams.txt, których zawartość parsuje się jako linie z liczbą tokenów.

Ocena ryzyka

Ryzyko obejmuje ujawnienie zawartości plików poza katalogiem korpusu, co może prowadzić do wycieku poufnych danych, jeśli atakujący może dostarczyć złośliwy pakiet korpusu.

Rekomendacja

Zaleca się aktualizację NLTK do wersji zawierającej poprawkę oraz wdrożenie walidacji ścieżek i ograniczeń dostępu do plików.

Inne podatności w NLTK

Zobacz wszystkie
Oryginalny opis (angielski, źródło NVD)

NLTK 3.9.4 through 3.10.2 contains a path traversal vulnerability in CrubadanCorpusReader. _load_lang_ngrams joins the corpus root with crubadan_code, the column-0 value read from the corpus table.txt mapping file, and opens the result with the builtin open() rather than the pathsec-validated opener, so os.path.join discards the root when that value is absolute and the read escapes the corpus directory without the containment check nltk.pathsec applies when ENFORCE is set. An attacker who controls a corpus package can disclose file contents outside the corpus root through lang_freq, limited to paths ending in -3grams.txt whose contents parse as token count lines.

Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS