OSCP review - Nethemba

BLOG

OSCP review

2016-02-16 10:58 Norbert Szetei

Medzinárodná bezpečnostná spoločnosť Offensive Security ponúka v súčasnosti niekoľko druhov školení a certifikátov. Ku kurzom, ktoré je možné realizovať na diaľku patria Penetration Testing with Kali (OSCP), Wireless Attacks (OSWP) a Cracking the Perimeter (OSCE). Ďalšie školenia Advanced Windows Exploitation (OSEE) a Advanced Web Attacks and Exploitation (AWAE), ktoré je nutné absolvovať na prestížnych konferenciách ako Black Hat USA, boli už začiatkom roka 2015 vypredané.

Certifikát OSCP som si chcel spraviť už pred pár rokmi. Predpokladom pre pripustenie k OSCP skúške je povinné zaplatenie si kurzu Penetration Testing with Kali Linux na dobu minimálne jeden mesiac. V cene je zahrnutý lab, študijné materiály a poplatok za skúšku. V prípade, že by sa vám nepodarilo skúšku zložiť na prvýkrát, zaplatíte za každý ďalší pokus 60 dolárov. Čakacia doba sa v tomto prípade postupne predlžuje. V čase, keď som nad kurzom uvažoval, sa ešte lab volal Penetration Testing with Backtrack, dnes je jeho názov Penetration Testing with Kali. V minulosti po výbere 30tich dní a vzhľadom k tomu, že som bol zahltený množstvom projektov, som v labe strávil len pár hodín a nestihol sa ani zaregistrovať na skúšku.

LAB

V decembri 2015 som si opäť zaplatil lab a začiatkom januára tohto roku začal so samotným testovaním. V úvode dostanete asi 300 stranové PDF s úlohami a takisto prístup do verejnej siete, kde sa nachádza okolo 40 zraniteľných serverov s priamou konektivitou. Postupne sa dostávate do ďalších sietí (IT, dev, admin) a objavujete nové servery. Táto časť je nepovinná, ale ak by vám pri záverečnej skúške chýbali body, kompromitovaním týchto serverov a následným vypracovaním a zaslaním reportu môžete zopár bonusových bodov obdržať.

Čo vnímam ako benefit je fakt, že môžete používať IRC na komunikáciu s adminmi – väčšinou sa do minúty nájde niekto, kto vám odpovie. Pokiaľ sa spýtate na server, ktorý nie je „optional“, radi vám poradia.

V labe sa nachádzajú stroje (pain, sufference, humble, fc4, gh0st), ktoré majú reputáciu ako náročné na hacknutie (stačí si dať do Google oscp review) a admini k nim nie sú ochotní poskytovať žiadne rady. Samozrejme, je to individuálne. Mne osobne prišiel lab triviálny vzhľadom k podobnosti http://vulnhub.com, kde sa nachádzajú úlohy, s ktorými už som mal veľa skúseností. K príprave odporúčam prejsť si tiež niekoľko článkov o písaní exploitov na corelan.be a výborne napísanú knihu „The Hacker Playbook: Practical Guide To Penetration Testing“.

Sufference som dokončil ako predposledný a stačilo mi približne 34 dní k získaniu oprávnenia root/SYSTEM na všetkých počítačoch a sieťach. Ťažko povedať koľko času mi to denne zabralo, ale kompromitácia jedného servera mi trvala približne 0.5-5h, v závislosti od obtiažnosti. Počas tohto času som si priebežne písal report a na konci som odovzdal 244 stranový dokument. Nie z dôvodu, že by som reporty písal rád, ale pretože to je z môjho pohľadu najnudnejšia časť školenia, ktorú som si nechcel nechávať na záver.

Exploitácia väčšinou spočívala v nájdení správneho exploitu a minimálnej modifikácie offsetov alebo playloadu. Stretol som sa s tým, že študenti mali najväčší problém s eskaláciou. Z vlastnej skúsenosti viem, že sa stačilo rozhliadnuť po nainštalovaných balíčkoch, súboroch s citlivými informáciami, alebo verziách jadra na to, aby ste dostali správny nápad a nechali sa ním viesť. Pre mňa bolo najväčšou pridanou hodnotou množstvo počítačov s operačným systémom Windows, kde som sa naučil nové spôsoby eskalácie. Podobne sa mi páčili klientské útoky. Ak zistíte, že niektoré počítače medzi sebou komunikujú, dokážete im posunúť aj váš exploit.

SKÚŠKA

Po tom, čo sa zapíšete na skúšku, dostanete 24 hodín na hacknutie piatich serverov s rôznym bodovým ohodnotením. Minimálny počet bodov, ktorý bolo potrebné dosiahnuť pre zloženie skúšky je 70 bodov. Na začiatku som mal mierne obavy, lebo som nevedel, akú náročnosť očakávať a vybral som si ako prvý server, ktorý sa mi ani po hodine nepodarilo hacknúť. Postupoval som však na ďalšie úlohy a po 6 hodinách vrátane prestávok na jedlo som úspešne kompromitoval 4 servery za 75 bodov. Následne som sa vrátil k prvému serveru a tentokrát už bez ťažkostí získal aj na tomto serveri účet Administrátor, dokončil potrebný report a ráno ho odoslal na vyhodnotenie.

Rád by som spomenul aj môjho kamaráta, ktorý realizoval tento test inak. Po zaplatení labu sa mu podarilo hacknúť 2-3 najjednoduchšie servery a rovno sa zapísal na skúšku. O niekoľko dní sa mu podarilo prejsť skúškou za pár hodín. Je to jeden z možných prístupov, všetko závisí len na tom, koľko si toho chcete z kurzu odniesť.

Osobne si nemyslím, že akýkoľvek certifikát objektívne prezentuje schopnosti človeka a aj napriek svojej reputácii mi pripadal OSCP celkom jednoduchý. Takže ak si ho chcete spraviť, malo by to byť podľa mňa hlavne z dôvodu, že vás baví riešenie podobných „puzzle“, aké nájdete na spomínanom vulnhub-e. Pre mňa bol lab veľmi zábavný a nemyslím, že sa ho oplatí preskočiť. Vzhľadom k popularite kurzu vytvorili dokonca Offensive Security pesničku, ktorú si môžete vypočuť tu.

Nakoľko PWK predstavuje úvodný kurz, trochu mi chýbali náročnejšie výzvy a možnosť ísť viac do hĺbky. Ako príklad, buffer overflow sekcia bola extrémne zjednodušená. Šlo len o to sa naučiť najtriviálnejšie prípady (1996, Smashing The Stack For Fun And Profit), bez akýchkoľvek ochrán a opatrení, kde to žiaľ aj skončilo. V najbližšej dobe začínam s CTP/OSCE, ktorý by mal byť náročnejší a na základe niektorých recenzií aj väčšou výzvou.