Heap Overflow
Osnovne informacije
Preplavljenje hipa je kao preplavljenje steka, ali u hipu. U osnovi to znači da je neki prostor rezervisan u hipu za čuvanje podataka i čuvani podaci su bili veći od rezervisanog prostora.
Kod preplavljenja steka znamo da će neki registri poput pokazivača instrukcija ili okvira steka biti obnovljeni sa steka i moguće je zloupotrebiti to. U slučaju preplavljenja hipa, nema podataka osetljivih po defaultu u hip chunku koji može biti preplavljen. Međutim, mogu biti osetljive informacije ili pokazivači, pa kritičnost ove ranjivosti zavisi o kojim podacima mogu biti prepisani i kako napadač može to zloupotrebiti.
Da biste pronašli offsete preplavljenja, možete koristiti iste obrasce kao u preplavljenju steka.
Primer ARM64
Na stranici https://8ksec.io/arm64-reversing-and-exploitation-part-1-arm-instruction-set-simple-heap-overflow/ možete pronaći primer preplavljenja hipa gde je komanda koja će biti izvršena smeštena u sledećem chunku od preplavljenog chunka. Dakle, moguće je izmeniti izvršenu komandu prepisivanjem je pomoću jednostavnog eksploita kao što je:
Last updated