Overwriting a freed chunk
Last updated
Last updated
Learn & practice AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Learn & practice GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Kilka z proponowanych technik wykorzystania sterty wymaga możliwości nadpisania wskaźników wewnątrz zwolnionych fragmentów. Celem tej strony jest podsumowanie potencjalnych luk, które mogą umożliwić ten dostęp:
Jeśli atakujący może zapisać informacje w zwolnionym fragmencie, może to wykorzystać do nadpisania potrzebnych wskaźników.
Jeśli atakujący może zwolnić
ten sam fragment dwa razy (zwalniając inne fragmenty pomiędzy) i sprawić, by był 2 razy w tym samym koszu, użytkownik mógłby przydzielić fragment później, zapisać potrzebne wskaźniki i następnie przydzielić go ponownie, co wywoła działania fragmentu przydzielonego (np. atak na szybki kosz, atak tcache...)
Może być możliwe przepełnienie przydzielonego fragmentu mającego obok zwolniony fragment i modyfikacja niektórych nagłówków/wskaźników.
W tym przypadku możliwe byłoby zmodyfikowanie rozmiaru następnego fragmentu w pamięci. Atakujący mógłby to wykorzystać, aby sprawić, że przydzielony fragment będzie miał większy rozmiar, następnie zwolnić
go, co spowoduje, że fragment zostanie dodany do kosza o innym rozmiarze (większym), a następnie przydzielić fałszywy rozmiar, a atak uzyska dostęp do fragmentu o rozmiarze, który jest większy niż w rzeczywistości, co zatem umożliwia sytuację z nakładającymi się fragmentami, która jest wykorzystywalna w ten sam sposób co przepełnienie sterty (sprawdź poprzednią sekcję).
Learn & practice AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Learn & practice GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)