DLL-Hijacking
Was ist DLL-Hijacking?
DLL-HijackingAngriff, der die DLL-Suchreihenfolge von Windows missbraucht, damit ein legitimes Programm eine vom Angreifer kontrollierte Bibliothek anstelle der vorgesehenen lädt.
DLL-Hijacking (MITRE ATT&CK T1574.001) nutzt aus, wie Windows DLLs auflöst: Fordert eine Anwendung eine DLL ohne vollständigen Pfad an, durchsucht der Loader eine vorhersehbare Liste von Verzeichnissen. Ein Angreifer, der eine bösartige DLL in einen höher priorisierten Pfad (Anwendungsverzeichnis, beschreibbarer PATH-Eintrag, Side-by-Side-Ordner) schreiben kann, lässt seinen Code im Kontext eines vertrauenswürdigen, häufig signierten Prozesses ausführen. Die Technik liefert Codeausführung und Persistenz und umgeht viele Application-Allowlisting-Lösungen. Gegenmaßnahmen sind vollqualifizierte Pfade, SafeDllSearchMode, WDAC/AppLocker-Regeln, Sysmon-Event-7-Überwachung und das Patchen verwundbarer Installer.
● Beispiele
- 01
Eine bösartige version.dll neben einem signierten Installer ablegen, der sie aus seinem Ordner lädt.
- 02
Eine DLL in ein beschreibbares PATH-Verzeichnis legen, das von einem Systemdienst geladen wird.
● Häufige Fragen
Was ist DLL-Hijacking?
Angriff, der die DLL-Suchreihenfolge von Windows missbraucht, damit ein legitimes Programm eine vom Angreifer kontrollierte Bibliothek anstelle der vorgesehenen lädt. Es gehört zur Kategorie Angriffe und Bedrohungen der Cybersicherheit.
Was bedeutet DLL-Hijacking?
Angriff, der die DLL-Suchreihenfolge von Windows missbraucht, damit ein legitimes Programm eine vom Angreifer kontrollierte Bibliothek anstelle der vorgesehenen lädt.
Wie funktioniert DLL-Hijacking?
DLL-Hijacking (MITRE ATT&CK T1574.001) nutzt aus, wie Windows DLLs auflöst: Fordert eine Anwendung eine DLL ohne vollständigen Pfad an, durchsucht der Loader eine vorhersehbare Liste von Verzeichnissen. Ein Angreifer, der eine bösartige DLL in einen höher priorisierten Pfad (Anwendungsverzeichnis, beschreibbarer PATH-Eintrag, Side-by-Side-Ordner) schreiben kann, lässt seinen Code im Kontext eines vertrauenswürdigen, häufig signierten Prozesses ausführen. Die Technik liefert Codeausführung und Persistenz und umgeht viele Application-Allowlisting-Lösungen. Gegenmaßnahmen sind vollqualifizierte Pfade, SafeDllSearchMode, WDAC/AppLocker-Regeln, Sysmon-Event-7-Überwachung und das Patchen verwundbarer Installer.
Wie schützt man sich gegen DLL-Hijacking?
Schutzmaßnahmen gegen DLL-Hijacking kombinieren typischerweise technische Kontrollen und operative Praktiken, wie in der Definition oben beschrieben.
Welche anderen Bezeichnungen gibt es für DLL-Hijacking?
Übliche alternative Bezeichnungen: DLL-Suchreihenfolge-Hijacking, DLL-Preloading.
● Verwandte Begriffe
- attacks№ 200
COM-Hijacking
Persistenztechnik, die die CLSID-Auflösung des Windows Component Object Model auf Angreifercode umleitet und diesen bei jeder Objektinstanziierung ausführt.
- attacks№ 054
AppInit_DLLs
Legacy-Windows-Persistenztechnik, die einen Registry-Wert missbraucht, damit eine angegebene DLL in jeden Benutzerprozess geladen wird, der user32.dll bindet.
- attacks№ 515
IFEO-Injection
Persistenz- und Privilegieneskalationstechnik, die den Windows-Registry-Schlüssel Image File Execution Options missbraucht, um beim Start eines Ziel-Executables Angreifercode auszuführen.
- attacks№ 914
Run-Schlüssel-Persistenz
Klassische Windows-Persistenztechnik, die einen Eintrag unter einem Run- oder RunOnce-Registry-Schlüssel anlegt, damit ein Binary oder Skript bei jedem Logon ausgeführt wird.
- attacks№ 862
Process Injection
Eine Familie von Evasion-Techniken, bei denen ein Angreifer Schadcode im Adressraum eines legitimen Prozesses ausfuehrt, um dessen Vertrauen und Identitaet zu erben.
- attacks№ 610
LD_PRELOAD-Hijacking
Linux-Persistenz- und Library-Hijacking-Technik, die die Umgebungsvariable LD_PRELOAD oder /etc/ld.so.preload nutzt, um Angreifercode in dynamisch gelinkte Prozesse zu injizieren.
● Siehe auch
- № 1186UAC-Bypass
- № 639Mach-O
- № 809PE-Executable-Format