virtualenv: Command Injection über generierte POSIX-Konsolen-Launcher
Zusammenfassung
virtualenv schreibt Konsolen-Skripte mit einem /bin/sh-Launcher, dessen Interpreter-Pfad nur unvollständig gequotet wird, wenn der Pfad ein Leerzeichen enthält oder der Shebang länger als 127 Bytes ist. Befehlsersetzungen und Backticks im Zielpfad werden dann von der Shell ausgeführt. Ein Angreifer, der das Zielverzeichnis der Umgebung beeinflussen kann, kann Befehle mit den Rechten des Benutzers ausführen, sobald dieser einen generierten Launcher startet; das Erstellen oder Aktivieren der Umgebung löst den Befehl nicht aus.
Betroffen
- pypa virtualenv Versionen vor 21.14.9
- Umgebungen, die mit betroffenen Versionen erstellt oder geändert wurden, einschliesslich pip-installierter Konsolen-Skripte, die mit dem vendorisierten distlib von pip neu generiert wurden
Behoben in
- virtualenv 21.14.9 (veröffentlicht am 17.10.2026)
- Bestehende Launcher müssen neu generiert werden; ein Upgrade von virtualenv allein behebt sie nicht
- Eine spätere, unabhängige Installation oder ein Upgrade von pip in einer Umgebung kann einen betroffenen Launcher wieder einführen
Umgehung
- Umgebungen nicht in Zielpfaden erstellen, die andere Benutzer oder unvertrauenswürdige Eingaben beeinflussen können
- Bestehende Umgebungen mit virtualenv 21.14.9 oder neuer neu erstellen, statt nur das Paket zu aktualisieren
- Launcher nach jeder pip-Installation oder jedem Upgrade in einer Umgebung erneut prüfen
Ausnutzung
- CISA SSVC: Exploitation-Status PoC, automatisierbar: nein, technische Auswirkung: total
- Im Rahmen der Recherche wurden keine Hinweise auf Ausnutzung in der Praxis gefunden; Status unbekannt
- Auslösung erfordert lokale Einflussnahme auf den Zielpfad und die Ausführung eines generierten Launchers durch den Benutzer
Unsere Empfehlung
- virtualenv-Installationen und Lockfiles finden, auch jene, die über tox, pre-commit oder ähnliche Werkzeuge eingebunden werden, und auf 21.14.9 oder neuer fixieren
- Bestehende Umgebungen neu erstellen und prüfen, ob die Launcher neu generiert wurden
- Prüfung nach pip-Upgrades in betroffenen Umgebungen wiederholen
- Entwickler-Arbeitsstationen und CI-Runner priorisieren, die gemeinsame oder unvertrauenswürdige Projektpfade verwenden
Öffentliche Exploits
In PoC-in-GitHub, Metasploit und Exploit-DB ist für diese CVE nichts verzeichnet.
Quellen der Recherche
- GitHub Security Advisory GHSA-c978-59m8-c77v github.com
- virtualenv release 21.14.9 github.com
- Fix commit 2519941 github.com
- Pull request #3417 github.com
- OSV entry BIT-virtualenv-2026-113722 osv.dev
- virtualenv changelog virtualenv.pypa.io
Recherchiert und auf Deutsch und Englisch aufbereitet von einer KI (Claude von Anthropic) auf Basis von NVD, CISA, EPSS und den genannten Quellen. Massgebend sind die Angaben des Herstellers. Recherche vom 01.11.2026 23:33.
Referenzen der NVD (5)
- https://github.com/pypa/virtualenv/commit/2519941bed33ee0d3ac99277f67913e439e476a9
- https://github.com/pypa/virtualenv/pull/3417
- https://github.com/pypa/virtualenv/releases/tag/21.14.9
- https://github.com/pypa/virtualenv/security/advisories/GHSA-c978-59m8-c77v
- https://github.com/pypa/virtualenv/security/advisories/GHSA-c978-59m8-c77v
Quellen
Der Tracker verbindet offizielle, frei nutzbare Datenquellen – laufend aktualisiert:
- NVD (NIST) – CVE, Bewertung (CVSS), betroffene Produkte
- CISA KEV – von der CISA bestätigt aktiv ausgenutzte Lücken
- CISA Vulnrichment – Einschätzung der CISA (SSVC) im offiziellen CVE-Eintrag
- FIRST EPSS – Wahrscheinlichkeit einer Ausnutzung
- Microsoft MSRC – Patch Tuesday: Lücken, Schweregrad, Updates
- PoC-in-GitHub – öffentliche Proof-of-Concept-Repositories
- Metasploit (Rapid7) – Module des Metasploit Framework
- Exploit-DB (OffSec) – Archiv öffentlicher Exploits (nur Verweise)
- Patch-Tage: offizielle Seiten der Hersteller (je Hersteller verlinkt) (Patch-Tage der Hersteller)
Dieses Angebot nutzt Daten der NVD-API, ist aber von der NVD weder unterstützt noch zertifiziert. EPSS-Daten © FIRST.org.
Betroffen? Wir helfen.
Wir prüfen, ob Ihre Systeme betroffen sind, spielen Updates ein und schliessen die Lücke – auf Wunsch auch laufend mit dem System Health Checker.
