Katalog CVE

CVE-2026-102925

WysokieCVSS 7.8
Opublikowano: Przetłumaczono: NVD NIST

Streszczenie

W virtualenv przed wersją 21.7.13 generowane skrypty activate (bash i zsh) oraz activate.fish umieszczają wartości już zabezpieczone przez shlex.quote wewnątrz dodatkowego kontekstu cytowania. W skrypcie bash i zsh spreparowana ścieżka środowiska wirtualnego trafia do __VIRTUAL_ENV__, gdy zapisany katalog przeniesionego środowiska jest nieobecny; w skrypcie fish spreparowane ścieżki bibliotek Tcl lub Tk trafiają do __TCL_LIBRARY__ lub __TK_LIBRARY__. Nadmiarowe cudzysłowy mogą zakończyć ciąg tylko danych i pozostawić metaznaki powłoki jako polecenia podczas źródłowania skryptu aktywacyjnego, umożliwiając wykonanie kodu z uprawnieniami użytkownika.

Ocena ryzyka

Atakujący może wykonać dowolne polecenia z uprawnieniami użytkownika źródłującego skrypt aktywacyjny, co prowadzi do przejęcia kontroli nad systemem. Wymaga to spreparowanej ścieżki środowiska lub bibliotek, co może być możliwe w niektórych scenariuszach.

Rekomendacja

Zaktualizować virtualenv do wersji 21.7.13 lub nowszej. Unikać źródłowania skryptów aktywacyjnych z niezaufanych środowisk i weryfikować integralność generowanych skryptów.

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.7.13, the generated activate (bash and zsh) and activate.fish scripts place values already escaped by shlex.quote inside an additional quoted context. In the bash and zsh script, a crafted virtual environment path reaches __VIRTUAL_ENV__ when a relocated environment's recorded directory is absent; in the fish script, crafted Tcl or Tk library paths reach __TCL_LIBRARY__ or __TK_LIBRARY__. The surplus quotes can terminate the data-only quoted run and leave shell metacharacters parsed as commands when a user sources the activation script, allowing code execution with that user's privileges. This issue is fixed in version 21.7.13.

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