5.1 KiB
CET & Shadow Stack
Naucz się hakować AWS od zera do bohatera z htARTE (HackTricks AWS Red Team Expert)!
Inne sposoby wsparcia HackTricks:
- Jeśli chcesz zobaczyć swoją firmę reklamowaną w HackTricks lub pobrać HackTricks w formacie PDF, sprawdź PLANY SUBSKRYPCYJNE!
- Zdobądź oficjalne gadżety PEASS & HackTricks
- Odkryj Rodzinę PEASS, naszą kolekcję ekskluzywnych NFT
- Dołącz do 💬 grupy Discord lub grupy telegramowej albo śledź nas na Twitterze 🐦 @hacktricks_live.
- Podziel się swoimi sztuczkami hakerskimi, przesyłając PR-y do HackTricks i HackTricks Cloud na GitHubie.
Technologia Wzmocnienia Przepływu Kontroli (CET)
CET to funkcja bezpieczeństwa zaimplementowana na poziomie sprzętowym, zaprojektowana w celu zwalczania powszechnych ataków na kontrolę przepływu, takich jak Return-Oriented Programming (ROP) i Jump-Oriented Programming (JOP). Te rodzaje ataków manipulują przepływem wykonania programu, aby wykonać złośliwy kod lub połączyć ze sobą fragmenty nieszkodliwego kodu w taki sposób, który wykonuje złośliwą akcję.
CET wprowadza dwie główne funkcje: Indirect Branch Tracking (IBT) i Shadow Stack.
- IBT zapewnia, że skoki i wywołania pośrednie są wykonywane do prawidłowych celów, które są jawnie oznaczone jako legalne miejsca docelowe dla skoków pośrednich. Osiąga się to za pomocą nowego zestawu instrukcji, które oznaczają prawidłowe cele, uniemożliwiając atakującym zmianę przepływu kontroli do dowolnych lokalizacji.
- Shadow Stack to mechanizm zapewniający integralność adresów powrotu. Przechowuje zabezpieczoną, ukrytą kopię adresów powrotu oddzielnie od zwykłego stosu wywołań. Po zakończeniu funkcji adres powrotu jest weryfikowany względem shadow stack, uniemożliwiając atakującym nadpisanie adresów powrotu na stosie w celu przejęcia kontroli nad przepływem.
Shadow Stack
Shadow stack to dedykowany stos używany wyłącznie do przechowywania adresów powrotu. Działa obok zwykłego stosu, ale jest chroniony i ukryty przed normalnym wykonaniem programu, co utrudnia atakującym manipulowanie nim. Głównym celem shadow stack jest zapewnienie, że wszelkie modyfikacje adresów powrotu na zwykłym stosie zostaną wykryte, zanim zostaną użyte, skutecznie łagodząc ataki ROP.
Jak CET i Shadow Stack Zapobiegają Atakom
Ataki ROP i JOP polegają na zdolności przejęcia kontroli nad przepływem aplikacji poprzez wykorzystanie podatności, które pozwalają na nadpisanie wskaźników lub adresów powrotu na stosie. Kierując przepływ do sekwencji istniejących gadżetów kodowych lub gadżetów programowania zorientowanego na powroty, atakujący mogą wykonać dowolny kod.
- Funkcja IBT CET znacznie utrudnia te ataki, zapewniając, że skoki pośrednie mogą skakać tylko do adresów, które zostały jawnie oznaczone jako prawidłowe cele. Uniemożliwia to atakującym wykonanie dowolnych gadżetów rozproszonych w całym pliku binarnym.
- Shadow stack z kolei zapewnia, że nawet jeśli atakujący może nadpisać adres powrotu na normalnym stosie, różnica zostanie wykryta podczas porównywania skorumpowanego adresu z bezpieczną kopią przechowywaną w shadow stack po powrocie z funkcji. Jeśli adresy się nie zgadzają, program może zakończyć działanie lub podjąć inne środki bezpieczeństwa, uniemożliwiając powodzenie ataku.
Naucz się hakować AWS od zera do bohatera z htARTE (HackTricks AWS Red Team Expert)!
Inne sposoby wsparcia HackTricks:
- Jeśli chcesz zobaczyć swoją firmę reklamowaną w HackTricks lub pobrać HackTricks w formacie PDF, sprawdź PLANY SUBSKRYPCYJNE!
- Zdobądź oficjalne gadżety PEASS & HackTricks
- Odkryj Rodzinę PEASS, naszą kolekcję ekskluzywnych NFT
- Dołącz do 💬 grupy Discord lub grupy telegramowej albo śledź nas na Twitterze 🐦 @hacktricks_live.
- Podziel się swoimi sztuczkami hakerskimi, przesyłając PR-y do HackTricks i HackTricks Cloud na GitHubie.