Katalog CVE

CVE-2026-113714

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

Prawdopodobieństwo exploitacji (EPSS)

Niskie ryzyko
0.22%

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

Streszczenie

W virtualenv przed wersją 21.14.9 funkcja download_wheel() zapisuje pobrane z indeksu pakiety bezpośrednio do współdzielonego cache wheel/house przed wybraniem celu weryfikacji z tekstowego wyjścia Saved pip. Przy włączonym porównaniu skrótów domyślnego indeksu kontrolowany indeks może wstrzyknąć mylącą linię Saved poprzez atrybut data-requires-python odrzuconego linku, co wymaga również znajomości bezwzględnej ścieżki do prawdziwego wbudowanego wheel.

Ocena ryzyka

Może dojść do zahaszowania niewłaściwej ścieżki, a niezgodność skrótu pozostawia odrzucone archiwum w cache, umożliwiając późniejsze jego wybranie bez weryfikacji. Prowadzi to do zainstalowania niezweryfikowanego pakietu i potencjalnego wykonania złośliwego kodu.

Rekomendacja

Zaktualizuj virtualenv do wersji 21.14.9 lub nowszej. Unikaj używania niezaufanych indeksów pakietów i regularnie czyść cache wheel.

Inne podatności w virtualenv

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

virtualenv is a tool for creating isolated virtual python environments. Prior to 21.14.9, download_wheel() writes package-index downloads directly into the reusable wheel/house cache before selecting a verification target from pip's textual Saved output. With default-index digest comparison enabled, a controlled package index can inject a misleading Saved line through a discarded link's data-requires-python attribute; this forged-line variant also requires knowledge of an absolute path to the genuine bundled wheel. The wrong path can then be hashed, while a digest mismatch leaves the rejected archive in the cache for later selection without verification. A separate rejected-cache-file variant requires control over downloaded data or archive selection but not the forged-line prerequisites. Explicit custom-index exceptions are outside the promised PyPI comparison, and the issue does not independently bypass TLS or establish control of default PyPI. This issue is fixed in version 21.14.9.

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