/
Eindämmung von Ransomware

Entmystifizierung von Ransomware-Techniken mithilfe von.NET-Assemblys: Ein mehrstufiger Angriff

In Teil eins In dieser Serie haben wir uns Beispiele für Programmierfunktionen angesehen, die von Ransomware in ihren bösartigen Techniken genutzt werden können. Dann rein Teil zwei, wir haben auch die Grundlagen von Microsofts untersucht .Net Software-Framework und zugehörige Assemblys von EXE und DLL, um zu verstehen, wie diese Funktionen ermöglicht werden.

In diesem letzten Teil werden wir alles, was bisher besprochen wurde, in einer Reihe von abgestuften Nutzlasten zusammenfassen, um die Grundlagen eines mehrstufigen Payload-Angriffs zu demonstrieren.

Payload- und Angriffs-Setup

Wir legen zunächst die Nutzlasten fest, die für den Angriff verwendet werden. Alle bisherigen Funktionen, einschließlich der neuen, werden bei der Erstellung der gestaffelten Nutzlasten berücksichtigt. Dies soll insgesamt zeigen, wie die verschiedenen Taktiken und Techniken, die wir bisher gesehen haben, zusammengesetzt werden können, wie es typischerweise bei Ransomware der Fall ist.

Wir werden die folgenden Payloads verwenden:

  • Erste EXE-Anwendung: Stager-Nutzlast
  • Haupt-Ransomware-EXE: Nutzlast der Stufe 1
  • 2und Haupt-Ransomware-DLL: Nutzlast der Stufe 2

Die Verwendung mehrerer Nutzlasten zur Ausführung verschiedener Aufgaben in diesem Angriffsbeispiel stellt einen mehrstufigen Angriff dar. Wenn wir auf die vorherige Serie über Malware-Payloads und Beacons zurückblicken, Teil zwei ging ausführlicher auf die Arten bösartiger Payloads ein. Dort habe ich den Unterschied zwischen einem Stager- und einem Staging-Payload-Typ erklärt. Zusammenfassend lässt sich sagen, dass ein Stager eine oft kleinere anfängliche ausführbare Anwendung ist, die als Downloader, Dropper und/oder Payload für eine leistungsfähigere und oft größere Hauptnutzlastdatei, die als Stage bekannt ist. Der Zweck der Stager-Nutzlast besteht darin, die Hauptbühne einzurichten. In diesem Beispiel für einen Angriff, bei dem das Payload-Staging wie oben beschrieben verwendet wird, haben die verschiedenen Payloads die folgenden Aufgaben:

Die Stager EXE-Nutzlast macht Folgendes:

  • Ausweichtechniken
  • Lädt zwei Textdateien auf die Festplatte herunter. Bei diesen Dateien handelt es sich tatsächlich um eine EXE- und eine DLL-Datei.
  • Starte die 2und EXE-Datei
  • Der Stager wird dann beendet
  • Die Running 2und EXE (Stufe 1) lädt die DLL (Stufe 2)

Stage-1-EXE- und Stage-2-DLL-Payloads führen dann die folgenden bösartigen Ransomware-Aktionen aus:

  • Ausweichtechniken
  • Entdeckung
  • Manipulation von Prozessen
  • Aufzählung von Laufwerken und Dateien
  • Verschlüsselung von Dateien

Stager: Anfängliche ausführbare Nutzlast (EXE)

Der Angriff beginnt mit unserer ursprünglichen Nutzlast, dem Stager, der an die Maschine des Opfers geliefert wird. Oft geschieht dies durch Social-Engineering-Techniken wie Phishing. Sobald die anfängliche Nutzlast bereitgestellt und ausgeführt wird, beginnt sie mit der Ausführung der böswilligen Anweisungen.

Ausweichen

Es wartet zunächst eine bestimmte Zeit, ohne Aktionen auszuführen. Dabei handelt es sich um eine Technik zur Umgehung, die entwickelt wurde, um die Bedrohungsanalyse virtueller Maschinen zu überdauern. Danach wird eine bekannte ausführbare Datei aus dem Internet heruntergeladen, z. B. eine Notepad-App. Dies ist ein Köder und eine weitere Ausweichtaktik, um einer Entdeckung zu entgehen.

Andere Techniken können die Überprüfung auf Mausklicks oder die Überprüfung von Dokumentverzeichnissen auf Hinweise auf Dateien umfassen, die mit der normalen Nutzung eines Computersystems im Zusammenhang stehen, im Gegensatz zu einer virtuellen Sandbox-Maschine, die für die Bedrohungsanalyse verwendet wird.

Downloader, Dropper und Loader

Sobald diese ersten Ausweichaktionen ausgeführt wurden, führt die Stager-Nutzlast (Initial) erneut eine dritte Schlafaktion aus. Sie wartet erneut eine bestimmte Zeit, bevor sie mit dem nächsten Befehlssatz fortfährt, der darin besteht, die Staging-Nutzdatendateien herunterzuladen. Diese Dateien werden vom Angreifer per Fernzugriff gehostet, wie unten dargestellt.

Der Stager fährt dann fort, zwei Textdateien „notepadlog0120231224.txt“ und „notepadlog0120231513.txt“ herunterzuladen. Diese nächste Phase wird im folgenden Beispiel in rotem Text dargestellt.

Beachten Sie, dass die Download-Links für die Payload-Dateien tatsächlich mithilfe der Base64-Kodierung verschleiert werden, die als vierte Technik in der erster Teil dieser Serie.

Die anfängliche Nutzlast konvertiert das Base64 intern im laufenden Betrieb in die ursprünglichen Download-Links.

Die beiden heruntergeladenen Textdateien sind eigentlich eine ausführbare Datei (EXE) bzw. eine Dynamic Link Library (DLL), getarnt als Textdateien. Dies sind die Nutzlasten der Stufen 1 und 2 für dieses Beispiel für einen mehrstufigen Ransomware-Angriff. Nach erfolgreichen Downloads werden diese Dateien in ihre ursprünglichen Typen umbenannt.

Die Stager-Nutzlast startet dann die ausführbare Stage-1-Nutzlast, um den eigentlichen Ransomware-Angriff zu starten. Der Stager hat nun seinen Zweck erfüllt und wird beendet, sobald die Nutzlast der Stufe 1 in den Speicher geladen wurde und zu laufen beginnt. Also, wie in der ersten Technik beschrieben erster Teil Diese Nutzlast dieser Serie ist der Downloader und Dropper für die Stage-1-EXE- und Stage-2-DLL-Nutzlast und der Loader nur für die Stage-1-Nutzlast. Die DLL-Nutzlast wird als Nutzlast der Stufe 2 von der derzeit laufenden EXE-Nutzlast der Stufe 1 geladen, weshalb es sich um einen mehrstufigen Payload-Angriff handelt.

Ausführbare Stage-1-Datei (EXE)

Sobald die Ausführung an die ausführbare Stage-1-Datei übergeben wurde, schläft sie zunächst für eine bestimmte Zeit, wie unten gezeigt.

Anschließend wird die Stager-Nutzdatendatei gelöscht.“payload_initial_stager.exe“ aus dem Dateisystem, um jegliche Beweise zu entfernen. Im folgenden Beispiel wurde die Datei gelöscht und befindet sich nicht mehr im Verzeichnis.

Die Nutzlast der Stufe 1 ist jetzt bereit, ihre Aktionen auszuführen, um den Rest des Angriffs fortzusetzen.

Entdeckung

Als Nächstes führt es einige Erkennungstechniken auf dem infizierten System durch. Diese Erkennungstechniken ermöglichen es einem Bedrohungsakteur, ein wenig mehr über das infizierte System zu erfahren. Die Erkennung hilft dem Bedrohungsbetreiber, bestimmte wichtige Überlegungen zur Betriebssicherheit zu treffen, um den Gesamterfolg des Angriffs sicherzustellen. In diesem Beispiel führt die Nutzlast der Stufe 1 eine Überprüfung der Prozessliste durch. Einige Prozesse, die von Interesse sein könnten, sind Endpoint Detection and Response (EDR), Antivirenprozesse (AV) oder Prozesse für virtuelle Maschinen. Diese helfen dabei, die Wahrscheinlichkeit zu verstehen, mit der die Nutzlast erkannt wird.

Basierend auf den Ergebnissen der Entdeckungsinformationen kann ein Bedrohungsakteur einige wichtige Entscheidungen zur Betriebssicherheit treffen. Wenn beispielsweise ein bekannter EDR-Prozess auf dem System gefunden wird oder die Payload Prozesse virtueller Maschinen erkennt, kann die Payload angewiesen werden, das System zu beenden, um einer Entdeckung zu entgehen.

Alternativ kann der Bedrohungsakteur beschließen, zusätzliche Umgehungstechniken einzusetzen, um das EDR zu umgehen, oder sogar versuchen, mit anderen Mitteln den EDR-Prozess vollständig zu beenden.

Discovery hilft auch dabei, festzustellen, wie wertvoll das kompromittierte System sein könnte. Handelt es sich beispielsweise um einen Produktionsdatenbankserver oder um ein Zahlungssystem mit wertvollen Kundendaten? Je wichtiger das System für ein Unternehmen ist, desto wahrscheinlicher ist es, dass dafür ein Lösegeld gezahlt wird.

Prozessmanipulation: Living-off-the-Land (LotL) -Binärdateien

Weitere nützliche Informationen sind systembezogene Informationen wie Betriebssystem, Sprache, Gebietsschema sowie Hotfixes und Updates, die auf dem System installiert sind oder fehlen. Diese Art von Informationen kann bei der Planung zusätzlicher Angriffe helfen, z. B. beim Ausnutzen von Sicherheitslücken.

Unter der Annahme, dass der EDR-Prozess nicht gefunden wurde, wird die Payload fortgesetzt, da der Bedrohungsakteur möglicherweise zuversichtlich ist, mit anderen umzugehen. Nach der Überprüfung der Prozessinformationen verwendet die Nutzlast der ausführbaren Stage-1-Datei also eine Living-off-the-Land-Technik und startet eine separate Windows-Eingabeaufforderung, wie im folgenden Beispiel gezeigt.

Nach dem Start der Eingabeaufforderung übergibt die Payload einige Windows-Befehle zur Ausführung an sie. Dieser Befehl generiert Systeminformationen wie Systemtyp, Prozessorinformationen, Verfügbarkeit und Hotfixes. Im folgenden Beispiel wird eine Momentaufnahme der Ausgabe in rotem Text angezeigt.

Dynamische Linkbibliothek (DLL) der Stufe 2

Wie in den vorherigen Artikeln besprochen, enthält eine DLL-Datei Computercode, der nicht von selbst ausgeführt werden kann. In unserem Beispiel verwendet die Stage-1-EXE also auch Code in der Stage-2-DLL, um den Rest des Angriffszyklus abzuschließen.

Stage-1-EXE lädt Stage-2-DLL-Nutzlast

Nachdem die EXE-Nutzlast der Stufe 1 ihre Aktionen abgeschlossen hat, fährt sie mit dem Laden der Stage-2-DLL-Nutzlast fort. Die DLL-Payload enthält den Code, der für die letzte Phase des Angriffs verwendet wird. Dabei wird nach den Laufwerken im System gesucht und dann die ausgewählten Dateien auf diesen Laufwerken verschlüsselt.

Der DLL-Code führt zunächst eine Laufwerksprüfung durch, um die Laufwerke auf dem infizierten System zu finden, und listet nützliche Informationen zu jedem Laufwerk auf. Von besonderem Interesse sind in der obigen Anzeige Informationen über die Laufwerke im System, auf die zugegriffen werden kann, und über die Laufwerke, auf die nicht zugegriffen werden kann. Auf diese Weise können Sie gezielt die Dateien auf den richtigen Laufwerken verschlüsseln und Fehler vermeiden, indem Sie versuchen, auf Laufwerken zu arbeiten, die schreibgeschützt sind oder auf die nicht zugegriffen werden kann.

Verschlüsselung

Zu diesem Zeitpunkt ist die Verschlüsselung gegen Lösegeld nun startklar. Der Verschlüsselungscode in der Stage-2-DLL sucht zunächst nach einer Liste von Textdateien im Verzeichnis. Das liegt daran, dass wir in dieser letzten Demonstration nur Textdateien verschlüsseln werden. Die Nutzlast zeigt dann alle gefundenen Textdateien an.

Die erkannten Dateien werden dann von der Nutzlast verschlüsselt. Die Dateierweiterungen werden ebenfalls in“ geändert.verschlüsselt“ um die verschlüsselten Textdateien anzuzeigen.

Unten sehen wir auch die Vorher-Nachher-Bilder des Verzeichnisses, in dem sich die Textdateien befinden, und die Änderungen nach der Verschlüsselung zeigen.

Schließlich kommt der Lösegeldschein: Dies macht den Benutzer normalerweise darauf aufmerksam, dass seine Dateien verschlüsselt wurden. Außerdem erfahren sie, wie sie das Lösegeld zahlen und den Entschlüsselungsschlüssel zum Entschlüsseln der Dateien erhalten können. In vielen Fällen garantiert die Zahlung des Lösegelds nicht automatisch den Zugriff auf den Entschlüsselungsschlüssel.

Beachten Sie, dass wir uns in unserem Beispiel dafür entschieden haben, den gesamten Verschlüsselungscode in eine DLL-Datei einzufügen, die zu unserer Stage-2-Nutzlast wurde. Dies liegt hauptsächlich daran, dass eine DLL, wie in den vorherigen Artikeln besprochen, eine Bibliotheksdatei ist, was bedeutet, dass sie wiederverwendet werden kann. Wenn wir uns zum Beispiel als Angreifer dafür entschieden haben, eine völlig andere Stage-1-EXE-Nutzlast zu verwenden, vielleicht aufgrund neuer Umgehungsverbesserungen in der Zukunft, müssen wir den Verschlüsselungsteil unseres Payload-Codes nicht neu schreiben, um die neue Angriffskampagne abzuschließen. Wir können unsere neue Payload einfach mit der vorhandenen Stage-2-DLL-Datei koppeln und die neue EXE-Datei die DLL laden lassen, um Dateien zu verschlüsseln.

Schutz vor Ransomware

Letztlich wird Ransomware drei Hauptgrenzen verfolgen: Infektion, Ausführung und Persistenz.

Diese können grob wie folgt kategorisiert werden:

  • Dateisystem
  • Registratur
  • Erinnerung
  • Netzwerk (remote und lokal — seitliche Bewegung)

Verteidiger müssen daher die richtigen Tools entwickeln und sie auf die richtige Weise einsetzen, um die Sicherheit wirksam zu mindern. In Teil drei Im Vergleich zur vorherigen Serie über Malware-Payloads und Beacons gibt es einen detaillierteren Überblick über die tiefgreifende Abwehr von Bedrohungen, die auf der Philosophie basieren, von Sicherheitsvorfällen und Cyber-Resilienz auszugehen.

Diese dreiteilige Serie hat gezeigt, wie die verschiedenen Taktiken und Techniken, die von Malware und insbesondere von Ransomware verwendet werden, entstehen können. Durch das Verständnis dieser verschiedenen Taktiken und Techniken können Verteidiger ihre bestehenden Cyberrichtlinien und Abwehrmaßnahmen besser evaluieren und wirksame Gegenmaßnahmen ergreifen.

Möchten Sie mehr darüber erfahren, wie Sie Ihr Unternehmen vor Ransomware und Sicherheitslücken schützen können? Kontaktieren Sie uns noch heute.

Verwandte Themen

Keine Artikel gefunden.

In Verbindung stehende Artikel

Entmystifizierung von Ransomware-Techniken mithilfe von.NET-Assemblys: EXE- und DLL-Assemblys
Eindämmung von Ransomware

Entmystifizierung von Ransomware-Techniken mithilfe von.NET-Assemblys: EXE- und DLL-Assemblys

Lernen Sie die wichtigsten Unterschiede zwischen .Net-Assemblys (EXE und DLL) kennen und erfahren Sie, wie sie in einem anfänglichen High-Level-Code ausgeführt werden.

Entmystifizierung von Ransomware-Techniken mithilfe von.NET-Assemblys: Ein mehrstufiger Angriff
Eindämmung von Ransomware

Entmystifizierung von Ransomware-Techniken mithilfe von.NET-Assemblys: Ein mehrstufiger Angriff

Learn the fundamentals of a multi-stage payload attack using a set of staged payloads.

BlackMatter Ransomware: Mindern Sie Ihr Risiko durch Segmentierung
Eindämmung von Ransomware

BlackMatter Ransomware: Mindern Sie Ihr Risiko durch Segmentierung

Malware-Payloads und Beacons: Wie bösartige Kommunikation beginnt
Cyber-Resilienz

Malware-Payloads und Beacons: Wie bösartige Kommunikation beginnt

Mit Malware-Beacons kann ein Angreifer Malware über ein Skript ausführen. Sie zu erkennen hilft bei der Entwicklung von Erkennungs- und Eindämmungsstrategien.

Malware-Payloads und Beacons: Arten bösartiger Payloads
Cyber-Resilienz

Malware-Payloads und Beacons: Arten bösartiger Payloads

Understanding distinct types of payloads and reviewing an example of malicious code they may employ.

Malware-Payloads und Beacons: Techniken zur Schadensbegrenzung
Cyber-Resilienz

Malware-Payloads und Beacons: Techniken zur Schadensbegrenzung

Im letzten Teil dieser Serie konzentrieren wir uns auf einige der Verschleierungstechniken, die zur Tarnung von Malware-Nutzlasten eingesetzt werden, und untersuchen Techniken zur Abwehr, die Unternehmen einsetzen können.

Gehen Sie von einem Verstoß aus.
Auswirkungen minimieren.
Erhöhen Sie die Widerstandsfähigkeit.

Sind Sie bereit, mehr über Zero-Trust-Segmentierung zu erfahren?