Print Stack Canary
Last updated
Last updated
Leer & oefen AWS-hacking:HackTricks Opleiding AWS Red Team Expert (ARTE) Leer & oefen GCP-hacking: HackTricks Opleiding GCP Red Team Expert (GRTE)
Stel 'n situasie voor waar 'n program vatbaar vir stokoorvloei 'n puts-funksie kan uitvoer wat na 'n deel van die stokoorvloei wys. Die aanvaller weet dat die eerste byte van die kanarie 'n nulbyte (\x00
) is en die res van die kanarie is willekeurige bytes. Dan kan die aanvaller 'n oorvloei skep wat die stok oorskryf tot net die eerste byte van die kanarie.
Dan roep die aanvaller die puts-funksionaliteit aan op die middel van die nutslading wat al die kanarie sal druk (behalwe die eerste nulbyte).
Met hierdie inligting kan die aanvaller 'n nuwe aanval skep en stuur deur die kanarie te ken (in dieselfde program-sessie).
Dit is vanselfsprekend dat hierdie taktiek baie beperk is aangesien die aanvaller in staat moet wees om die inhoud van sy nutslading te druk om die kanarie te eksfiltreer en dan 'n nuwe nutslading (in dieselfde program-sessie) te kan skep en stuur die werklike stokoorvloei.
CTF-voorbeelde:
64-bis, ASLR geaktiveer maar geen PIE nie, die eerste stap is om 'n oorvloei te vul tot die byte 0x00 van die kanarie om dan puts te roep en dit te lek. Met die kanarie word 'n ROP-gadget geskep om puts te roep om die adres van puts van die GOT te lek en dan 'n ROP-gadget om system('/bin/sh')
te roep
32-bis, ARM, geen relro, kanarie, nx, geen pie. Oorvloei met 'n oproep aan puts daarop om die kanarie te lek + ret2lib wat system
aanroep met 'n ROP-ketting om r0 (arg /bin/sh
) en pc (adres van system) te pop
Met 'n willekeurige lees soos die een wat deur formaat strings voorsien word, kan dit moontlik wees om die kanarie te lek. Kyk na hierdie voorbeeld: https://ir0nstone.gitbook.io/notes/types/stack/canaries en jy kan lees oor die misbruik van formaatstrings om willekeurige geheue-adresse te lees in:
Format StringsHierdie uitdaging misbruik op 'n baie eenvoudige manier 'n formaatstring om die kanarie van die stok te lees
Leer & oefen AWS-hacking:HackTricks Opleiding AWS Red Team Expert (ARTE) Leer & oefen GCP-hacking: HackTricks Opleiding GCP Red Team Expert (GRTE)