.. | ||
aslr | ||
pie | ||
stack-canaries | ||
no-exec-nx.md | ||
README.md | ||
relro.md |
Common Binary Protections
{% hint style="success" %}
Learn & practice AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Learn & practice GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Support HackTricks
- Check the subscription plans!
- Join the 💬 Discord group or the telegram group or follow us on Twitter 🐦 @hacktricks_live.
- Share hacking tricks by submitting PRs to the HackTricks and HackTricks Cloud github repos.
Abilitare i file di core
I file di core sono un tipo di file generato da un sistema operativo quando un processo si arresta in modo anomalo. Questi file catturano l'immagine della memoria del processo arrestato al momento della sua terminazione, inclusi la memoria del processo, i registri e lo stato del contatore di programma, tra i vari dettagli. Questa istantanea può essere estremamente preziosa per il debug e per comprendere perché si è verificato l'arresto anomalo.
Abilitare la generazione di file di core
Per impostazione predefinita, molti sistemi limitano la dimensione dei file di core a 0 (cioè, non generano file di core) per risparmiare spazio su disco. Per abilitare la generazione di file di core, puoi 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 della shell corrente di creare file di core di dimensioni illimitate. Questo è utile per le sessioni di debug ma non è persistente tra i riavvii o le nuove sessioni.
ulimit -c unlimited
- Configurazione Persistente: Per una soluzione più permanente, puoi modificare il file
/etc/security/limits.conf
per includere una riga come* soft core unlimited
, che consente a tutti gli utenti di generare file di core di dimensioni illimitate senza dover impostare manualmente ulimit nelle loro sessioni.
* soft core unlimited
Analizzare i file di core con GDB
Per analizzare un file di core, puoi utilizzare strumenti di debug come GDB (il debugger GNU). Supponendo di avere un eseguibile che ha prodotto un dump di core e il file di core è chiamato core_file
, puoi iniziare l'analisi con:
gdb /path/to/executable /path/to/core_file
Questo comando carica l'eseguibile e il file di core in GDB, permettendoti 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.
{% hint style="success" %}
Learn & practice AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Learn & practice GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Support HackTricks
- Check the subscription plans!
- Join the 💬 Discord group or the telegram group or follow us on Twitter 🐦 @hacktricks_live.
- Share hacking tricks by submitting PRs to the HackTricks and HackTricks Cloud github repos.