WWW2Exec - atexit()

Naučite hakovanje AWS-a od nule do heroja sa htARTE (HackTricks AWS Red Team Expert)!

Drugi načini podrške HackTricks-u:

__atexit Strukture

Danas je vrlo čudno iskoristiti ovo!

atexit() je funkcija kojoj se druge funkcije prosleđuju kao parametri. Ove funkcije će biti izvršene prilikom izvršavanja exit() ili povratka iz main funkcije. Ako možete modifikovati adresu bilo koje od ovih funkcija da pokazuje na shell kod na primer, dobićete kontrolu nad procesom, ali je to trenutno komplikovanije. Trenutno su adrese funkcija koje treba izvršiti sakrivene iza nekoliko struktura i na kraju adrese na koje pokazuju nisu adrese funkcija, već su šifrovane XOR-om i pomeraji sa slučajnim ključem. Tako da je ovaj vektor napada trenutno ne baš koristan bar na x86 i x64_86 arhitekturama. Funkcija za šifrovanje je PTR_MANGLE. Druge arhitekture poput m68k, mips32, mips64, aarch64, arm, hppa... ne implementiraju funkciju za šifrovanje jer vraćaju isto što su primile kao ulaz. Tako da bi ove arhitekture bile podložne ovom vektoru napada.

Možete pronaći detaljno objašnjenje kako ovo funkcioniše na https://m101.github.io/binholic/2017/05/20/notes-on-abusing-exit-handlers.html

Naučite hakovanje AWS-a od nule do heroja sa htARTE (HackTricks AWS Red Team Expert)!

Drugi načini podrške HackTricks-u:

Last updated