SecBoard
Zurück zur Übersicht

Drag and Pwnd: Leverage ASCII characters to exploit VS Code

PortSwigger Research·
Originalartikel lesen bei PortSwigger Research

Control characters like SOH, STX, EOT and ETX were never meant to run your code - but in the world of modern terminal emulators, they sometimes do. In this post, I'll dive into the forgotten mechanics

Kurzfassung

Der Artikel beschreibt, wie ASCII-Steuerzeichen wie SOH, STX, EOT und ETX im Kontext moderner Terminalemulatoren zu Codeausführung führen können. Der Titel bezieht sich auf VS Code. Konkrete CVEs, Versionen oder Exploitdetails sind im Ausschnitt nicht angegeben.

Relevanz für Manager / CISOs
Priorität:Hoch
Betroffene

VS-Code-Nutzer oder Umgebungen mit modernen Terminalemulatoren; konkrete Betroffene sind nicht im Artikel angegeben

Warum relevant

Entwicklungsumgebungen und Terminalemulatoren können ein Einfallstor sein, wenn unerwartete Steuerzeichen unsicher verarbeitet werden.

Realistisches Worst Case

Unerwartete Steuerzeichen führen in einer betroffenen Umgebung zur Ausführung von Code; genaue Bedingungen sind nicht angegeben.

Handlungsempfehlung

VS Code und Terminalkomponenten aktuell halten, untrusted Inhalte in Terminals vermeiden und sicherheitsrelevante Einstellungen prüfen.

Defensive Validierung / Purple-Team Checks
  • Defensiver Check 1: Prüfen, ob VS Code und Terminalemulatoren auf aktuellen Versionen betrieben werden.
  • Defensiver Check 2: Entwicklungsprozesse auf das Einfügen oder Öffnen untrusted Textinhalte in Terminals überprüfen.
  • Defensiver Check 3: Endpoint-Logs auf ungewöhnliche Prozesse prüfen, die aus IDE- oder Terminal-Kontexten gestartet wurden.
MITRE ATT&CK Zuordnung
TaktikTechnikKonfidenzBeleg
ExecutionT1059 Command and Scripting InterpreterLowDer Artikel sagt, dass Steuerzeichen in modernen Terminalemulatoren manchmal Code ausführen; konkrete Interpreter oder Befehle sind nicht angegeben.
Offene Punkte
  • Konkrete CVEs sind nicht im Artikel angegeben.
  • Betroffene VS-Code-Versionen sind nicht angegeben.
  • Genaue Auslösebedingungen sind nicht im Ausschnitt angegeben.