Hlavní navigace

Pozor na pokusy s hackováním, můžete porušit zákon

Petr Závodský

Není nic lehčího, než si své znalosti vyzkoušet na nějaké aplikaci – prubnete, zda nějaká zajímavá webovka není děravá. Jen tak, pro pokus. Zkusíte banku, pojišťovnu, zkusíte Washingotn DC, FBI… hrajete si jako malé děti, lezete po vysokých stromech a nevnímáte hrozící nebezpečí. Právní nebezpečí.

Penetrační testeři, vývojáři, analytici, klienti, hackeři … ti, kteří se chtějí podílet na vývoji (či provozu) bezpečných webových aplikací, jsou povahou svého zájmu nuceni pochopit bezpečnostní problém. A to v obecné či případ od případu v konkrétní podobě. Přitom to po právní stránce mají čím dál tím těžší. S příchodem roku 2010 přišel i nový trestní zákoník, který nám např. v oblasti bezpečnostního vzdělávání anebo při penetračním testování může učinit neradostnou čáru přes rozpočet.

Odkaz na nový trestní zákoník

Nás zajímá zvláště:

Část druhá, Hlava II: Trestné činy proti svobodě a právům na ochranu osobnosti, soukromí a listovního tajemství; Díl 2 § 180 – 184 Trestné činy proti právům na ochranu osobnosti, soukromí a listovního tajemství:

  • § 180 Neoprávněné nakládání s osobními údaji

  • § 182 Porušení tajemství dopravovaných zpráv

  • § 183 Porušení tajemství listin a jiných dokumentů uchovávaných v soukromí

Část druhá, Hlava V: Trestné činy proti majetku:

  • § 230 Neoprávněný přístup k počítačovému systému a nosiči informací

  • § 231 Opatření a přechovávání přístupového zařízení a hesla k počítačovému systému a jiných takových dat

  • § 232 Poškození záznamu v počítačovém systému a na nosiči informací a zásah do vybavení počítače z nedbalosti

V případě, že se ve vaší společnosti věnujete např. penetračnímu testování anebo třeba pořádáte workshopy k tématu bezpečnost webových aplikací, zohledněte možné právní dopady takových aktivit. Máte povoleno provádět penetrační testování na dané aplikaci? Jste právně jištěni? Netestujete náhodou na ostrých datech? Kam až může vaše testování zajít? Nemůžete někoho nebo něco poškodit?

Bezpečnostní trenažéry

Osobně si nemyslím, že děti nelezou po stromech. Ale když jsme uvědoměle dospělí, použijme raději přístup, který nás nevystaví případným pádům. Zkoušejme, ukazujme, trénujme na trenažérech. Bude se nám to jistě hodit i ke zkoušení bezpečnostních nedostatků, které si v dalších dílech ukážeme.

Příklady trenažérů bezpečnosti webových aplikací:

Myslete na to, kam aplikace umisťujete! Myslete na důsledky plynoucí z proděravělosti webové aplikace!

WebGoat

Jedním z uvedených trenažérů, na kterém si můžete vyzkoušet projevy některých bezpečnostních děr, je WebGoat, projekt, který realizuje Bruce Mayhew pod OWASP s dalšími „dobrovolníky“.

WebGoat je úmyslně děravá webová J2EE aplikace, která slouží zejména výukovým účelům. WebGoat je rozdělen do několika tematických lekcí. V každé lekci musíte prokázat, že jste pochopili bezpečnostní problém. Máte také možnost si vytvářet své lekce.

Cíle projektu

Málokdo z nás vlastní e-shop nebo online banku, na nichž by si vyzkoušel jejich proděravělost. Navíc, pro naše zkoušení potřebujeme, aby aplikace byla děravá – a to bychom ve své online bance jistě nechtěli. Jste-li penetračními testery, potom navíc často potřebujete prověřit nové testovací postupy či nástroje. Jak jinak – bez možných právních dopadů.

Bruce Mayhew si svým dílem vytyčil hlavní cíl – interaktivní výukové prostředí pro zabezpečení webových aplikací. Tím je WebGoat.

Přehled

Instalace a  spuštění pod Windows

→ Stáhnout aktuální verzi WebGoat (nyní to je WebGoat-OWASP_Standard-5.3.zip)
→ Rozbalit
→ Dvakrát poklikat na webgoat.bat → spustí se Tomcat
→ V prohlížeči zadat http://l­ocalhost/webgo­at/attack
→ Jméno uživatele: guest Heslo: guest
→ Start WebGoat

Změny v uživatelském nastavení (hesla apod.) je možné provádět změnou údajů v souboru tomcat-user.xml (WebGoat-5.3_RC1/tomcat/con­f/tomcat-user.xml), kde nalezneme následující obsah:

<?xml version='1.0' encoding='utf-8'?>
<tomcat-users>
<role rolename="webgoat_basic"/>
<role rolename="tomcat"/>
<role rolename="role1"/>
<role rolename="webgoat_admin"/>
<role rolename="webgoat_user"/>
<user username="tomcat" password="tomcat" roles="tomcat"/>
<user username="both" password="tomcat" roles="tomcat,role1"/>
<user username="webgoat" password="webgoat" roles="webgoat_admin"/>
<user username="basic" password="basic" roles="webgoat_user,webgoat_basic"/>
<user username="guest" password="guest" roles="webgoat_user"/>
<user username="role1" password="tomcat" roles="role1"/>
</tomcat-users>

Rozhraní

Levé menu: Kategorie jednotlivých lekcí. Kliknutím na danou kategorii se zobrazí jednotlivé lekce v dané kategorii.
Hints: Technické rady.
Show Params: Zobrazí parametry HTTP požadavku.
Show Cookies: Zobrazí HTTP požadavky na cookies
Lesson Plan: Popis cílů lekce.
Show Java: Zobrazí základní zdrojový Java kód.
Solutions: Řešení lekce.
Restart this Lesson: Restartování lekce.

Postup absolvování lekcí

Výrobce doporučuje postupovat následovně: 1. Přečíst „Lesson Plan“, 2. Pokusit se lekci vyřešit, 3. V nouzi použít nápovědu ze „Solutions“.

Potřebné doplňující nástroje

Abyste mohli projít všechny lekce, budete vedle aplikace WebGoat potřebovat následující nástroje:

  1. Web-proxy

Přijímá, zpracovává a předává HTTP a HTTPS komunikaci mezi klientem a serverem.

  1. Spider

Spidering slouží k procházení webu a k identifikaci, popř. ke sledování stránek a odkazů v rámci webové aplikace.

Web-proxy i spider jsou obsaženy např. v následujících doporučených nástrojích:

Projektu OWASP WebScarab budu věnovat samostatný díl našeho seriálu.

Další užitečné podpůrné nástroje

Firebug

Plugin pro Firefox, jenž nám umožňuje např. kontrolovat či upravovat HTML, CSS, Javascript.

Stránky projektu

IEWatch

Uživatelé IE jistě ocení tento nástroj pro analýzu HTTP a HTML.

Stránky projektu

LiveHTTPHeaders

Plugin pro Firefox vhodný pro sledování požadavků a odpovědí či analýzu hlaviček.

Stránky projektu

Wireshark

Určen pro sledování a analýzu síťového provozu.

Stránky projektu

Scanner

Scannerů je mnoho. Některé skenují porty, jiné zjišťují náchylnost webové aplikace na tu či onu bezpečnostní chybu (XSS, SQL Injection aj.). Mezi opensourcové skenery patří např.:

Závěr

WebGoat pro svou propracovanost, dostupnost a snadnou modifikovatelnost je vhodným prostředkem pro výuku ve společnostech, kde je bezpečnost webových aplikací brána vážně. WebGoat je možné využít nejen ke vzdělávání, ale také za účelem prověření testovacích metod.

Cílem tohoto dílu bylo v základní úrovni čtenáře seznámit s aplikací WebGoat. Vynechal jsem ukázky z jednotlivých lekcí, vytvoření vlastní lekce a některé další věci – avšak s tímto nástrojem se budeme setkávat v průběhu dalších dílů našeho seriálu v souvislosti s konkrétními útoky, takže bychom neměli o nic zajímavého přijít.

Našli jste v článku chybu?

24. 6. 2010 9:56

Petr Závodský (neregistrovaný)

Ano, měl jsem uvést ještě min. instalaci pro Linux. Uvedu to na pravou míru v některém z dalších dílů.
Instalační příručka: http://www.owasp.org/index.php/WebGoat_Installation
Děkuji za upozornění. Polepším se.



24. 6. 2010 9:23

zdenek (neregistrovaný)

U trestných činů, jež lze spáchat pouze úmyslně (tedy nelze je spáchat nedbalostí), se především zkoumá úmysl – do hlavy vám nikdo nevidí, ale soud se bude zabývat vaším chováním jako celkem (nástroje, příprava, …). To znamená, že když dopředu vykopete hrob v lese, tak potom těžko uspějete s tvrzením, že jste manželku zabil v afektu. A podobné to bude u počítačových zločinů…

Měšec.cz: Zdravotní a sociální pojištění 2017: Připlatíte

Zdravotní a sociální pojištění 2017: Připlatíte

120na80.cz: 5 nejčastějších mýtů o kondomech

5 nejčastějších mýtů o kondomech

Vitalia.cz: Vychytané vály a válečky na vánoční cukroví

Vychytané vály a válečky na vánoční cukroví

Vitalia.cz: Proč vás každý zubař posílá na dentální hygienu

Proč vás každý zubař posílá na dentální hygienu

DigiZone.cz: ČRo rozšiřuje DAB do Berouna

ČRo rozšiřuje DAB do Berouna

Vitalia.cz: Jsou čajové sáčky toxické?

Jsou čajové sáčky toxické?

Podnikatel.cz: Podnikatelům dorazí varování od BSA

Podnikatelům dorazí varování od BSA

Vitalia.cz: Potvrzeno: Pobyt v lese je skvělý na imunitu

Potvrzeno: Pobyt v lese je skvělý na imunitu

Podnikatel.cz: Chaos u EET pokračuje. Jsou tu další návrhy

Chaos u EET pokračuje. Jsou tu další návrhy

DigiZone.cz: Recenze Westworld: zavraždit a...

Recenze Westworld: zavraždit a...

Vitalia.cz: Paštiky plné masa ho zatím neuživí

Paštiky plné masa ho zatím neuživí

Podnikatel.cz: Snížení DPH na 15 % se netýká všech

Snížení DPH na 15 % se netýká všech

DigiZone.cz: Flix TV: dva set-top boxy za korunu

Flix TV: dva set-top boxy za korunu

Měšec.cz: U levneELEKTRO.cz už reklamaci nevyřídíte

U levneELEKTRO.cz už reklamaci nevyřídíte

Vitalia.cz: Když přijdete o oko, přijdete na rok o řidičák

Když přijdete o oko, přijdete na rok o řidičák

Vitalia.cz: Jmenuje se Janina a žije bez cukru

Jmenuje se Janina a žije bez cukru

Podnikatel.cz: K EET. Štamgast už peníze na stole nenechá

K EET. Štamgast už peníze na stole nenechá

Podnikatel.cz: Udávání a účtenková loterie, hloupá komedie

Udávání a účtenková loterie, hloupá komedie

Lupa.cz: Proč firmy málo chrání data? Chovají se logicky

Proč firmy málo chrání data? Chovají se logicky

Lupa.cz: Co se dá měřit přes Internet věcí

Co se dá měřit přes Internet věcí