H3 Tunkeutumistestaus

 

Johdanto

Älä käytä raportissa kuvailtuja menetelmiä tai ohjelmia jos et tiedä mitä ne tekevät. Väärinkäytöllä saatat rikkoa lakia.

Tein Webgoat tehtävät AJAX security XML injection, JSON injection ja Silent transaction attacks

Käyttöjärjestelmänä oli Kali Xfce 2019.1a 64 bit

Tarvittavat ohjelmat mitmproxy, docker ja selain.

Kurssi:

http://terokarvinen.com/2019/penetration-testing-tunkeutumistestaus-ict4tn027-3004-intensive-summer-course-2019-w21w22-5-credits

 

XML injection

Ensin laitoin yhteyden sieppauksen päälle mitmproxylla painamalla i ja lisäämällä sanan attack joka esiintyy webgoat tehtävän URLissa jotta vain tietty liikenne pysäytetään.

mitmintercept.png

Sitten laitoin tehtävässä annetun IDn ID kenttään ja painoin submit nappulaa

xmlsubmit.png

Mitmproxy sieppasi yhteyden

mitmintercept2.png

Sitten menin katsomaan mitä liikenteessä kulki

mitmintercept3.png

Siellä ei näkynyt vielä mitään joten painoin liikenteen kulkemaan yhden askeleen eteenpäin painamalla a

Nyt siellä näkyi xml johon halusin lisätä tietoja.

Tietoja lisäsin painamalla ensin e eli edit jonka jälkeen painoin a joka valitsi editoitavaksi response-body:n

mitmintercept4.png

Sitten teksti editori aukesi, tässä tapauksessa nano. Sinne lisäsin puuttuvat palkinnot.

<reward>WebGoat Core Duo Laptop 2000 Pts</reward>

<reward>WebGoat Hawaii Cruise 3000 Pts</reward>

mitmnano.png

Sitten tallensin sen ja painoin jälleen a nappia jotta liikenne kulkisi askeleen eteenpäin.
Laitoin interceptin pois päältä painamalla i ja poistamalla attack sanan. Sitten sivulla piti valita palkinnot ja painaa submit.

webgoatpalkinnot.png

Tehtävä oli nyt valmis.

congratulationsXML.png

JSON injection

Tehtävässä piti hankkia lentolippu halvemmalla kun sen oikea hinta. Laitoin interceptin samalla attack parametrillä päälle.

Sitten lisäsin tarvittavat tiedot lomakkeeseen ja painoin submit.

JSONinjection1.png

mitmproxy sieppasi liikenteen.

mitmint1.png

Sitten menin taas tutkailemaan siepattua liikennettä. Piti taas painaa 1 kerran a että tulisi mitään dataa näkyviin.

mitmint2.png

Lisäsin tarvittavat tiedot painamalla e ja sitten a jotta oikea asia tulisi editoitavaksi.

Muutin kalliimman lennon hinnan $10 joka oli ennen siis $600.

JSONinjectionNANO.png

Tallensin sen ja laitoin liikenteen taas askeleen eteenpäin painamalla a.
Laitoin interceptin pois taas tässä vaiheessa painamalla i ja poistamalla attack sanan.
Nyt tehtävässä piti valita lento jota juuri muutin ja painaa submit.

json10dolar.png

Sitten tehtävä oli tehty.

lentoCONGRATS.png

 

Silent Transaction Attacks

Tehtävässä tehtiin pankkitransaktio ilman että syöttää tietoja määrästä ja tilistä lomakkeeseen. Lesson planin mukaan se pitäisi toimia syöttämällä URLiin suoraan javascriptiä.

STA1.png

Eli tehtävän koodissa on funktio submitData(accountNo, balance) jolla voi ohittaa käyttäjän puolen validoinnin koska se ei tarkasta tulevatko tiedot lomakkeesta tai jotain sinnepäin.

Kokeilin ensin laittaa funktiota

submitData(12345,11987);

suoraan selaimen osoite palkkiin. Mutta se teki vaan google haun.

Sitten etsin googlesta miten ajetaan javascriptiä osoite palkissa.

https://stackoverflow.com/questions/4163879/call-javascript-function-from-url-address-barStackoverflowista

Stack overflowista löytyi siihen apua, js funktion eteen piti laittaa javascript: jotta selain ymmärtää sen.

Ajoin osoite palkissa

javascript:submitData(12345,11987);

ja se toimi.

gratsSTA.png

 

Lähteet

Kurssin kotisivut:

http://terokarvinen.com/2019/penetration-testing-tunkeutumistestaus-ict4tn027-3004-intensive-summer-course-2019-w21w22-5-credits

js selaimen osoite palkissa:

https://stackoverflow.com/questions/4163879/call-javascript-function-from-url-address-barStackoverflowista

Kali etusivu:

https://www.kali.org/

 

Advertisements