Common Binary Exploitation Protections & Bypasses

Impara l'hacking su AWS da zero a eroe con htARTE (Esperto Red Team AWS di HackTricks)!

Altri modi per supportare HackTricks:

Abilita i File Core

I file core sono un tipo di file generato da un sistema operativo quando un processo va in crash. Questi file catturano l'immagine di memoria del processo in crash al momento della sua terminazione, inclusa la memoria del processo, i registri e lo stato del contatore del programma, tra altri dettagli. Questo snapshot può essere estremamente prezioso per il debug e per capire perché si è verificato il crash.

Abilitare la Generazione dei Dump Core

Per impostazione predefinita, molti sistemi limitano le dimensioni dei file core a 0 (cioè non generano file core) per risparmiare spazio su disco. Per abilitare la generazione dei file core, è possibile utilizzare il comando ulimit (in bash o shell simili) o configurare le impostazioni a livello di sistema.

  • Utilizzando ulimit: Il comando ulimit -c unlimited consente alla sessione shell corrente di creare file core di dimensioni illimitate. Questo è utile per le sessioni di debug ma non è persistente tra riavvii o nuove sessioni.

ulimit -c unlimited
  • Configurazione Persistente: Per una soluzione più permanente, è possibile modificare il file /etc/security/limits.conf per includere una riga come * soft core unlimited, che consente a tutti gli utenti di generare file core di dimensioni illimitate senza dover impostare manualmente ulimit nelle loro sessioni.

* soft core unlimited

Analisi dei file core con GDB

Per analizzare un file core, è possibile utilizzare strumenti di debugging come GDB (il GNU Debugger). Supponendo di avere un eseguibile che ha prodotto un dump core e il file core si chiama core_file, è possibile avviare l'analisi con:

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

Questo comando carica l'eseguibile e il file core in GDB, consentendoti di ispezionare lo stato del programma al momento del crash. Puoi utilizzare i comandi di GDB per esplorare lo stack, esaminare le variabili e comprendere la causa del crash.

Last updated