launch-editor: escapeCmdArgs() unterlässt %-Escaping unter Windows
Zusammenfassung
launch-editor hat % unter Windows bei der Übergabe von Argumenten an cmd nicht maskiert. Wenn eine Umgebungsvariable einen bösartigen Wert enthielt, konnte dieser Inhalt potenziell ausgeführt werden.
Auswirkungen
Nur Anwendungen, die alle folgenden Bedingungen erfüllen, sind betroffen:
- Die Benutzerin oder der Benutzer verwendet Windows
- Eine angreifende Person kann eine Datei mit einem manipulierten Dateinamen platzieren, der
&oder%enthält - Mindestens eine der folgenden Bedingungen trifft zu:
- Eine angreifende Person kann eine Umgebungsvariable mit einem bösartigen Wert einschleusen
- Eine angreifende Person kann der platzierten Datei einen alternativen NTFS-Datenstrom hinzufügen
Details
Anders als .sh-Dateien können .bat- / .cmd-Dateien unter Windows nicht direkt über child_process.spawn aufgerufen werden und müssen stattdessen als Argument an cmd.exe übergeben werden. Zu diesem Zweck maskiert launch-editor die an cmd.exe übergebenen Argumente. Allerdings hat launch-editor das Zeichen %, welches für Umgebungsvariablen verwendet wird, nicht maskiert.
Da launch-editor prüft, ob das Argument mit einem vorhandenen Dateinamen übereinstimmt, setzt der Angriff voraus, dass eine Datei platziert werden kann.
- Wenn zusätzlich eine Umgebungsvariable eingeschleust werden kann, kann der Unterbefehl in der Umgebungsvariablen enthalten sein (z. B. Setzen von
&calc.exeauf%ENV%) undlaunchEditormitsomething%ENV%aufgerufen werden. - Wenn der Datei ein alternativer NTFS-Datenstrom hinzugefügt werden kann (z. B. ein alternativer Datenstrom namens
~-38%calc.exe), kannlaunchEditormitsomething %CMDCMDLINE:~-38%calc.exeaufgerufen werden. - Wenn ein Dateiname erstellt werden kann, der das
%CD%und den Unterbefehl enthält (z. B.&calc.exe), kannlaunchEditormit./%CD%aufgerufen werden.
Was zu tun ist
Aktualisieren Sie launch-editor auf Version 2.14.2 oder höher, vite auf Version 6.4.4, 7.3.7, 8.1.6, 8.2.4, 8.3.3 oder höher, bzw. vite-plus auf Version 1.1.0 oder höher.
Betroffene Software
Klicken Sie auf eine Technologie, um alle zugehörigen Schwachstellen anzuzeigen.
Verweise
- https://github.com/vitejs/launch-editor/security/advisories/GHSA-698v-4r3x-3vcv
- https://nvd.nist.gov/vuln/detail/CVE-2026-112943
- https://github.com/vitejs/launch-editor/pull/155
- https://github.com/vitejs/launch-editor/commit/3c2f9bf2ff8fe63d056a8f9cc52d825b66ca79fc
- https://github.com/vitejs/launch-editor
- https://github.com/vitejs/launch-editor/releases/tag/v2.14.2
- CVSS-Vektor
CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:L/VI:L/VA:L/SC:N/SI:N/SA:N- Schwäche (CWE)
CWE-78- Plattform
- npm
- Paket
launch-editor, vite, vite-plus- Veröffentlicht
- 20.10.2026
- Aktualisiert
- 20.10.2026 21:37
Quellen und Lizenzen · Von DockRay bearbeitet oder übersetzt; Rechte und Lizenzen der Quellen bleiben erhalten.
OSV / GitHub Advisory Database - GHSA-698v-4r3x-3vcv - CC BY 4.0
Schwachstellenhistorie: launch-editor
Alle veröffentlichten Schwachstellen dieses Pakets (npm-Paket), neueste zuerst. Zeigt, ob es ein einmaliger Ausrutscher ist oder ein Paket, das man im Auge behalten muss.
- Einträge insgesamt
- 4
- Erste → letzte
- 06.2026 10.2026
- Ohne Fix
- 0
- In Angriffen ausgenutzt
- 0
Verteilung nach Schweregrad
- Hoch 2
- Mittel 2
Veröffentlichungen pro Jahr
- 2026: 4
-
launch-editor: escapeCmdArgs() unterlässt %-Escaping unter Windows dieser Eintrag
Erkennen Sie Schwachstellen in Ihrer Anwendung
Mit der DockRay-Integration und aktivierter Softwareinventarisierung prüft DockRay gemeldete Komponentenversionen auf bekannte Schwachstellen und benachrichtigt Sie über bestätigte Treffer. Die Abdeckung hängt von der unterstützten Technologie und den verfügbaren Meldungen ab.