Print Stack Canary

Naučite hakovanje AWS-a od nule do heroja sa htARTE (HackTricks AWS Red Team Expert)!

Drugi načini podrške HackTricks-u:

Povećanje ispisivanja stack-a

Zamislite situaciju gde program podložan prelivanju stack-a može izvršiti funkciju puts koja ukazuje na deo prelivanja stack-a. Napadač zna da je prvi bajt canary-ja nula bajt (\x00) i da su ostali bajtovi canary-ja nasumični. Zatim, napadač može stvoriti prelivanje koje prepisuje stack sve do prvog bajta canary-ja.

Zatim, napadač poziva funkcionalnost puts na sredini payload-a koja će ispisati ceo canary (osim prvog nula bajta).

Sa ovim informacijama, napadač može kreirati i poslati novi napad znajući canary (u istoj sesiji programa).

Očigledno, ova taktika je veoma ograničena jer napadač mora biti u mogućnosti da ispisuje sadržaj svog payload-a kako bi izvukao canary, a zatim bio u mogućnosti da kreira novi payload (u istoj sesiji programa) i pošalje pravi buffer overflow.

CTF primeri:

Proizvoljno Čitanje

Sa proizvoljnim čitanjem kao što je ono koje omogućavaju format stringovi, moguće je procuriti canary. Proverite ovaj primer: https://ir0nstone.gitbook.io/notes/types/stack/canaries i možete pročitati o zloupotrebi format stringova za čitanje proizvoljnih memorijskih adresa u:

pageFormat Strings
Naučite hakovanje AWS-a od nule do heroja sa htARTE (HackTricks AWS Red Team Expert)!

Drugi načini podrške HackTricks-u:

Last updated