Tieferes
Reverse Engineering Basics
Wie man Software analysiert ohne Quellcode. IDA Pro, Ghidra, x64dbg — die Standard-Tools.
Was Reverse Engineering ist
Reverse Engineering (RE) ist die Analyse einer fertigen Software, um ihre Funktionsweise zu verstehen — ohne Zugang zum Quellcode. Es ist eine der wichtigsten Techniken in der IT-Sicherheit und bei Cheat-Entwicklung.
Warum Reverse Engineering?
- Malware-Analyse: verstehen, was Schadsoftware tut
- Schwachstellen-Forschung: Sicherheitslücken finden
- Interoperabilität: Protokolle nachbauen
- Game-Hacking: Cheats entwickeln
- Forensik: bei Vorfällen analysieren
- Modding: tiefere Spiel-Eingriffe
Compiler und Decompiler
Wie Code in Software wird
- Programmierer schreibt Quellcode (C++, C#, Rust, etc.)
- Compiler übersetzt in Maschinen-Code (x86, ARM)
- Linker fügt Bibliotheken zusammen
- Ergebnis: ausführbare Datei (.exe, .dll)
Decompiler-Prozess
- Disassembler übersetzt Maschinen-Code zu Assembler
- Decompiler versucht, Hochsprache zu rekonstruieren
- Variablen-Namen sind oft verloren (Generic naming)
- Struct-Definitionen müssen manuell rekonstruiert werden
Standard-Tools 2026
IDA Pro
- Hersteller: Hex-Rays
- Preis: Pro-Version teuer (mehrere Tausend €), Free-Version eingeschränkt
- Stärke: Industriestandard, beste Decompiler
- Plugins: umfangreiche Plugin-Sammlung
- Skripting: IDAPython
Ghidra
- Hersteller: NSA (Open Source seit 2019)
- Preis: kostenlos
- Stärke: kostenlose Alternative zu IDA
- Funktionen: Decompiler, Disassembler, Skripting (Java/Python)
- Plattformen: Windows, Linux, Mac
Binary Ninja
- Hersteller: Vector 35
- Preis: moderate Lizenz (ca. 1.500 €)
- Stärke: moderne UI, gute API
- Wachsende Community
radare2 / Cutter
- Open Source
- radare2: Kommandozeile
- Cutter: GUI für radare2
- Stärke: kostenlos, kann sehr viel
- Schwäche: Lernkurve
x64dbg / OllyDbg
- Debugger für Windows-Binaries
- x64dbg: moderner, 64-Bit-Support
- OllyDbg: Klassiker, nur 32-Bit
- Stärke: dynamische Analyse (Step-Through-Debugging)
Statische vs. dynamische Analyse
Statische Analyse
Software analysieren, ohne sie auszuführen:
- Disassembler/Decompiler (IDA, Ghidra)
- String-Suche
- Strukturanalyse
- Call-Graphen
- Vorteil: sicher, keine Malware-Ausführung
- Nachteil: Packer/Obfuskation erschweren
Dynamische Analyse
Software in kontrollierter Umgebung ausführen:
- Debugger (x64dbg)
- Sandbox (Cuckoo, Any.run)
- Verhaltens-Analyse
- Vorteil: sieht tatsächliches Verhalten
- Nachteil: Anti-Debugging-Techniken
Typische Workflows
Workflow 1: Funktionsanalyse
- Binary in IDA/Ghidra laden
- String-Suche nach interessanten Texten
- Xrefs auf String folgen (welche Funktion nutzt ihn?)
- Funktion umbenennen und kommentieren
- Aufrufer der Funktion analysieren
- Datenstrukturen rekonstruieren
Workflow 2: Cheat-Entwicklung
- Cheat Engine: Wert (z. B. Health) finden
- Pointer-Chain ermitteln
- In IDA/Ghidra: Pointer-Quelle finden
- Struct-Layout aus Pointer-Offsets bauen
- Hook auf relevante Spielfunktion setzen
- Eigene Cheat-DLL injizieren
Workflow 3: Malware-Analyse
- Sample in isolierter VM ausführen
- Netzwerk-Traffic mit Wireshark mitschneiden
- Datei-Operationen mit Process Monitor
- Statische Analyse parallel
- IOCs (Indicators of Compromise) extrahieren
- Bericht für Threat-Intel-Teams
Anti-Reverse-Engineering-Techniken
Software-Hersteller versuchen, RE zu erschweren:
Obfuskation
- Variablen-Namen verschleiern
- Control-Flow-Flattening (Logik durcheinander)
- Junk-Code einstreuen
- String-Verschlüsselung
Packer
- Binary komprimiert und verschlüsselt
- Bei Ausführung entpackt sich Code
- Bekannte: UPX, Themida, VMProtect
- Erschwert statische Analyse
Anti-Debugging
- Prüfung auf Debugger-Prozesse
- Timing-Checks (Debugger ist langsamer)
- Self-Modifying Code
- VM-Detection (will keine Sandbox)
VM-Protection
- Code wird in virtuelle Maschinen-Sprache übersetzt
- Beispiel: VMProtect, Themida
- Sehr aufwendig zu reversieren
- Viele AAA-Spiele und Anti-Cheat-Treiber nutzen das
Assembler-Grundlagen
x86 Register
- EAX, EBX, ECX, EDX: Allzweck-Register
- ESI, EDI: Source/Destination Index
- EBP, ESP: Base/Stack Pointer
- EIP: Instruction Pointer
- In x64: RAX, RBX, etc. (64-Bit)
Wichtige Instruktionen
mov— Wert kopierenadd,sub,mul,div— Arithmetikcmp— Vergleichje,jne,jmp— Sprüngecall,ret— Funktionsaufrufepush,pop— Stack-Operationen
Datenstrukturen rekonstruieren
Struct-Erkennung
- Wiederholte Offset-Zugriffe auf einen Pointer
- Code wie
mov eax, [ecx + 0x10]→ Member bei Offset 0x10 - Größen aus Speicher-Allokationen ableiten
- Manuelles Layout in Header-File
Class-Erkennung (C++)
- VTables sind erkennbar (Funktionspointer-Arrays)
- RTTI (Runtime Type Information) hilft
- Constructor-Erkennung über Allokation+Init-Pattern
- Inheritance-Hierarchien rekonstruieren
Rechtliche Aspekte
In Deutschland
- § 69d UrhG: Vervielfältigung zur Fehler-Beseitigung erlaubt
- § 69e UrhG: Dekompilation zur Interoperabilität erlaubt
- Reverse Engineering für Cheats: nicht durch diese Ausnahmen gedeckt
- Reverse Engineering für Sicherheits-Forschung: in der Regel akzeptiert
In den USA
- Fair Use gibt mehr Spielraum
- DMCA Section 1201 verbietet Umgehung von Schutzmaßnahmen
- Security-Research-Ausnahmen seit 2016
Lernressourcen
Bücher
- „Practical Reverse Engineering“ — Dang et al.
- „The IDA Pro Book“ — Chris Eagle
- „Reverse Engineering for Beginners“ — Dennis Yurichev (kostenlos online)
Online-Kurse
- OpenSecurityTraining — kostenlose Kurse
- Pluralsight RE-Kurse
- Coursera Software Security
Übungs-Plattformen
- Crackmes.one — Mini-RE-Challenges
- Reversing.kr — Koreanische Plattform
- Root-Me.org — diverse Challenges
- HackTheBox — auch RE-Module
RE-Konferenzen
- REcon — Spezialkonferenz für Reverse Engineering
- DEF CON — RE-Talks
- Black Hat — Industrie-Sicht
- CCC — deutsche Hacker-Konferenz
Karriere mit RE-Skills
- Malware-Analyst
- Vulnerability Researcher
- Exploit Developer
- Threat Intelligence
- Forensik-Spezialist
- Anti-Cheat-Entwickler
- DRM-Forschung
Verdienste in DE: 70.000–150.000 € je nach Spezialisierung.
Erste Schritte
- Ghidra installieren (kostenlos)
- Einfaches CrackMe von Crackmes.one runterladen
- Versuchen, das CrackMe zu lösen
- Tutorials parallel ansehen
- Mit Spielen üben: Cheat Engine + Ghidra kombiniert
- Über Monate intensiv üben
IT-Praxis und Web-Entwicklung
Wer sich für die Technik hinter Cheats interessiert, ist oft auch an IT-Sicherheit und Web-Entwicklung interessiert. SEO NW hilft seit 2012.
SEO NW Agentur