hacktricks/binary-exploitation/arbitrary-write-2-exec/www2exec-atexit.md

3.6 KiB

WWW2Exec - atexit()

Jifunze kuhusu kudukua AWS kutoka sifuri hadi shujaa na htARTE (Mtaalam wa Timu Nyekundu ya AWS ya HackTricks)!

Njia nyingine za kusaidia HackTricks:

__atexit Miundo

{% hint style="danger" %} Leo ni raha sana kudukua hii! {% endhint %}

atexit() ni kazi ambayo kazi zingine hupitishwa kama parameta. Hizi kazi zitatekelezwa wakati wa kutekeleza exit() au kurudi kwa msingi.
Ikiwa unaweza kurekebisha anwani ya mojawapo ya hizi kazi ili ielekee kwenye shellcode kwa mfano, utapata udhibiti wa mchakato, lakini hii ni ngumu zaidi kwa sasa.
Kwa sasa anwani za kazi zitakazotekelezwa zimefichwa nyuma ya miundo kadhaa na mwishowe anwani ambayo inaelekezwa sio anwani za kazi, bali zime fichwa kwa XOR na viondoleo na ufunguo wa kubahatisha. Kwa hivyo kwa sasa vector huu wa shambulio si wa kutumika sana angalau kwenye x86 na x64_86.
Kazi ya ufichaji ni PTR_MANGLE. Miundo mingine kama m68k, mips32, mips64, aarch64, arm, hppa... hazitekelezi kazi ya ufichaji kwa sababu inarejesha sawa na ilivyopokea kama kuingia. Kwa hivyo miundo hii ingeweza kushambuliwa kupitia vector huu.

Unaweza kupata maelezo ya kina kuhusu jinsi hii inavyofanya kazi kwenye https://m101.github.io/binholic/2017/05/20/notes-on-abusing-exit-handlers.html

Jifunze kuhusu kudukua AWS kutoka sifuri hadi shujaa na htARTE (Mtaalam wa Timu Nyekundu ya AWS ya HackTricks)!

Njia nyingine za kusaidia HackTricks: