Exploit írás kezdőtől haladó szintig
A Windows Control Flow Guard (CFG) kijátszása
25% KEDVEZMÉNY MAGÁNSZEMÉLYEKNEK!
Amennyiben magánszemélyként jelentkezel erre a tanfolyamra, kapsz tőlünk 25% kedvezményt a képzés díjából. További infó
----------------------------------
Érdekelnek az aktuális védelmi technikák? Szívesen megismernéd a Windows 10 memóriavédelmének lehetőségeit és határait?
A Microsoft számos új operációs rendszer szintű védelmet vezetett be az utóbbi verziókban. Ezek közül az egyik az alapértelmezetten engedélyezett Control Flow Guard (CFG), mely a Windows 10-en és a 2016-os verziótól Windows Serveren is elérhető. Fontos megismerni ennek a védelemnek a lehetőségeit és határait, hogy mikor használható és mikor nem nyújt védelmet, hogy ne ringassuk magunkat a biztonság hamis illúziójába.
A képzés célja bevezetés az exploit írás világába, majd ezen keresztül a Control Flow Guard működésének megismertetése és megkerülése 32 és 64 bites rendszereken. A tanfolyam során a hallgatók egy CFG nélküli, egyedi alkalmazásból indulva, annak kódját megváltoztatva ismerik meg a Control Flow Guard működési alapelvét, valamint, hogy miként lehet ki- és bekapcsolni a szolgáltatást, akár alkalmazás szintjén is. A hagyományos és a CFG támogatással fordított alkalmazás működését egy 32 és egy 64 bites alkalmazáson keresztül vizsgáljuk meg, alacsony, rendszerhívás és memória használat szintjén elemezve az alkalmazást. Végül a megszerzett információkat felhasználva kerüljük meg a védelmet.
Amennyiben IT biztonsággal foglalkozó szakemberként vagy rendszergazdaként újabb biztonsági funkció mély ismeretével bővítenéd tudásodat, ne hagyd ki ezt a képzést!
-
+
−
Kinek ajánljuk
Microsoft rendszerek adminisztrációjával és IT biztonsággal foglalkozóknak
-
+
−
Szükséges előismeretek
Exploit írás iránti érdeklődés, programozói alapismeretek
-
+
−
Technikai előfeltételek
64 bites Windows környezet, telepített VirtualBox 6.x verzió és hozzá tartozó Extension Pack. Memória: legalább szabad 4GB, de ajánlott a szabad 8GB RAM. Merevlemez terület: szabad 50GB. 1 Windows 2019 virtuális gépet futtatunk.
-
+
−
Megszerzett képességek
A Control Flow Guard működésének és megkerülésének ismerete 32 és 64 bites rendszereken, exploit írás haladó szintig.
Tematika és videók
0. rész - Előkészületek képzés előtt
A képzés megkezdése előtt kérjük, töltsd le a mellékelt virtuális diskeket, majd bontsd ki őket (minden VHD fájlt egy alkönyvtrába, ahonnan majd a virtuális gépeket futtatni szeretnéd). A virtuális gépek létrehozása az első alkalommal közösen történik.
A jelszó az attackernél Password1
Figyelem! Ezeket a virtuális gépeket más képzéseknél is használjuk. Ugyanaz a fájlnév mindig ugyanazt a gépet takarja, így elég csak egyszer letölteni őket.
A mellékelt ISO állomány tartalmazza a képzésen használt programokat és példákat. Letöltés után további teendőtök egyelőre nincs vele, az első alkalommal kezdjük el használni.
- Base2k19.7z.001 950MB
- Base2k19.7z.002 950MB
- Base2k19.7z.003 950MB
- Base2k19.7z.004 950MB
- Base2k19.7z.005 921MB
- Attacker2k19.7z.001 508MB
- cfg.iso.7z 160MB, frissített ISO
1. rész - Alapozás: buffer overflow
Legelső alkalommal egy „egyszerű” stacked buffer overflow alapú hibával rendelkező alkalmazást elemzünk és írunk hozzá expolitot. Áttekintünk mindent, amit a buffer overflowról tudni kell a hibák kereséséhez és megtalálásához, valamint az exploit írás elsajátításához. A legegyszerűbb megoldástól indulva megtanítjuk a DEP és ASLR védelmek megkerülését is.
- 1. videó - 64 bites stack based exploit elmélet.mp4 01:23:17, 324MB
- 2. videó - DEP bypass 1. rész.mp4 01:27:46, 442MB
- Ábra - Stack felépítése exploit közben.png 139KB
- Scriptek 1KB
2. rész - Bevezetés az exploit írásba
A buffer overflow melletti leggyakoribb hiba a format string exploit, mely legtöbbször könnyen javítható programozási hibából, a beérkező és kezelt adatok, stringek nem megfelelő kezeléséből adódik. Az elmélet mellett a második alkalommal egy valós alkalmazáson, a DreamFTP példáján keresztül nézzük meg miként keressük a format string hibát egy hálózati alkalmazásban, fuzzolás segítségével és miként használjuk azt ki.
- 3. videó - x64 Stack based overflow DEP bypass befejezése.mp4 01:11:53, 350MB
- 4. videó - Format string exploit a DreamFTP-re.mp4 01:38:50, 393MB
- Scriptek-x64 2KB
- Scriptek-FormatString 2KB
3. rész - Haladó exploit technikák
A Control Flow Guard védelemének, illetve a védelem szükségességének megértéséhez áttekintjük, hogy mikor fordul elő hiba, ami ellen védeni próbál a Control Flow Guard, és amit megpróbál kiszűrni, mint a Virtual Function Call alapú exploitok. Ennek megértéséhez megírunk egy olyan exploitot, mely ezt a technikát használja, és megnézzük miként működik akkor, amikor még nincs CFG védelem. Természetesen a DEP és ASLR védelmeket is kikerüljük.
- 5. videó - Virtual Function Table Exploit, ASLR bypass.mp4 01:35:35, 395MB
- 6. videó - DEP bypass.mp4 48:37, 252MB
- 1. ábra - VFT.png 20KB
- 2. ábra - VFT-1.png 440KB
- Jegyzet - VFT.txt 1KB
- Scriptek 2KB
4. rész - CFG védelem és elkerülése: 32 bit
Az aktuális alkalommal először megvizsgáljuk és megértjük, hogy miként véd a Control Flow Guard az előző exploit ellen. A CFG bekapcsolása után egy 32 bites alkalmazás esetében vizsgáljuk meg, miként kerüljük ki ezt a védelmet.
- 7. videó - CFG elmélet.mp4 01:24:58, 363MB
- 8. videó - Bypass return pointer felülírással, ill. ha több virtual függvény hívás van.mp4 01:00:15, 309MB
- Scriptek 2KB
- Jegyzet - Olly.txt 1KB
5. rész - CFG védelem kikerülése: 64 bit
A legtöbb alkalmazás ma már vagy rendelkezik 64 bites verzióval, vagy eleve csak abban van megírva. Ezért megnézzük, hogy melyek a különbségek a 32 bites és 64 bites védelem működésében, illetve a támadásnál milyen módon kell ezeket kikerülni a 64 bites alkalmazás esetében.
- 9. videó - CFG-x64 példára exploit megírása.mp4 01:15:49, 329MB
- 10. videó - ROP chain megcsinálása.mp4 35:00, 173MB
- Scriptek 2KB
- notes.txt 2KB
- kernelbase.txt 913KB
- ntdll.txt 1,2MB