Programming lesson
Malware-Analyse in der Praxis: Phase I und II des CS6035-Projekts meistern
Lerne die Grundlagen der statischen und dynamischen Malware-Analyse am Beispiel des CS6035-Projekts. In diesem Tutorial erfährst du, wie du Joe Sandbox-Reports interpretierst, JSON-Antworten formatierst und typische Stolperfallen umgehst – mit aktuellen Bezügen zu KI-gestützter Bedrohungsanalyse und
Einführung in die Malware-Analyse mit CS6035
Die Malware-Analyse ist eine der zentralen Fähigkeiten in der Cybersicherheit. Im Rahmen des CS6035-Projekts (Fall 2025) führst du eine mehrstufige Analyse von fünf verschiedenen Malware-Proben durch. Das Projekt ist in zwei Phasen unterteilt: In Phase I beantwortest du Multiple-Choice-Fragen zu 20 Verhaltensweisen der Proben, in Phase II führst du eine tiefergehende statische und dynamische Analyse durch. Dieses Tutorial hilft dir, die Anforderungen zu verstehen und typische Fehler zu vermeiden – mit praktischen Tipps, die auf den neuesten Trends in der Malware-Analyse und KI-gestützten Bedrohungsjagd basieren.
Phase I: Verhaltensanalyse mit Joe Sandbox
In Phase I erhältst du fünf Malware-Proben, die in Joe Sandbox analysiert wurden. Deine Aufgabe ist es, für jede der 20 Verhaltensweisen (behavior01 bis behavior20) zu entscheiden, ob die Probe dieses Verhalten zeigt. Jede Frage ist 2,5 Punkte wert, pro Malware 0,5 Punkte. Die Herausforderung liegt darin, die oft mehrdeutigen Signale in den Reports richtig zu interpretieren.
Joe Sandbox-Reports verstehen
Beginne immer mit dem Abschnitt Behavior des Reports. Hier siehst du eine Liste der ausgeführten Prozesse und deren Systemaufrufe. Achte besonders auf Signaturen, die auf bestimmte bösartige Aktivitäten hinweisen. Denke daran: Ein einzelner API-Aufruf allein beweist noch kein Verhalten. Du musst den Kontext verstehen – wie beim Lesen eines Satzes reicht es nicht, nur einzelne Wörter zu betrachten. Beispiel: Der Aufruf von CreateFile kann harmlos sein, wenn die Datei im Temp-Ordner liegt, aber verdächtig, wenn sie in C:\Windows\System32 landet.
Häufige Fallstricke in Phase I
- „Drop“ vs. „Delete“: „Drop“ bedeutet, dass die Malware eine Datei erstellt oder in ein Verzeichnis verschiebt – nicht löscht. Prüfe genau, ob die Datei tatsächlich neu erstellt wurde.
- Versuche zählen: Auch fehlgeschlagene Versuche gelten als „attempted“. Wenn die Malware also versucht, eine Datei zu erstellen, aber scheitert, markiere das Verhalten dennoch als
true. - Reputation ignorieren: Vertraue nicht auf den Ruf einer Datei. Auch eine Datei mit hoher Reputation kann bösartiges Verhalten zeigen. Konzentriere dich auf die beobachteten Aktionen.
Phase II: Statische und dynamische Analyse
Phase II baut auf Phase I auf und verlangt eine tiefere Untersuchung. Du musst Flags extrahieren, die in den Malware-Proben versteckt sind. Dazu gehören das Decodieren von Daten, das Extrahieren von Dateien und das Analysieren von Netzwerkverkehr. Die Arbeit in der VM ist essenziell – stelle sicher, dass du die Setup-Anweisungen genau befolgst.
Werkzeuge und Techniken
- CyberChef: Ideal zum Decodieren von Base64, Hex oder anderen Kodierungen. Aber Vorsicht: Viele Proben verwenden mehrstufige Kodierung. Wenn CyberChef nicht weiterhilft, schreibe ein Python-Skript, um die Schritte zu automatisieren.
- Wireshark: Fange den Netzwerkverkehr auf dem Loopback-Interface. Folge dem TCP-Stream, um URLs oder Payloads zu finden. Oft verstecken sich Flags in HTTP-Requests.
- Kommandozeilen-Tools: Nutze
p7zip,py7zrundtcpdump. Entpacke Dateien rekursiv – manche Proben sind wie eine Zwiebel geschichtet.
Typische Fehler in Phase II
- Falsches GTID-Format: Deine GTID muss exakt 9 Ziffern lang sein, ohne spitze Klammern. Überprüfe die Länge und das Format, bevor du sie in einem Endpoint verwendest.
- Loopback-Interface vergessen: Wireshark zeigt standardmäßig nur Ethernet. Stelle sicher, dass du auf Loopback (lo) lauschst, sonst siehst du keinen lokalen Verkehr.
- Keine Automatisierung: Wenn du hunderte Dateien entpacken musst, schreibe ein Skript. Manuelles Entpacken ist fehleranfällig und zeitaufwändig.
Trends 2026: KI in der Malware-Analyse
Im Jahr 2026 ist Künstliche Intelligenz ein fester Bestandteil der Bedrohungsanalyse. Tools wie KI-gestützte Sandboxen können Verhaltensmuster automatisch erkennen und priorisieren. Dennoch bleibt die menschliche Interpretation entscheidend. So wie ein Schachcomputer die besten Züge berechnet, aber der Spieler die Strategie wählt, musst du die Ergebnisse der KI kritisch hinterfragen. Ein Beispiel: Eine KI könnte einen API-Aufruf als harmlos einstufen, weil er in vielen legitimen Programmen vorkommt. Aber in Kombination mit anderen Aufrufen kann er auf einen Zero-Day-Exploit hindeuten. Hier kommt deine Analysefähigkeit ins Spiel.
JSON-Formatierung für die Einreichung
Deine Antworten reichst du als JSON-Datei ein. Das Format muss exakt der Vorlage entsprechen. Verwende Schlüssel wie behavior01 bis behavior20 und als Werte true oder false. Keine Kommentare, keine zusätzlichen Kommas. Ein Beispiel für eine gültige JSON-Struktur:
{
"malware1": {
"behavior01": true,
"behavior02": false,
...
},
"malware2": { ... },
...
}Überprüfe deine Datei mit einem JSON-Validator, bevor du sie in Gradescope hochlädst. Du hast maximal 5 Versuche – wähle danach manuell die beste Einreichung aus. Versäume nicht die Deadline, da keine Nachreichungen akzeptiert werden.
Praktische Tipps für den Projekterfolg
- Früh anfangen: Die VM ist über 9 GB groß. Lade sie rechtzeitig herunter – warte nicht bis zur letzten Minute.
- Dokumentation lesen: Die Projektseite auf GitHub enthält detaillierte Anleitungen. Lies sie sorgfältig, besonders die FAQ.
- Notizen machen: Halte fest, welche Verhaltensweisen du bei welcher Probe gesehen hast. Das erleichtert die spätere Überprüfung.
- Community nutzen: Tausche dich mit Kommilitonen aus (ohne Lösungen zu teilen). Oft hilft eine zweite Meinung, um Fehlinterpretationen zu vermeiden.
Fazit
Die Malware-Analyse in CS6035 ist anspruchsvoll, aber mit der richtigen Herangehensweise machbar. Konzentriere dich auf die beobachteten Verhaltensweisen, nicht auf Annahmen. Nutze die Tools der VM effektiv und achte auf Details bei der JSON-Formatierung. Die Trends 2026 zeigen, dass KI die Analyse unterstützt, aber nicht ersetzt. Deine Fähigkeit, Muster zu erkennen und kritisch zu denken, ist der Schlüssel zum Erfolg. Viel Erfolg bei deinem Projekt!