WebGoat: Difference between revisions

From ICO wiki
Jump to navigationJump to search
Teraudse (talk | contribs)
Teraudse (talk | contribs)
 
(43 intermediate revisions by the same user not shown)
Line 1: Line 1:
Autor: Teet Raudsep, AK32
Autor: Teet Raudsep, AK31


==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]
WebGoat is a deliberately insecure J2EE web application designed to teach web application security concepts
 
Details
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==


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)
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) Kontrollib kas pakkimis rpgramm 7Zip on installeeritud kui ei ole siis paigaldab.
2) Webgoati lahti pakkimiseks on vaja programmi p7Zip. Kui on installeerimata siis paigaldab kõige pealt selle
<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.
<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 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]
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
<pre> java -jar /usr/local/webscarab/webscarab-20100414-0036/webscarab.jar</pre>
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.  
Now, to make it easy to use WebScarab from FireFox, I installed FoxyProxy into FireFox. Visit the FoxyProxy web page, install it and restart FireFox.


When FireFox starts back up, configure FireProxy as follows:
<pre>
cd /usr/local/WebGoat-5.3_RC1
./webgoat.sh start80
</pre>
või
<pre>
./webgoat.sh start8080
</Pre>


Click on FoxyProxy icon in lower right and select Add New Proxy. The FireProxy window should appear.
Töö lõpetamiseks käsk
On the General tab, under Proxy Name enter "WebScarab".
On the Proxy Details tab, select Manual Proxy Configuration.
For Host or IP Address enter "127.0.0.1"
For Port enter "8008"
On the URL Patterns tab select Add New Pattern
For Pattern Name enter "WebGoat"
For Pattern URL enter "http://*127.0.0.1/WebGoat/*" (The first "*" here matches the "guest:guest" string for authentication.)


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


Now you probably want to open a couple of terminal windows (or tabs) one for WebScarab and one for WebGoat. In the first window fire up WebScarab:
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.


# java -jar /usr/local/webscarab/webscarab.jar


You should see a WebScarab window open after a moment.
''' NB!'''
link on tõusutundlik ning seega tuleb tähelepanelikult jälgida, et õgesti oleks address sisestatud!


Then, in the other window, fire up WebGoat:
http://guest:guest@127.0.0.1/webgoat/attack 
või


# cd /usr/local/WebGoat-5.2
http://guest:guest@127.0.0.1:8080/webgoat/attack
# ./webgoat.sh start80


WebGoat will churn for a little bit, but then you should eventually see a message like "INFO: Server startup in 3546 ms". At this point you are ready to go by pointing your browser at http://guest:guest@127.0.0.1/WebGoat/attack
Edasi on sul võimalus hakata õppima kuidas häkitakse veebilehti ning kuidas kaitsta ennast nende vastu.


At this point you should see not only WebGoat appear in your browser, but WebScarab should start displaying bunch of requests. Click on the image at the top of this post for what things should look like.
[[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
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==
==Kastutatud materjal==


[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.