
Dies ist der zweite Teil einer detaillierten Untersuchung der KorPlug-Malware-Familie. Frühere Berichte beschrieben ausführlich den initialen Ladevektor, der DLL-Side-Loading gegen legitime Dienstprogramme einsetzt, um die Ausführung von Schadcode zu ermöglichen.
Die zweite Stufe der Malware wird über eine spezifische Einstiegsfunktion aktiviert. Eine statische Analyse der Binärdatei zeigt, dass die von der Loader-Stufe aufgerufene Initialise-Funktion eine ungewöhnliche Struktur im Kontrollflussdiagramm (CFG) aufweist.
Reverse-Engineering dieser Funktion gestaltet sich aufgrund der implementierten Verschleierungsmechanismen als besonders anspruchsvoll. Sowohl statische Disassemblierung als auch dynamische Analysen stoßen auf erhebliche Schwierigkeiten, die Logik der Funktion nachzuvollziehen.
Die folgende technische Analyse, unterstützt durch die in Tabelle aufgeführten Dateiinformationen, dokumentiert die Methoden, mit denen diese Verschleierungen überwunden wurden und wie verwertbare Informationen über die Ausführungsfähigkeiten der zweiten KorPlug-Stufe gewonnen werden konnten.
| SHA-256 Hash | b6b239fe0974cf09fe8ee9bc5d0502174836a79c53adccdbb1adeb1f15c6845c |
| File Size | 638976 Bytes (624.00 KB) |
| File Type | x86 PE |
Technische Analyse: Rückblick auf Stufe 3
Die Analyse der Endphase, wie in Teil 1 beschrieben, zeigt, dass die entschlüsselte Nutzlast zwar die Standardstruktur einer DLL beibehält, ihre Ausführung jedoch über unkonventionelle Ladeverfahren erfolgt.
Die Probe nutzt eine shellcode-ähnliche Ausführung über den API-Aufruf „EnumSystemGeoID“. Die initiale Bytefolge der Nutzlast enthält Umleitungsanweisungen, die den Ausführungsfluss direkt zur Initialisierungsfunktion führen und so die üblichen Verfahren zum Laden von Windows-DLLs sowie die damit verbundenen Sicherheitsmechanismen umgehen.
Die statische Analyse der Binärdatei in Disassemblierungsumgebungen zeigt, dass die Initialize-Funktion eine komplexe und weit verzweigte Kontrollflussgraphenstruktur (CFG) aufweist. Dieser Bericht beschreibt die Methoden, mit denen die verschleierte CFG in ein verständliches Format überführt wurde, das für Reverse-Engineering geeignet ist, wobei die Integrität der ursprünglichen Ausführungslogik und des Betriebsverhaltens erhalten bleibt.
Shellcode-Aufschlüsselung.
CFG der Initialisierungsfunktion.
Komplexität des CFG und O-LLVM-Verschleierung
Die Komplexität des Kontrollflussgraphen (CFG) geht auf O-LLVM zurück, eine angepasste Variante des LLVM-Compilers, die dafür bekannt ist, Kontrollflussabflachungen, Scheinzweige und Befehlsersetzungen einzusetzen, um Erkennung und Analyse zu erschweren.
Diese Techniken wandeln die Logik in switch-ähnliche Dispatcher um, fügen irreführende Codepfade hinzu und verkomplizieren Befehle – wodurch die Hürden für das Reverse Engineering erheblich steigen.
Bewertungen von Open-Source-Entschleierern wie MODeflattener zeigten in diesem Fall deutliche Grenzen, sodass für eine wirksame Analyse maßgeschneiderte Anpassungen notwendig waren.
Rekonstruktion des CFG
Um die Verschleierung zu durchdringen, kategorisierten Analysten die einzelnen CFG-Komponenten systematisch:
-
den Pre-Dispatcher-Block, erkennbar durch zahlreiche Vorgänger und den einfachen Sprung zum initialen Dispatcher,
-
den Dispatcher, der eine Statusvariable manipuliert, um Ausführungspfade aufzulösen,
-
Backbone-Blöcke, die über JMP-, MOV-, SUB- und JZ-Sequenzen Variablenprüfungen erzwingen,
-
relevante Blöcke, die die Kernlogik der Malware enthalten und in einfache (fest codierte MOV-Zuweisungen) sowie bedingte (CMOVZ-gesteuerte) Typen unterteilt sind,
-
sowie Tail-Blöcke, die lediglich Übergangssprünge darstellen und zur Entfernung markiert wurden.
Diese Klassifizierung machte es möglich, Zuweisungen von Statusvariablen mit legitimen Sprüngen zu verknüpfen und so vorab festgelegte Sequenzen offenzulegen, die die Malware-Funktionalität innerhalb der abgeflachten Struktur erhalten.
Mithilfe von Python und dem angr-Framework wurde ein Entschleierungsskript entwickelt, das die Blockaufzählung, die Katalogisierung von Statuswerten und das Patchen von Binärdateien automatisiert. Es ersetzt verschleierte Sprünge durch direkte oder bedingte Anweisungen, füllt mit NOPs zur Beibehaltung der Ausrichtung und entfernt überflüssige Dispatcher- und Backbone-Elemente. Das Ergebnis ist ein optimierter CFG, der die ursprüngliche Logik widerspiegelt.
Dieser Ansatz entmystifiziert nicht nur das Verhalten von KorPlug – etwa variablengesteuerte Übergänge für modulare Ausführung –, sondern passt sich auch an vergleichbare O-LLVM-Bedrohungen an und übertrifft Tools wie MODeflattener durch die Erkennung allgemeiner Muster. Nach dem Patching werden die Taktiken, Techniken und Verfahren (TTPs) der Malware sichtbar, was Schwachstellenbewertungen und Bedrohungsanalysen erleichtert.
Fazit
Die Methode zeigt, dass sich auch stark abgeflachte Kontrollflussstrukturen, die durch O-LLVM-Verschleierung entstehen, erfolgreich analysieren und entschleiern lassen. Durch die systematische Identifizierung von Verschleierungskomponenten, die Klassifizierung relevanter Blocktypen und gezielte Binärpatches kann die ursprüngliche Ausführungslogik rekonstruiert und das Kernverhalten der Malware offengelegt werden.
Auch wenn diese Implementierung speziell für das KorPlug-Beispiel entwickelt wurde, bietet die Methodik ein flexibles Framework, das sich mit Anpassungen auf ähnliche Verschleierungsschemata übertragen lässt. Damit reiht sich der Ansatz in die Strategien bestehender Tools wie MODeflattener ein, ermöglicht jedoch durch erweiterbare Implementierungen eine breitere Anwendung auf O-LLVM-verschleierte Bedrohungen.
IOCs
| SHA-256 | Description |
| b6b239fe0974cf09fe8ee9bc5d0502174836a79c53adccdbb1adeb1f15c6845c | The content of the analyzed sample, identified by its SHA-256 hash |
Das könnte Ihnen gefallen
Bild/Quelle: https://depositphotos.com/de/home.html
Fachartikel

Wenn Angreifer selbst zum Ziel werden: Wie Forscher eine Infostealer-Infrastruktur kompromittierten

Mehr Gesetze, mehr Druck: Was bei NIS2, CRA, DORA & Co. am Ende zählt

WinDbg-UI blockiert beim Kopieren: Ursachenforschung führt zu Zwischenablage-Deadlock in virtuellen Umgebungen

RISE with SAP: Wie Sicherheitsmaßnahmen den Return on Investment sichern

Jailbreaking: Die unterschätzte Sicherheitslücke moderner KI-Systeme
Studien

Deutsche Unicorn-Gründer bevorzugen zunehmend den Standort Deutschland

IT-Modernisierung entscheidet über KI-Erfolg und Cybersicherheit

Neue ISACA-Studie: Datenschutzbudgets werden trotz steigender Risiken voraussichtlich schrumpfen

Cybersecurity-Jahresrückblick: Wie KI-Agenten und OAuth-Lücken die Bedrohungslandschaft 2025 veränderten
![Featured image for “Phishing-Studie deckt auf: [EXTERN]-Markierung schützt Klinikpersonal kaum”](https://www.all-about-security.de/wp-content/uploads/2025/12/phishing-4.jpg)
Phishing-Studie deckt auf: [EXTERN]-Markierung schützt Klinikpersonal kaum
Whitepaper

ETSI veröffentlicht weltweit führenden Standard für die Sicherung von KI

Allianz Risk Barometer 2026: Cyberrisiken führen das Ranking an, KI rückt auf Platz zwei vor

Cybersecurity-Jahresrückblick: Wie KI-Agenten und OAuth-Lücken die Bedrohungslandschaft 2025 veränderten

NIS2-Richtlinie im Gesundheitswesen: Praxisleitfaden für die Geschäftsführung

Datenschutzkonformer KI-Einsatz in Bundesbehörden: Neue Handreichung gibt Orientierung
Hamsterrad-Rebell

Cyberversicherung ohne Datenbasis? Warum CIOs und CISOs jetzt auf quantifizierbare Risikomodelle setzen müssen

Identity Security Posture Management (ISPM): Rettung oder Hype?

Platform Security: Warum ERP-Systeme besondere Sicherheitsmaßnahmen erfordern

Daten in eigener Hand: Europas Souveränität im Fokus









