Malware & Reverse Engineering

Windows Internals und PE-Dateien

Prozesse, Virtual Memory, DLLs, DLL-Hijacking und das Portable-Executable-Format bei Windows.

Windows Internals und PE-Dateien

Viele Malware-Samples zielen auf Windows. Deshalb behandeln die Unterlagen Windows-Prozesse, Speicher, DLLs und das PE-Format.

Prozesse

Ein Prozess ist ein laufendes Programm.

Zu einem Prozess gehören unter anderem:

  • eigener virtueller Adressraum
  • ausführbarer Code
  • geladene Bibliotheken
  • Heap
  • Stack
  • Handles
  • Threads

Malware kann Prozesse starten, beenden, manipulieren oder sich in andere Prozesse einschleusen.

Prozessstruktur im Speicher

Typische Bereiche:

BereichBedeutung
Codeausführbarer Maschinencode
globale VariablenDaten, die im Programm global verfügbar sind
Prozess-Heapdynamisch angeforderter Speicher
StackFunktionsaufrufe und lokale Daten
geladene DLLsBibliotheken im Prozessadressraum

Virtual Memory

Virtual Memory lässt Programme so arbeiten, als hätten sie einen großen zusammenhängenden Speicherbereich.

In Wirklichkeit wird Speicher in Seiten aufgeteilt und vom Betriebssystem verwaltet.

Vorteile:

  • Isolation zwischen Prozessen
  • effizientere Speichernutzung
  • Auslagerung möglich
  • Schutzmechanismen für Speicherbereiche

DLLs sind Bibliotheken, die Code und Daten enthalten und zur Laufzeit in Prozesse geladen werden.

Sie ermöglichen:

  • Wiederverwendung von Code
  • gemeinsame Bibliotheken
  • kleinere Programme
  • modulare Architektur

DLL-Hijacking

DLLs sind für Angreifer interessant, weil Programme Bibliotheken aus bestimmten Suchpfaden laden.

Bei DLL-Hijacking wird eine manipulierte DLL so platziert, dass ein Programm sie statt der eigentlich erwarteten DLL lädt.

Das kann passieren, wenn:

  • Suchpfade unsicher sind
  • Schreibrechte falsch gesetzt sind
  • Anwendungen DLLs ohne vollständige Pfade laden
  • Verzeichnisse durch Angreifer manipulierbar sind

PE-Format

PE steht für Portable Executable. Es ist das Format für ausführbare Windows-Dateien.

Dazu gehören:

  • .exe
  • .dll
  • .sys
  • weitere Windows-Binärdateien

Wichtige PE-Bereiche

BereichBedeutung
DOS Headerbeginnt typischerweise mit der Signatur MZ
PE Headerbeschreibt Architektur und Datei
Optional Headerenthält wichtige Ladeinformationen
Section Tablebeschreibt die Sektionen
.textausführbarer Code
.rdataschreibgeschützte Daten
.datainitialisierte Daten
.rsrcRessourcen wie Icons oder Dialoge

Warum PE-Analyse wichtig ist

PE-Dateien verraten viel über ein Sample:

  • Zielarchitektur
  • Importe und Exporte
  • verwendete Bibliotheken
  • verdächtige Sektionen
  • ungewöhnliche Entropie
  • Entry Point
  • mögliche Packer
  • eingebettete Ressourcen

Sicherheitsaspekte

Angreifer manipulieren PE-Dateien, um Analyse und Erkennung zu erschweren.

Mögliche Auffälligkeiten:

  • ungewöhnliche Sektionsnamen
  • sehr hohe Entropie
  • verdächtige Importe
  • veränderter Entry Point
  • gepackte oder verschlüsselte Bereiche
  • fehlende oder gefälschte Metadaten

Merksatz

Eine Windows-Datei ist nicht nur ein Programm. Ihr PE-Aufbau enthält viele Hinweise darauf, was sie tun könnte und wie sie geladen wird.

Zuletzt aktualisiert: 6. Juni 2026