Print Stack Canary

unga mkono HackTricks

Panua stack iliyochapishwa

Fikiria hali ambapo programu inayoweza kudhurika kwa kujaa kwa stack inaweza kutekeleza kazi ya puts ikionyesha sehemu ya kujaa kwa stack. Mshambuliaji anajua kwamba baiti ya kwanza ya canary ni nulisha (\x00) na zingine za canary ni baiti za nasibu. Kisha, mshambuliaji anaweza kuunda kujaa ambayo inaandika juu ya stack hadi kufikia baiti ya kwanza ya canary.

Kisha, mshambuliaji anaita kazi ya puts katikati ya mzigo ambao utachapisha canary yote (isipokuwa nulisha ya kwanza).

Kwa habari hii, mshambuliaji anaweza kutengeneza na kutuma shambulio jipya akijua canary (katika kikao kile kile cha programu).

Kwa wazi, mkakati huu ni mdogo sana kwani mshambuliaji lazima aweze kuchapisha maudhui ya mzigo wake ili kuchota canary na kisha aweze kuunda mzigo mpya (katika kikao kile kile cha programu) na kutuma kujaa kwa buffer halisi.

Mifano ya CTF:

Kusoma Kiholela

Kwa kusoma kiholela kama ile inayotolewa na vichocheo vya muundo inaweza kuwa inawezekana kuvuja canary. Angalia mfano huu: https://ir0nstone.gitbook.io/notes/types/stack/canaries na unaweza kusoma kuhusu kutumia vichocheo vya muundo kusoma anwani za kumbukumbu za kiholela katika:

Format Strings
unga mkono HackTricks

Last updated