One Gadget

Ondersteun HackTricks

Basiese Inligting

One Gadget maak dit moontlik om 'n skaal te bekom in plaas van die gebruik van system en "/bin/sh". One Gadget sal binne die libc-biblioteek 'n manier vind om 'n skaal te bekom (execve("/bin/sh")) deur net een adres te gebruik. Gewoonlik is daar egter sekere beperkings, die mees algemene en maklikste om te vermy is soos [rsp+0x30] == NULL. Aangesien jy die waardes binne die RSP beheer, hoef jy net nog 'n paar NULL-waardes te stuur sodat die beperking vermy word.

ONE_GADGET = libc.address + 0x4526a
rop2 = base + p64(ONE_GADGET) + "\x00"*100

Na die adres aangedui deur One Gadget moet jy die basisadres waar libc gelaai is, byvoeg.

One Gadget is 'n groot hulp vir Willekeurige Skryf 2 Uitvoer tegnieke en kan ROP-kettinge vereenvoudig omdat jy net een adres hoef te roep (en aan die vereistes te voldoen).

ARM64

Die github-opberging noem dat ARM64 ondersteun word deur die instrument, maar wanneer dit in die libc van 'n Kali 2023.3 hardloop, vind dit nie enige gadget nie.

Angry Gadget

Van die github-opberging: Geïnspireer deur OneGadget is hierdie instrument in Python geskryf en gebruik angr om beperkings vir gadgets te toets wat execve('/bin/sh', NULL, NULL) uitvoer As jy gadgets van OneGadget uitgeput het om te probeer, gee Angry Gadget baie meer met ingewikkelde beperkings om te probeer!

pip install angry_gadget

angry_gadget.py examples/libc6_2.23-0ubuntu10_amd64.so
Ondersteun HackTricks

Last updated