1. WebGoat

Tero Karvisen kevään 2020 tunkeutumistestauskurssi alkoi WebGoat-harjoituksilla. Itsenäisen työskentelyn tehtävänanto:

Ratkaise WebGoatista 5-10 tehtävää lisää. (Hyppää yli niistä, jotka eivät toimi tässä versiossa, esim “Developer version only” tai tuki haavoittuvuus muokkaamalla WebGoatin sorsia).

Onnistuneen WebGoat-asennuksen ja kirjautumisen jälkeinen näkymä

Stage 1: Bypass Business Layer Access Control

Käytin Inspect element-toimintoa ViewProfile-painikkeessa ja muutin value=ViewProfile -> DeleteProfile. Painoin painiketta ja tehtävä oli suoritettu.

Stage 3: Breaking Data Layer Access Control.

Tutkin Inspect-toiminnolla tunnuslistaa ja employee id-arvoja. Tarvitsin managerin oikeudet joten poimin employee-id-listasta arvon 107, joka kuului David Giambille.

Kirjauduin käyttäjälle Tom Cat salasanalla tom. Muutin Tomin employee id:n arvoksi 107, joka antoi manageri-statuksen. Painoin ViewProfile ja tehtävä suoritettu.

LAB: Client Side Filtering

Tavoitteena selvittää toimitusjohtajan piilotettu palkka. Tutkin koodia ja löysin ilmeisen taulun “hiddenEmployeeRecords”, josta löytyi “piilotettuja” id-arvoja. Yksi näistä kuului itse toimitusjohtajalle, jonka palkka-luku näkyy kuvassa. Tehtävään kuului myös toinen vaihe, johon tarvitsee Firebug-ohjelmaa. Jätin toiseen vaiheen toistaiseksi tekemättä.

DOM Injection

Tehtävänä ohittaa Activate-painike, joka estää pääsyn. Poistin koodista disabled=””-rivin ja painoin Activate. Tehtävä suoritettu.

XML Injection

Lisää palkintolistaasi loput palkinnot saataviksi.

Muokkasin taulun koodia, jossa listattiin saadut palkinnot. Kopioin ja monistin palkintojen koodirivit ja lisäsin loput palkinnot listan jatkoksi. Painoin submit ja tehtävä suoritettu.

JSON Injection

Muokkaa kalliimmasta $600 lennosta halvempi.

Etsin priceID:n koodista ja muutin arvoksi 300. Submit ja tehtävä suoritettu.

Kuuntele jokin murto Darknet Diaries -podcastista. Analysoi tätä murtoa Cyber Kill Chain (Hutchins et al 2011) ja Mitre ATT&CK -mallien avulla. Kirjoita siten, että analyysisi auttaa käytännön hyökkäyksissä.

Kuuntelin Darknet Podcastin EP 55: NoirNet.

Jakso kertoo tunkeutumistestaajasta, joka palkataan murtotestauskeikalle joulupyhien aikaan, kun tietoturvatasot ovat oletettavasti suhteellisen alhaalla. Tämän opetus tietoturvahenkilöille on, että turvatasoa täytyy pitää tasaisesti yllä riippumatta ajasta, paikasta tai sesongista. Hakkerit ja murtautujat voivat tarkoituksellisesti ajoittaa hyökkäyksensä, kun töissä on oletettavasti vähemmän ihmisiä.

Murtotestaaja kertoo klassisiksi menetelmiksi tunnuslätkien väärentämisen. Ihmiset kantavat tunnuksiaan epäsäännöllisesti ja epämääräisesti ja jos hymyilee nätisti, ihmiset saattavat avata ovia jokatapauksessa. Usein murto tapahtuu arkisissa tilanteissa jokapäiväisessä ympäristössä. Valtuudet tulisi aina tarkistaa systemaattisesti varsinkin, kun kyseessä on pääsy kriittisiin tietoihin. Murtautujan tulee välttää ylimääräistä liikkumista kohdetiloissa välttääkseen epäilyt. Sulautuakseen joukkoon vaikutettava määrätietoiselta.

Murtautuja sai kiinnitettyä Raspberry Pi-laitteen tilan laitteeseen käyttämällä tilapäistä tekosyytä istua lähelle paikallista tietokonetta ja huijaamalla kiinnittävänsä oman läppärinsä virtapistokkeeseen. Laite oli pienempi kuin luottokortti ja vaikea huomata yleisissä tiloissa. Yhteystestien ja nopean verkkoskannauksen jälkeen murtautuja jätti R-Pi:n kiinni paikalliseen koneeseen ja poistui tiloista jatkaen tietomurtoa etänä. Niin kauan kuin laite pysyi huomaamattomana kiinni tilojen koneessa, hakkeri pystyi jatkamaan tietomurtoaan.

Cyber Kill Chain-mallin mukaan tämö murto aloitettiin kohteen todentamisesta ja suunnittelusta (reconnaissance). Ajaksi valittiin joulupyhät ja oletettavasti turvataso oli matalammalla. Työkaluna oli Raspberry-Pi-laite, joka sisälsi kirjon murto-ohjelmia (weaponization). Tämän jälkeen tapahtui laitteen toimitus (delivery), kun hakkeri saapui paikan päälle paljastumatta. Murtotyökalu kiinnitettiin suoraan paikalliseen laitteeseen ja testattiin ohjelmien toimivuus (exploitation) sekä etäyhteys hakkerin omasta laitteesta (installation). Hakkeri oli saanut käsiinsä jatkuvan yhteyden tilojen tietoverkkoon (command & control). Nyt hakkeri voi jatkaa toimintaansa keskeytymättömänä (actions on objective).

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

%d bloggers like this: