Erkläre Process Injection, nenne ein paar Techniken und sage, wie ein Blue Team sie erkennt.
Kurzantwort
Process Injection führt Angreifercode im Speicherbereich eines legitimen Prozesses aus, sodass die Aktivität sich einfügt und das Vertrauen dieses Prozesses erbt. Klassische Techniken sind DLL-Injection (CreateRemoteThread + LoadLibrary), Process Hollowing (einen harmlosen Prozess suspendiert starten, ihn entladen, bösartigen Code schreiben) und APC-Injection. Verteidiger erkennen sie über EDR-API-Hooks, anomale Eltern/Kind-Beziehungen oder Speicherbereiche (RWX, nicht dateigestützter ausführbarer Speicher) und Sysmon-CreateRemoteThread-Ereignisse.
Process Injection ist eine zentrale Technik der Abwehrumgehung: Statt als eigener verdächtiger Prozess zu laufen, führt sich die Malware in einem vertrauenswürdigen Prozess aus (wie explorer.exe oder svchost.exe). Das verschafft ihr zwei Vorteile – sie versteckt sich in der normalen Aktivität und erbt die Rechte und die Netzwerkreputation des Wirtsprozesses. Interviewer stellen diese Frage, um die Tiefe bei Windows-Internals und EDR-Erkennung zu prüfen.
Gängige Techniken
- DLL-Injection – den Pfad einer bösartigen DLL in den Speicher eines Zielprozesses schreiben und ihn über
CreateRemoteThread, dasLoadLibraryaufruft, zum Laden zwingen. Einfach und wohlbekannt. - Process Hollowing (RunPE) – einen legitimen Prozess suspendiert starten, sein Image entladen (aushöhlen), bösartigen Code in diesen Bereich schreiben, den Einsprungpunkt korrigieren und fortsetzen. Der Prozess sieht von außen legitim aus, führt aber Angreifercode aus.
- APC-Injection – einen Asynchronous Procedure Call in einen Thread einreihen, sodass die Payload läuft, wenn der Thread in einen alertable-Zustand eintritt.
- Reflective DLL Loading / Thread Hijacking / „Early Bird" – Varianten, die das Berühren der Disk oder LoadLibrary vermeiden, um Hooks auszuweichen.
Die typische Windows-Aufrufkette ist OpenProcess → VirtualAllocEx → WriteProcessMemory → CreateRemoteThread, die EDRs eng hooken.
Erkennung
EDR-Produkte hooken diese APIs und markieren verdächtige Abfolgen. Speicher-Scanning erwischt RWX-Bereiche und nicht dateigestützten ausführbaren Speicher (Code, der nicht aus einer Datei auf der Disk gemappt ist). Sysmon-Ereignis-ID 8 protokolliert CreateRemoteThread, und Ereignis-ID 10 protokolliert ProcessAccess auf sensible Prozesse wie LSASS. Anomale Eltern/Kind-Beziehungen (z. B. Word, das einen Prozess startet, der woanders injiziert) sind starke Signale.
Warum das wichtig ist
Eine Antwort auf Senior-Niveau benennt ein paar Techniken präzise, erklärt, warum Injection datei- und prozessbasierte Erkennung umgeht, und verweist für die Erkennung auf Speicher- und Verhaltenstelemetrie – und merkt an, dass auch legitime Software injiziert, sodass der Kontext zählt, um Fehlalarme zu vermeiden.
Wahrscheinliche Anschlussfragen
- Wie unterscheidet sich Process Hollowing von klassischer DLL-Injection?
- Warum ist RWX oder nicht dateigestützter ausführbarer Speicher ein Warnzeichen?
- Welche legitime Software injiziert ebenfalls Code und erschwert so die Erkennung?