Gabriel Landau hat das sogenannte Process Ghosting entdeckt. Eine Technik, mit der sich Malware effektiv AV-Programmen entziehen kann.
Der Sicherheitsforscher Gabriel Landau von elastic hat eine neue Art und Weise entdeckt, wie sich Malware effektiv vor Antivirenprogrammen wie zum Beispiel dem Microsoft Defender entziehen kann. In seinem Blogpost nennt er sie sehr zutreffend Process Ghosting, da so ein Programm von einer gelöschten Datei gestartet werden kann. Somit ist der Ursprung der Infektion nicht mehr auffindbar.
Der Ablauf beim Process Ghosting
Im Detail werden folgende Schritte beim Process Ghosting durchgeführt, um Malware (Bedeutung: Schadsoftware) zu verstecken:
- Erstelle eine Datei.
- Versetze die Datei mit NtSetInformationFile (FileDispositionInformation) in einen zum Löschen anstehenden Zustand. Hinweis: Der Versuch, stattdessen FILE_DELETE_ON_CLOSE zu verwenden, wird die Datei nicht löschen.
- Schreibe die ausführbare Nutzlast (Payload) in die Datei. Der Inhalt wird nicht persistiert (Bedeutung: nicht dauerhaft gespeichert), da die Datei bereits zum Löschen vorgemerkt ist. Der delete-pending Status blockiert auch externe Datei-Öffnungsversuche.
- Erstelle einen Imagebereich für die Datei.
- Schließe den delete-pending Handle und lösche die Datei.
- Erstelle einen Prozess, der den Image-Abschnitt benutzt.
- Weise dem Prozess Argumente und Umgebungsvariablen zu.
- Erstelle einen Thread (Bedeutung: Ausführungsreihenfolge) in diesem Prozess.
- Herzlichen Glückwunsch! Du hast Deine Anwendung erfolgreich per Process Ghosting versteckt!
Process Ghosting: ähnliche Vermeidungsstrategien bereits bekannt
Es gibt viele weitere Ansätze, die dem oben beschriebenen Process Ghosting ähneln. Das Ziel dabei ist immer das gleiche: Wie verstecke ich mich am Besten vor dem Anti-Virus? Wie verhindere ich als Cyberkrimineller, dass mein Schadprogramm erkannt und somit zeitnah gelöscht wird?
Process Doppelgänging (2017)
Anwendungen können Windows Transactional NTFS, kurz TxF, dazu verwenden, um mehrere Dateisystemoperationen als eine atomare Einheit durchzuführen. Das heißt entweder komplett oder gar nicht. Malware nutzt diesen Mechanismus beim Process Doppelgängig aus, da man trotz einer nicht abgeschlossenen Transaktion ein darin erstelltes Programm starten kann. Die Malware überschreibt dabei eine legitime Anwendung und setzt die Transaktion anschließend mit einem Rollback zurück. Vorher lädt das Schadprogramm aber den gewünschten Schadcode, der innerhalb dieser Transaktion erstellt wurde, in den Speicher und startet diesen.
Process Reimaging (2019)
Process Reimaging macht sich einen Bug in der Cache Synchronisation zunutze. Dies sorgt dafür, dass der von Windows angegebene Pfad der Anwendung sich von dem tatsächlichen Pfad unterscheidet. Anschließend wird eine Köderapplikation geladen, wieder verworfen und anschließend von einem anderen Pfad die Malware geladen. Windows meldet über seine Schnittstellen, die beispielsweise diverse Antivirenprogramme nutzen, weiterhin den Pfad des Köders. Mit diesem Trick bleibt die Schadsoftware unangetastet.
Process Herpaderping (2020)
Der beim Process Herpaderping verfolgte Ansatz ähnelt sehr dem Process Ghosting, Das Trägerprogramm schreibt zunächst die Malware auf die Festplatte und lädt diese dann in den Speicher. Das so genannte Dateihandle bleibt dabei geöffnet. Deshalb kann das Trägerprogramm anschließend den Inhalt der Datei mit einer legitimen Anwendung ersetzen und die Malware im Speicher starten.
Immer wieder neue Ansätze
Malware-Entwickler müssen sich immer wieder neue Ansätze, wie zum Beispiel Process Ghosting, überlegen, um sich vor Antivirenprogrammen zu verstecken oder um Sicherheitsmechanismen zu umgehen. Erst kürzlich hatten wir von der XCSSET Malware für macOS berichtet, die sich eine Lücke in Apples TCC zunutze macht.
Tarnkappe.info