WebGoat: Difference between revisions
(18 intermediate revisions by the same user not shown) | |||
Line 3: | Line 3: | ||
==Info staatus== | ==Info staatus== | ||
Versioon 1. 05.05.2010 <br> | |||
Versioon 2. 09.05.2010 | |||
==Antud Wiki töö eesmärk.== | |||
Antud töö koostamisel on eesmärgiks võetud teha esmane tutvus programmi WebGoat paigaldamisega ning selle programmi poolt pakutavate võimalustega. | |||
==WebGoat tutvustus== | ==WebGoat tutvustus== | ||
WebGoat | WebGoat programm on vabavaraline veebi lehtede loomisel oluliste turvalisuse aspektide õppe program. Programm ise töötab J2EE baasil ning töötab platvormist sõltumata. | ||
Programmiga kaasas on valik õpptükke ning iga üks saab lihtsate vahenditega lisad enda tehtud õppetükke. Samuti on olemas teiste poolt loodud materjale. | |||
Valiku kaasa saadaavate õppetükkide nimekirjaga leiab OWASP lehelt. [http://www.owasp.org/index.php/Lesson_Plans OWASP_oppeplaan] | |||
Programm on kahe osaline: | |||
WebGoat standard -- Olemasolevate ülesannete lahendamiseks mõeldud osa.<br> | |||
WebGoat Developer -- Uute ülesannete koostamiseks. | |||
Näite lahenduste kohta videosid saab vaadata järgnevalt lehelt: http://yehg.net/lab/pr0js/training/webgoat.php | |||
Järgnev installeerimise juhend on WebGoat standari jaoks. | |||
==Eelinfo== | ==Eelinfo== | ||
Line 18: | Line 36: | ||
Paigaldamine võtab aega 30min-1h. | Paigaldamine võtab aega 30min-1h. | ||
==Installeerimise juhend VMWare 1.0.10. + Ubuntu 9.10 näitel== | ===Kasutamiseks soovitavad teadmised.=== | ||
Programmi õppetükkide lahendamiseks on soovitavad eelteadmised W3, java, php, jt standarditest. | |||
==Installeerimise juhend VMWare 1.0.10. + Ubuntu 9.10 + WebGoat standard näitel== | |||
Installeerimiseks juhendun [http://vwelch.blogspot.com/2009/04/creating-owasp-webgoat-ubuntu-based-vm.html leheküljel] läbi proovitud materjale. | Installeerimiseks juhendun [http://vwelch.blogspot.com/2009/04/creating-owasp-webgoat-ubuntu-based-vm.html leheküljel] läbi proovitud materjale. | ||
Käsureal toimetades alustame paigaldust:<br> | Käsureal toimetades alustame paigaldust:<br> | ||
1) Paigaldan Java (sun-java6-bin, sun-java6-jdk) | 1) Paigaldan Java (sun-java6-bin, sun-java6-jdk) | ||
<pre># apt-get-install sun-java6-bin sun-java6-jdk</pre> | <pre># apt-get-install sun-java6-bin sun-java6-jdk</pre> | ||
2) Webgoati lahti pakkimiseks on vaja programmi p7Zip. Kui on installeerimata siis paigaldab kõige pealt selle | 2) Webgoati lahti pakkimiseks on vaja programmi p7Zip. Kui on installeerimata siis paigaldab kõige pealt selle | ||
<pre> | <pre> apt-get install p7zip</pre> | ||
3) Laeb alla WebGoati programmi ning pakib lahti ja tõstab /usr/local/ kausta. NB | 3) Laeb alla WebGoati programmi ning pakib lahti ja tõstab /usr/local/ kausta. NB jälgida teie poolt tegelikult allatõmmtavat versiooni ning lahtipakkimisel loodava kausta nimetust. | ||
<pre> | <pre> | ||
wget http://webgoat.googlecode.com/files/WebGoat-OWASP_Standard-5.3_RC1.7z | |||
/usr/bin/p7zip -d WebGoat-OWASP_Standard-5.3_RC1.7z | |||
mv WebGoat-5.3_RC1/ /usr/local | |||
cd /usr/local/WebGoat-5.3_RC1/ | |||
</pre> | </pre> | ||
4) Nüüd on vaja viia vastavusse "webgoat.sh" faili sisu sinu süsteemiga ja teeb enne muudatuste tegemist varukoopia konfiguratsiooni failist ning muudab "webgoat.sh" fali õigusi. | 4) Nüüd on vaja viia vastavusse "webgoat.sh" faili sisu sinu süsteemiga ja teeb enne muudatuste tegemist varukoopia konfiguratsiooni failist ning muudab "webgoat.sh" fali õigusi. | ||
<PRE> | <PRE> | ||
cp webgoat.sh webgoat.sh.orig | |||
chmod +x webgoat.sh | |||
nano webgoat.sh | |||
</PRE> | </PRE> | ||
Lisada | Lisada failis peale rida mis sisaldab "CATALINA_HOME" rida "export JAVA_HOME=/usr/lib/jvm/java-6-sun". Samuti kontrollida Java versiooni järgnevatel ridadel. | ||
Järgnevaks installeerime WebScrapi, mis kujutab endast proxit mida on vaja WebCoati tundideks. Lae alla ja installeeri järgnevalt. | Järgnevaks installeerime WebScrapi, mis kujutab endast proxit mida on vaja WebCoati tundideks. Lae alla ja installeeri järgnevalt. | ||
<pre> | <pre> | ||
cd /tmp | |||
wget http://dawes.za.net/rogan/webscarab/webscarab-current.zip | |||
unzip webscarab-current.zip | |||
mkdir -p /usr/local/webscarab | |||
mv webscarab-* /usr/local/webscarab | |||
</pre> | </pre> | ||
Line 67: | Line 89: | ||
Firefoxi all nurgas tekkinud FoxyProxy ikoonil klik. Avanenud FireProxy aknas tee järgnevad muudatused | Firefoxi all nurgas tekkinud FoxyProxy ikoonil klik. Avanenud FireProxy aknas tee järgnevad muudatused. | ||
General tab>Proxy Name>"WebScarab". | |||
Host or IP Address | Proxy Details>Manual Proxy Configuration. | ||
"Host or IP Address"> "127.0.0.1" | |||
Port:"8008" | Port:"8008" | ||
URL Patterns tab valikus vali Add New Pattern | URL Patterns tab valikus vali "Add New Pattern" | ||
Valikusse Pattern Name sisesta "WebGoat" | Valikusse "Pattern Name" sisesta "WebGoat" | ||
Pattern URL valikus sisesta "http://*127.0.0.1/ | Pattern URL valikus sisesta "http://*127.0.0.1/webgoat/*" (Esimene "*" lubab valiku "guest:guest" kasutamist autentimiseks.) | ||
Et kasutada porti 8080 on soovitav lisade veel üks rida Pattern URL valikusse: | |||
"http://*127.0.0.1:8080/webgoat/* | |||
Vali OK | Vali OK | ||
Sulge Proxy Settings | Sulge Proxy Settings | ||
Valikus Mode vali "Use proxies based on their pre-defined patterns and priorites". | |||
Sulge FoxyProxy Options. | |||
Line 86: | Line 111: | ||
Mõtekas on avada lisa "TAB"-id terminalis ja nendesse SUDO-na sisestada esimesse | Mõtekas on avada lisa "TAB"-id terminalis ja nendesse SUDO-na sisestada esimesse | ||
WebScarab-i käivitamiseks (jälgi tegliku webscrabi katalogi adressi): | WebScarab-i käivitamiseks (jälgi tegliku webscrabi katalogi adressi): | ||
java -jar </usr/local/webscarab/webscarab-20100414-0036/>webscarab.jar | |||
<pre> | <pre> java -jar /usr/local/webscarab/webscarab-20100414-0036/webscarab.jar</pre> | ||
Ning mõne hetke pärast avaneb Webscrab aken. | Ning mõne hetke pärast avaneb Webscrab aken. | ||
Line 95: | Line 121: | ||
Käivitamisel on kaks võialust | Käivitamisel on kaks võialust | ||
* käivitada pordis 80 webgoat | * käivitada pordis 80:> # webgoat <start80> | ||
* käivitada pordis 8080 webgoat | * käivitada pordis 8080:> # webgoat <start8080> | ||
Kui kasutatakse teist võimalust siis tuleb brauseris ka pordi number ära näidata ligipääsuks. | Kui kasutatakse teist võimalust siis tuleb brauseris ka pordi number ära näidata ligipääsuks. | ||
<pre> | <pre> | ||
cd /usr/local/WebGoat-5.3_RC1 | |||
./webgoat.sh start80 | |||
</pre> | |||
või | või | ||
<pre> | |||
./webgoat.sh start8080 | |||
</Pre> | </Pre> | ||
Töö lõpetamiseks käsk | Töö lõpetamiseks käsk | ||
<pre> | <pre> ./webgoat stop</pre> | ||
WebGoat on valmis kui terminali aknasse tekkib viimaseks reaks midagi sarnast: "INFO: Server startup in 3546 ms" | WebGoat on valmis kui terminali aknasse tekkib viimaseks reaks midagi sarnast: "INFO: Server startup in 3546 ms" | ||
Peale seda hetke on programm valmis käivitamiseks veebi brauseri aknas. | Peale seda hetke on programm valmis käivitamiseks veebi brauseri aknas. | ||
http://guest:guest@127.0.0.1/webgoat/attack | ''' NB!''' | ||
link on tõusutundlik ning seega tuleb tähelepanelikult jälgida, et õgesti oleks address sisestatud! | |||
http://guest:guest@127.0.0.1/webgoat/attack | |||
või | |||
http://guest:guest@127.0.0.1:8080/webgoat/attack | |||
Edasi on sul võimalus hakata õppima kuidas häkitakse veebilehti ning kuidas kaitsta ennast nende vastu. | Edasi on sul võimalus hakata õppima kuidas häkitakse veebilehti ning kuidas kaitsta ennast nende vastu. | ||
[[Image | [[Image:Webgoatlogin.png |350px]] | ||
[[Image:Webgoat.png]] | [[Image:Webgoat.png]] | ||
Line 128: | Line 159: | ||
NB! Juhin teie tähelepanu ka hoiatusele, et programmi töö ajal on teie arvuti kaitse nõrgndatud ning teie arvuti on ohustatud. | NB! Juhin teie tähelepanu ka hoiatusele, et programmi töö ajal on teie arvuti kaitse nõrgndatud ning teie arvuti on ohustatud. | ||
Line 138: | Line 170: | ||
[http://code.google.com/p/webgoat/ Google WebCoat projekti leht]<br> | [http://code.google.com/p/webgoat/ Google WebCoat projekti leht]<br> | ||
[http://www.owasp.org/index.php/ | [http://www.owasp.org/index.php/Category:OWASP_WebGoat_Project OWASP_WebGoat]<br> | ||
[http://vwelch.blogspot.com/2009/04/creating-owasp-webgoat-ubuntu-based-vm.html Tõlke aluseks võetud VM installeerimise juhend]<br> | [http://vwelch.blogspot.com/2009/04/creating-owasp-webgoat-ubuntu-based-vm.html Tõlke aluseks võetud VM installeerimise juhend]<br> |
Latest revision as of 09:48, 9 May 2010
Autor: Teet Raudsep, AK31
Info staatus
Versioon 1. 05.05.2010
Versioon 2. 09.05.2010
Antud Wiki töö eesmärk.
Antud töö koostamisel on eesmärgiks võetud teha esmane tutvus programmi WebGoat paigaldamisega ning selle programmi poolt pakutavate võimalustega.
WebGoat tutvustus
WebGoat programm on vabavaraline veebi lehtede loomisel oluliste turvalisuse aspektide õppe program. Programm ise töötab J2EE baasil ning töötab platvormist sõltumata.
Programmiga kaasas on valik õpptükke ning iga üks saab lihtsate vahenditega lisad enda tehtud õppetükke. Samuti on olemas teiste poolt loodud materjale.
Valiku kaasa saadaavate õppetükkide nimekirjaga leiab OWASP lehelt. OWASP_oppeplaan
Programm on kahe osaline:
WebGoat standard -- Olemasolevate ülesannete lahendamiseks mõeldud osa.
WebGoat Developer -- Uute ülesannete koostamiseks.
Näite lahenduste kohta videosid saab vaadata järgnevalt lehelt: http://yehg.net/lab/pr0js/training/webgoat.php
Järgnev installeerimise juhend on WebGoat standari jaoks.
Eelinfo
WebGoat paigaldamiseks on vaja järgnevaid programme:
-p7Zip
-Java -bin ja -jdk
Paigaldamine võtab aega 30min-1h.
Kasutamiseks soovitavad teadmised.
Programmi õppetükkide lahendamiseks on soovitavad eelteadmised W3, java, php, jt standarditest.
Installeerimise juhend VMWare 1.0.10. + Ubuntu 9.10 + WebGoat standard näitel
Installeerimiseks juhendun leheküljel läbi proovitud materjale.
Käsureal toimetades alustame paigaldust:
1) Paigaldan Java (sun-java6-bin, sun-java6-jdk)
# apt-get-install sun-java6-bin sun-java6-jdk
2) Webgoati lahti pakkimiseks on vaja programmi p7Zip. Kui on installeerimata siis paigaldab kõige pealt selle
apt-get install p7zip
3) Laeb alla WebGoati programmi ning pakib lahti ja tõstab /usr/local/ kausta. NB jälgida teie poolt tegelikult allatõmmtavat versiooni ning lahtipakkimisel loodava kausta nimetust.
wget http://webgoat.googlecode.com/files/WebGoat-OWASP_Standard-5.3_RC1.7z /usr/bin/p7zip -d WebGoat-OWASP_Standard-5.3_RC1.7z mv WebGoat-5.3_RC1/ /usr/local cd /usr/local/WebGoat-5.3_RC1/
4) Nüüd on vaja viia vastavusse "webgoat.sh" faili sisu sinu süsteemiga ja teeb enne muudatuste tegemist varukoopia konfiguratsiooni failist ning muudab "webgoat.sh" fali õigusi.
cp webgoat.sh webgoat.sh.orig chmod +x webgoat.sh nano webgoat.sh
Lisada failis peale rida mis sisaldab "CATALINA_HOME" rida "export JAVA_HOME=/usr/lib/jvm/java-6-sun". Samuti kontrollida Java versiooni järgnevatel ridadel.
Järgnevaks installeerime WebScrapi, mis kujutab endast proxit mida on vaja WebCoati tundideks. Lae alla ja installeeri järgnevalt.
cd /tmp wget http://dawes.za.net/rogan/webscarab/webscarab-current.zip unzip webscarab-current.zip mkdir -p /usr/local/webscarab mv webscarab-* /usr/local/webscarab
Võb kasutada installeerimiseks ka seda scripti kuni Webcoat.sh-s java muudatuste tegemiseni : I_Etapp Ja teine osa II_Etapp
Et oleks lihtsam lisa Firefoxi brauserile "FoxyProxy" aplikatsiooni, Firefoxi pluginate leheküljelt.
Peale plugina installatsiooni ja firefoxi taaskäivitamist seadistab FireProxi järgnevalt.
Firefoxi all nurgas tekkinud FoxyProxy ikoonil klik. Avanenud FireProxy aknas tee järgnevad muudatused.
General tab>Proxy Name>"WebScarab". Proxy Details>Manual Proxy Configuration. "Host or IP Address"> "127.0.0.1" Port:"8008" URL Patterns tab valikus vali "Add New Pattern" Valikusse "Pattern Name" sisesta "WebGoat" Pattern URL valikus sisesta "http://*127.0.0.1/webgoat/*" (Esimene "*" lubab valiku "guest:guest" kasutamist autentimiseks.) Et kasutada porti 8080 on soovitav lisade veel üks rida Pattern URL valikusse: "http://*127.0.0.1:8080/webgoat/*
Vali OK Sulge Proxy Settings Valikus Mode vali "Use proxies based on their pre-defined patterns and priorites". Sulge FoxyProxy Options.
Nüüd on paras aeg käivitada vajalikud teenused WebGoatis toimetamisks.
Mõtekas on avada lisa "TAB"-id terminalis ja nendesse SUDO-na sisestada esimesse WebScarab-i käivitamiseks (jälgi tegliku webscrabi katalogi adressi): java -jar </usr/local/webscarab/webscarab-20100414-0036/>webscarab.jar
java -jar /usr/local/webscarab/webscarab-20100414-0036/webscarab.jar
Ning mõne hetke pärast avaneb Webscrab aken.
Teises aknas käivita WebGoat:
Käivitamisel on kaks võialust
- käivitada pordis 80:> # webgoat <start80>
- käivitada pordis 8080:> # webgoat <start8080>
Kui kasutatakse teist võimalust siis tuleb brauseris ka pordi number ära näidata ligipääsuks.
cd /usr/local/WebGoat-5.3_RC1 ./webgoat.sh start80
või
./webgoat.sh start8080
Töö lõpetamiseks käsk
./webgoat stop
WebGoat on valmis kui terminali aknasse tekkib viimaseks reaks midagi sarnast: "INFO: Server startup in 3546 ms" Peale seda hetke on programm valmis käivitamiseks veebi brauseri aknas.
NB!
link on tõusutundlik ning seega tuleb tähelepanelikult jälgida, et õgesti oleks address sisestatud!
http://guest:guest@127.0.0.1/webgoat/attack või
http://guest:guest@127.0.0.1:8080/webgoat/attack
Edasi on sul võimalus hakata õppima kuidas häkitakse veebilehti ning kuidas kaitsta ennast nende vastu.
NB! Juhin teie tähelepanu ka hoiatusele, et programmi töö ajal on teie arvuti kaitse nõrgndatud ning teie arvuti on ohustatud.
WARNING While running this program, your machine is extremely vulnerable to attack if you are not running on localhost. If tou are NOT running on localhost (default configuration), You should disconnect from the network while using this program.
This program is for educational purposes only. Use of these techniques without permission could lead to job termination, financial liability, and/or criminal penalties.
Kastutatud materjal
Google WebCoat projekti leht
OWASP_WebGoat
Tõlke aluseks võetud VM installeerimise juhend
OWASP koduleht.