Microsoft PowerShell und die neuen Grenzen der Malware

(Di David Mallorca)
16/06/21

Die meisten Microsoft Windows-Benutzer (insbesondere Systemadministratoren) haben mindestens einmal davon gehört Windows Powershell, ein Befehlsinterpreter (genauer definiert als „Shell“, sehr ähnlich zu Interpretern wie Bash unter Linux), mit dem es möglich ist, verschiedene Funktionen des Betriebssystems zu „steuern“. Zu diesen Funktionen gehören beispielsweise die Möglichkeit, Dateien zu kopieren und zu verschieben, Anwendungen aus der Ferne herunterzuladen, aber auch die Liste der aktuell ausgeführten Dienste zu überprüfen. Die Befehle Powershell sie werden auch genannt Cmdletsund stellen eine Kombination von Funktionen dar, die normalerweise in einem einzigen Befehl zusammengefasst sind. Zum Beispiel das Cmdlet ConvertTo-XML Erstellt eine XML-Darstellung eines Objekts.

Was Insidern sicherlich weniger bekannt ist, ist die Tatsache Powershell Es wird häufig zur Ausführung bösartiger Funktionen verwendet. Die Idee ist einfach: Mit den von der Shell bereitgestellten Funktionen können Sie erweiterte Systembefehle ausführen, die bei unsachgemäßer Verwendung auch schädlich für das System selbst sein können (z. B. Laden zusätzlicher Dateien in den Speicher, Herunterladen schädlicher Dateien aus dem Netzwerk usw.). ). Dies stellt einen enormen Vorteil beim Angriff auf Windows-Systeme im Vergleich zu herkömmlichen Techniken zur Ausnutzung von Schwachstellen dar, bei denen bösartiger Code ausgeführt wird, indem Schwachstellen in Programmen ausgenutzt werden, die bereits auf dem Zielcomputer vorhanden sind (normalerweise nicht aktualisiert). Durch PowershellDaher ist es nicht notwendig, bestimmte Schwachstellen einer Anwendung oder des Betriebssystems auszunutzen, sondern es ist möglich, die Angriffe direkt durchzuführen.

Powershell Es wird häufig indirekt über die Verwendung von Infektionsvektoren verwendet, die häufig durch Word- und Excel-Dateien dargestellt werden. Tatsächlich enthalten diese Dateien Makros oder automatische Verfahren, die normalerweise das Schreiben von Dokumenten oder Tabellenkalkulationen erleichtern sollen (z. B. das automatische Ausfüllen bestimmter Zellen oder das Durchführen bestimmter Berechnungen für mehrere Zellen). Auch in diesem Fall werden diese Makros oft in völlig „gutartigen“ Kontexten verwendet, sie können jedoch Funktionen zum Generieren von Codes implementieren Powershell. Ferner Powershell Es kann auch direkt verwendet werden, indem eine Reverse-Shell erstellt wird, die es einem Angreifer ermöglicht, die volle Funktionalität zu nutzen.

Ein weiteres Merkmal des Codes Powershell Es ist die Fähigkeit, sich vor den Augen eines Analytikers zu „verstecken“, so dass die eigenen Handlungen nicht offensichtlich werden. Diese Funktion wird im Fachjargon als Verschleierung bezeichnet. Daher ist es möglich, selbst sehr einfachen Code zu nehmen und ihn enorm kompliziert zu machen, ohne jedoch seine Semantik zu ändern (d. h. das Programm funktioniert genauso wie die nicht verschleierte Version).

Zur Abwehr und Analyse von Schadsoftware Powershell Die wissenschaftliche Forschung hat in den letzten Jahren große Fortschritte gemacht. Insbesondere zwei Studien der Universität Cagliari [1,2] haben effiziente Techniken zur Entschleierung dieser Angriffe entwickelt. Insbesondere ein Open-Source-Tool namens PowerDecode, in der Lage, den Code zu bekommen Powershell Original aus seiner angelaufenen Variante. PowerDecode kann kostenlos heruntergeladen werden [3].

Schadsoftware Powershell Daher stellen sie ein großes Risiko für Windows-Systeme dar, insbesondere wenn sie aus Office-Dokumenten geladen werden. Die Forschung ist jedoch aktiv daran, immer effizientere Lösungen vorzuschlagen, um diese Kategorie von Angriffen analysieren und erkennen zu können.

Referenzen

[1] D. Ugarte, D.Maiorca, F. Cara und G. Giacinto. PowerDrive: Genaue Entschleierung und Analyse von PowerShell-Malware, 16. Konferenz zur Erkennung von Eindringlingen und zur Bewertung von Malware und Schwachstellen (DIMVA). Springer, Göteborg, Schweden, S. 240-259, 2019.

[2] GM Malandrone, G. Virdis, G. Giacinto und D. Maiorca. PowerDecode: ein PowerShell-Skript-Decoder speziell für die Malware-Analyse. Auf der 5. italienischen Konferenz für Cybersicherheit (ITASEC), 2021.

[3] PowerDecode. https://github.com/Malandrone/PowerDecode