0Pricing
Ethical Hacking Academy · Lektion

Disassembly-Grundlagen

Ghidra und IDA

Disassembly-Grundlagen ist eine kostenlose Ethical Hacking Academy-Lektion auf CoddyKit. Dies ist Lektion 3 von 4. Du kannst die komplette Lektion unten kostenlos lesen – dann übst du sie direkt im Browser mit einem integrierten Code-Editor und einem KI-Tutor rund um die Uhr. Sie ist Teil des Ethical Hacking Academy-Lernpfads, und dein Fortschritt wird über Web und CoddyKit-App synchronisiert. Der Ethical Hacking Academy-Kurs umfasst insgesamt 4 Lektionen.

Was ist Disassembly?

Disassembly wandelt den Maschinencode einer Binärdatei zurück in für Menschen lesbare Assembly-Anweisungen. Dadurch können Sie genau nachvollziehen, was die CPU ausführen wird.

Das ist unerlässlich, wenn kein Quellcode verfügbar ist, wie es bei Malware immer der Fall ist.

Disassembly vs. Decompilation

Disassembly erzeugt Assembly-Code. Decompilation geht noch weiter und rekonstruiert einen ungefähren, an C angelehnten Pseudocode auf höherer Ebene.

Pseudocode lässt sich schneller lesen, Assembly ist präzise. Analysten verwenden beides und wechseln je nach Bedarf zwischen den Darstellungen.

Ghidra

Ghidra ist eine kostenlose Open-Source-Suite für Reverse Engineering von der NSA. Sie disassembliert zahlreiche Architekturen und enthält einen leistungsfähigen Decompiler.

Der Preis und die Funktionen machen Ghidra für die meisten Analysten zum bevorzugten Einstiegswerkzeug.

IDA Pro

IDA Pro ist seit Langem der kommerzielle Standard und bekannt für seinen leistungsfähigen Disassembler und den Decompiler (mit dem Hex-Rays-Plugin).

IDA Free sowie andere Tools wie Binary Ninja und radare2/Cutter sind beliebte Alternativen.

Binärdatei laden

Sie importieren das Sample in das Tool, das es automatisch analysiert: Es identifiziert Funktionen, Querverweise und Strings.

Das Tool erstellt eine navigierbare Karte des Programms, ausgehend vom Einstiegspunkt oder von interessanten Imports.

Assembly lesen

Assembly-Anweisungen verschieben und verarbeiten Daten. Einige häufige x86-Anweisungen:

  • mov: Daten kopieren.
  • push / pop: Stack-Operationen.
  • call / ret: Funktionsaufruf und Rückkehr.
  • cmp / jmp / je: Vergleichen und Verzweigen.
mov eax, [ebp-4]
cmp eax, 0
je  short loc_401050

Querverweise

Querverweise (xrefs) zeigen, wo eine Funktion oder ein String verwendet wird. Wenn Sie die xrefs zu einer verdächtigen API wie CreateRemoteThread finden, gelangen Sie direkt zum relevanten Code.

So können Sie anhand des Verhaltens navigieren, statt den Code von oben nach unten zu lesen.

API-Aufrufe verfolgen

Importierte Windows-API-Aufrufe geben Aufschluss über die Absicht. Auf VirtualAlloc folgt WriteProcessMemory und anschließend CreateRemoteThread – das ist eine klassische Sequenz zur Prozessinjektion.

Das Erkennen solcher Muster bildet den Kern der Malware-Analyse.

Graphenansicht

Disassembler bieten eine Graphenansicht, in der grundlegende Blöcke und die Verzweigungen zwischen ihnen dargestellt werden. Dadurch wird der Kontrollfluss einer Funktion visualisiert, sodass Schleifen und Bedingungen leicht nachzuvollziehen sind.

Bei komplexer Logik ist diese Ansicht deutlich übersichtlicher als eine lineare Liste von Anweisungen.

Kombination mit Debugging

Statische Disassemblierung lässt sich gut mit einem Debugger kombinieren. Wenn Code verschleiert oder selbstmodifizierend ist, können Sie Haltepunkte setzen und ihn zur Laufzeit schrittweise ausführen, um die tatsächlichen Anweisungen zu sehen.

Diese Verbindung zur dynamischen Analyse ist bei gepackten Samples entscheidend; das nächste Kapitel behandelt dieses Thema.

Umbenennen und Kommentieren

Wenn Sie Funktionen und Variablen verstehen, benennen Sie sie um und fügen Sie im Disassembler Kommentare hinzu. Wenn Sie sub_401000 in decrypt_config umwandeln, wird die restliche Analyse deutlich einfacher.

Durch diese schrittweise Beschriftung rekonstruieren Analysten nach und nach die vollständige Logik eines Malware-Samples.

Kurze Überprüfung

Rufen Sie sich den Unterschied zwischen den beiden wichtigsten Ausgaben von Ghidra ins Gedächtnis.

Zusammenfassung

Sie verstehen nun die Grundlagen der Disassemblierung:

  • Disassemblierung liefert Assembly-Code, Dekompilierung liefert Pseudocode.
  • Ghidra (kostenlos) und IDA Pro sind die wichtigsten Werkzeuge.
  • Verwenden Sie Querverweise und Muster von API-Aufrufen (etwa Injektionssequenzen), um anhand des Verhaltens zu navigieren.
  • Die Graphenansicht visualisiert den Kontrollfluss. Bei verschleiertem Code sollten Sie sie mit einem Debugger kombinieren.

Als Nächstes werden Sie mit dem Entpacken Packprogramme außer Kraft setzen.

Häufig gestellte Fragen

Ist die Lektion „Disassembly-Grundlagen“ kostenlos?

Ja — der vollständige Text von „Disassembly-Grundlagen“ ist hier im Web kostenlos zu lesen. Um sie interaktiv zu üben (integrierter Code-Editor und 24/7 KI-Tutor) und den Rest des Ethical Hacking Academy-Kurses freizuschalten, upgrade auf CoddyKit PRO. Der Ethical Hacking Academy-Kurs umfasst insgesamt 4 Lektionen.

Was lerne ich in „Disassembly-Grundlagen“?

Ghidra und IDA Du übst Ethical Hacking Academy mit praktischem Code, den du direkt im Browser ausführst, und ein 24/7 KI-Tutor beantwortet deine Fragen während du die Lektion bearbeitest.

Brauche ich Erfahrung, um Ethical Hacking Academy zu starten?

Keine Vorkenntnisse erforderlich. Ethical Hacking Academy auf CoddyKit ist für Anfänger bis fortgeschrittene Lernende strukturiert, sodass du hier starten oder von Anfang an beginnen und in deinem eigenen Tempo voranschreiten kannst. Dies ist Lektion 3 von 4.

Wie lange dauert die Lektion „Disassembly-Grundlagen“?

Die meisten CoddyKit-Lektionen dauern etwa 5–10 Minuten. Jede ist kompakt und interaktiv, sodass du stetig Fortschritte machst und genau dort weitermachst, wo du aufgehört hast – im Web und in der App.

Kann ich in dieser Ethical Hacking Academy-Lektion Code schreiben und ausführen?

Ja. Jede Ethical Hacking Academy-Lektion enthält einen integrierten Code-Editor, sodass du echten Code direkt in deinem Browser schreibst und ausführst und sofort KI-Feedback erhältst — ohne lokale Einrichtung erforderlich.

Alle Lektionen in diesem Kurs

  1. Statische Analyse
  2. Dynamische Analyse
  3. Disassembly-Grundlagen
  4. Unpacking
← Zurück zu Ethical Hacking Academy