WebGoat: Difference between revisions

From ICO wiki
Jump to navigationJump to search
Teraudse (talk | contribs)
Teraudse (talk | contribs)
 
(29 intermediate revisions by the same user not shown)
Line 3: Line 3:
==Info staatus==
==Info staatus==


Pooleli.
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 program on loodud selleks, et tuvustada ning aidata õppida veebi aplikatsioonide turvalisust. Programm on J2EE baasil loodud ning töötab platvormist sõltumata.
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 is a deliberately insecure J2EE web application designed to teach web application security concepts
 
Details
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==


WebGoat paigaldamise ja programmiga käivad kaasas järgnevad programmid:<br>
WebGoat paigaldamiseks on vaja järgnevaid programme:<br>
-p7Zip<br>
-p7Zip<br>
-Java -bin ja -jdk<br>
-Java -bin ja -jdk<br>


==Installeerimise juhend VMWare 1.0.10. + Ubuntu 9.10 näitel==
 
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 [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) <!--(sun-java6-bin sun-java6-jdk sun-java6-jre)-->
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># apt-get install p7zip</pre>
<pre> apt-get install p7zip</pre>


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.
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
wget http://webgoat.googlecode.com/files/WebGoat-OWASP_Standard-5.3_RC1.7z
# /usr/bin/p7zip -d 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
mv WebGoat-5.3_RC1/ /usr/local
# cd /usr/local/WebGoat-5.3_RC1/
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 faiist ning muuta "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
cp webgoat.sh webgoat.sh.orig
# chmod +x webgoat.sh
chmod +x webgoat.sh
# nano webgoat.sh
nano webgoat.sh
</PRE>
</PRE>




Lisada faili peale rida mis sisaldab "CATALINA_HOME" rida "export JAVA_HOME=/usr/lib/jvm/java-6-sun". Samuti kontrollida Java versiooni järgnevatel ridadel.
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
cd /tmp
# wget http://dawes.za.net/rogan/webscarab/webscarab-current.zip
wget http://dawes.za.net/rogan/webscarab/webscarab-current.zip
# unzip webscarab-current.zip
unzip webscarab-current.zip
# mv webscarab-* /usr/local/webscarab
mkdir -p /usr/local/webscarab
mv webscarab-* /usr/local/webscarab
</pre>
</pre>


Võb kasutada installeerimiseks ka seda scripti kuni java muudatuste tegemiseni : [http://enos.itcollege.ee/~teraudse/Webcoat_install.sh IEtapp]
Võb kasutada installeerimiseks ka seda scripti kuni Webcoat.sh-s java muudatuste tegemiseni : [http://enos.itcollege.ee/~teraudse/Webcoat_install.sh I_Etapp]
Ja teine osa [http://enos.itcollege.ee/~teraudse/WebGoat_2.sh II_Etapp]
Ja teine osa [http://enos.itcollege.ee/~teraudse/WebGoat_2.sh II_Etapp]


<!--
 
Et oleks lihtsam  lisas Firefoxi brauserile "FoxiProxy" aplikatsiooni, Firefoxi pluginate leheküljelt.
Et oleks lihtsam  lisa Firefoxi brauserile "FoxyProxy" aplikatsiooni, Firefoxi pluginate leheküljelt.


Peale plugina installatsiooni ja firefoxi taaskäivitamist seadistab FireProxi järgnevalt.
Peale plugina installatsiooni ja firefoxi taaskäivitamist seadistab FireProxi järgnevalt.


----


Click on FoxyProxy icon in lower right and select Add New Proxy. The FireProxy window should appear.  
Firefoxi all nurgas tekkinud FoxyProxy ikoonil klik. Avanenud FireProxy aknas tee järgnevad muudatused.
On the General tab, under Proxy Name enter "WebScarab".
 
On the Proxy Details tab, select Manual Proxy Configuration.
General tab>Proxy Name>"WebScarab".
For Host or IP Address enter "127.0.0.1"
Proxy Details>Manual Proxy Configuration.
For Port enter "8008"
"Host or IP Address"> "127.0.0.1"
On the URL Patterns tab select Add New Pattern
Port:"8008"
For Pattern Name enter "WebGoat"
URL Patterns tab valikus vali "Add New Pattern"
For Pattern URL enter "http://*127.0.0.1/WebGoat/*" (The first "*" here matches the "guest:guest" string for authentication.)
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.


Click OK
Close Proxy Settings
Under Mode select Use proxies based on their pre-defined patterns and priorites.
Close FoxyProxy Options
-->


Nüüd on paras aeg käivitada vajalikud teenused WebGoatis toimetamisks.
Nüüd on paras aeg käivitada vajalikud teenused WebGoatis toimetamisks.
Line 87: 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># java -jar /usr/local/webscarab/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 96: Line 121:


Käivitamisel on kaks võialust
Käivitamisel on kaks võialust
* käivitada pordis 80 webgoat (start80)
* käivitada pordis 80:> # webgoat <start80>
* käivitada pordis 8080 webgoat (start8080)
* 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
cd /usr/local/WebGoat-5.3_RC1
# ./webgoat.sh start80
./webgoat.sh start80
 
</pre>
või
või
 
<pre>
# ./webgoat.sh start8080
./webgoat.sh start8080
</Pre>
</Pre>


Töö lõpetamiseks käsk
Töö lõpetamiseks käsk


<pre> # ./webgoat stop</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.


NB! link on tõusutundlik ning seega tähelepanelikult jälgida, et õgesti oleks address sisestatud!


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:Webgoatlogin.png |350px]]
[[Image:Webgoat.png]]


----
----
NB! Juhin teie tähelepanu ka hoiatusele, et programmi töö ajal on teie arvuti kaitse nõrgndatud ning teie arvuti on ohustatud.


WARNING
WARNING
Line 133: 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/OWASP_WebGoat_ProjectOWASP WebGoat]<br>
[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õlkke 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>
[http://www.owasp.org/index.php/Main_Page OWASP koduleht.]<br>
[http://www.owasp.org/index.php/Main_Page OWASP koduleht.]<br>
[http://www.howtogeek.com/howto/linux/installing-tomcat-6-on-ubuntu/ Tomcati install]


[[Category:Operatsioonisüsteemide administreerimine ja sidumine]]
[[Category:Operatsioonisüsteemide administreerimine ja sidumine]]

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.