Common Binary Exploitation Protections & Bypasses
Omogućavanje Core fajlova
Core fajlovi su vrsta fajlova koje generiše operativni sistem kada proces doživi pad. Ovi fajlovi zabeleže sliku memorije procesa koji je pao u trenutku njegovog završetka, uključujući memoriju procesa, registre i stanje brojača programa, među ostalim detaljima. Ovaj snimak može biti izuzetno vredan za debagovanje i razumevanje zašto je došlo do pada.
Omogućavanje Generisanja Core Dump Fajlova
Podrazumevano, mnogi sistemi ograničavaju veličinu core fajlova na 0 (tj. ne generišu core fajlove) kako bi sačuvali prostor na disku. Da biste omogućili generisanje core fajlova, možete koristiti ulimit
komandu (u bash ili sličnim shell-ovima) ili konfigurisati postavke na nivou sistema.
Korišćenje ulimit-a: Komanda
ulimit -c unlimited
omogućava trenutnoj shell sesiji da kreira core fajlove neograničene veličine. Ovo je korisno za debagovanje sesija, ali nije trajno nakon ponovnog pokretanja ili novih sesija.
Trajna konfiguracija: Za trajnije rešenje, možete urediti datoteku
/etc/security/limits.conf
da uključite liniju poput* soft core unlimited
, što omogućava svim korisnicima da generišu datoteke jezgra neograničene veličine bez potrebe da ručno postavljaju ulimit u svojim sesijama.
Analiziranje Core fajlova sa GDB-om
Za analizu core fajla, možete koristiti alate za debagovanje poput GDB-a (GNU Debager). Pretpostavljajući da imate izvršnu datoteku koja je proizvela core dump i da je core fajl nazvan core_file
, možete započeti analizu sa:
Ova komanda učitava izvršnu datoteku i jezgro u GDB, omogućavajući vam da pregledate stanje programa u trenutku rušenja. Možete koristiti GDB komande da istražite stek, pregledate promenljive i razumete uzrok rušenja.
Last updated