Common Binary Exploitation Protections & Bypasses

Unterstützen Sie HackTricks

Aktivieren von Core-Dateien

Core-Dateien sind eine Art von Datei, die von einem Betriebssystem generiert wird, wenn ein Prozess abstürzt. Diese Dateien erfassen das Speicherabbild des abgestürzten Prozesses zum Zeitpunkt seiner Beendigung, einschließlich des Speichers des Prozesses, der Register und des Programmzählerzustands sowie anderer Details. Dieser Schnappschuss kann äußerst wertvoll sein, um zu debuggen und zu verstehen, warum der Absturz aufgetreten ist.

Aktivieren der Core-Dump-Erstellung

Standardmäßig begrenzen viele Systeme die Größe von Core-Dateien auf 0 (d. h. sie generieren keine Core-Dateien), um Speicherplatz zu sparen. Um die Erstellung von Core-Dateien zu aktivieren, können Sie das ulimit-Kommando (in bash oder ähnlichen Shells) verwenden oder systemweite Einstellungen konfigurieren.

  • Mit ulimit: Das Kommando ulimit -c unlimited ermöglicht der aktuellen Shell-Sitzung, Core-Dateien unbegrenzter Größe zu erstellen. Dies ist nützlich für Debugging-Sitzungen, ist jedoch nicht über Neustarts oder neue Sitzungen hinweg beständig.

ulimit -c unlimited
  • Persistente Konfiguration: Für eine dauerhaftere Lösung können Sie die Datei /etc/security/limits.conf bearbeiten, um eine Zeile wie * soft core unlimited einzufügen, die es allen Benutzern ermöglicht, Core-Dateien beliebiger Größe zu generieren, ohne ulimit manuell in ihren Sitzungen festlegen zu müssen.

* soft core unlimited

Analyse von Core-Dateien mit GDB

Um eine Core-Datei zu analysieren, können Sie Debugging-Tools wie GDB (den GNU Debugger) verwenden. Angenommen, Sie haben eine ausführbare Datei, die einen Core-Dump erzeugt hat, und die Core-Datei heißt core_file, können Sie die Analyse mit folgendem Befehl starten:

gdb /path/to/executable /path/to/core_file

Dieser Befehl lädt die ausführbare Datei und die Kerneldatei in GDB, was es Ihnen ermöglicht, den Zustand des Programms zum Zeitpunkt des Absturzes zu inspizieren. Sie können GDB-Befehle verwenden, um den Stack zu erkunden, Variablen zu untersuchen und die Ursache des Absturzes zu verstehen.

Unterstützen Sie HackTricks

Last updated