HackTheBox-verkon tiedustelu

Kurssin tehtävät löytyvät alkuperäisestä yhteydestään Tero Karvisen kotisivuilta.

h4.
a) Hedelmiä matalalla. Mitkä vaikuttavat HackTheBoxin helpoimmilta kohteilta? Tiedustele HackTheBox-verkko esimerkiksi porttiskannerilla ja ryömijällä. Noudata Rules-kohdassa annettua scopea.
b) Bonus: murtaudu jollekin HackTheBoxin maalikoneelle. Voit katsoa weppiliittymästä vinkkiä siitä, mitkä koneet ovat helppoja.
Kun raportoit HackTheBoxin ratkaisuja, laita raportit yhteisen salasanan taakse, ettemme pilaa kilpailua. Muut jutut voi julkaista normaalisti, kunhan viittaat lähteisiin. 

a)

HackTheBox -sivuston tarkoitus on tarjota tunkeutumistestauksesta kiinnostuneille henkilöille mahdollisuus kartoittaa ja vahvistaa omia murtautumistaitojaan. HackTheBox tarjoaa harjoitteluun verkon, joka sisältää viikoittain vaihtuvia haavoittuvia koneita.

HackTheBoxiin rekisteröitymiseen tarvitaan koodi, jonka saa selville vain hakkeroimalla. Rekisteröitymisen jälkeen sivustolta ladataan yhteyspaketti, jonka avulla voidaan OpenVPN:llä muodostaa yhteys HackTheBoxin verkkoon.

Yhteyden muodostettuani loin itselleni uuden hakemiston, jonka sisällä annoin komennon

msfdb init

, joka luo tietokannan Metasploitablea varten, johon kohdeverkon skannauksesta saadut tiedot tallentuvat. Tämän jälkeen otin käyttöön Metasploitin konsolin komennolla

msfconsole

ja aloitin HackTheBox-verkon skannaamisen Nmapin avulla:

db_nmap -A -n -vvv 10.10.10.1-254

Nmap käyttää komennoissaan vaikka minkälaisia lippuja, ja antamassani komennossa itse hyödynsin A:ta, n:ää ja vvv:tä. Näistä A tarkoittaa, että haluan kerätä verkosta tietoja yleisesti, eli tämä komento tutkii monia eri asioita, esimerkiksi mitä avoimia portteja löydetään, mitä palveluja niissä pyörii ja mitkä niiden versiot ovat. Ilmeisesti A on myös aggressivisempi hakuvaihtoehto muihin verrattuna. N-lippu tarkoittaa, että nimipalvelukyselyitä ei tehdä. Kohdeverkko on HackTheBoxin sisäinen verkko, joten nimipalvelukyselyistä ei tulisi mitään tuloksia, ja ne hidastaisivat kyselyä turhaan. Skannaus kestää myös sen verran kauan, että on hyödyllistä nähdä, mikä vaihe kulloinkin on menossa, ja -vvv auttaa tässä. Lopussa olen määritellyt kohdeverkon ip-osoitteet, johon skannaus suunnataan. Porttiskannaushan siis on normaaleissa olosuhteissa laitonta ja sitä ei kannata todellakaan kohdistaa mihinkään muualle kuin luvallisiin harjoitusverkkoihin, joten kannattaa olla äärimmäisen huolellinen ip-osoitetta kirjoittaessa.

Jostain syystä itselläni haku jumittui niin, että vaikka kyseisen hakuvaiheen piti Nmapin mukaan olla 99.99% tehty, haku ei enää edennyt pitkähköstä odottelusta huolimatta mihinkään. Muistaakseni minulla kävi myös koulussa vastaavalla tavalla, mutta pitkän odottelun jälkeen haku lopulta meni eteenpäin.

Tällä kertaa katkaisin haun ja yritin varmistua siitä, että haussani ei ole mitään erityistä vikaa kokeilemalla skannausta pelkästään yhdelle hostille. Tämä toimi aivan normaalisti. Kaveri antoi vinkin, että kannattaa vaihtaa -A -lippu esimerkiksi -sV:hen haun nopeuttamiseksi, joten kokeilin sitä seuraavaksi. -sV etsii avoimista porteista löytyviä palveluita ja niiden versioita, mikä onkin juuri sitä tietoa, mitä haluan.

Myös -sV -lipulla varustettu haku kesti niin kauan että uskoni meinasi loppua, mutta lopulta haku meni läpi. Epäilen, että hakujen hitaudella saattaa olla jotain tekemistä oman hitaan nettiyhteyteni kanssa.

Nyt kun skannauksen tulokset ovat tallentuneet tietokantaan, voidaan niitä tarkastella erilaisilla hakusanoilla. Esimerkiksi hosts-komento tulostaa verkossa olleet aktiiviset koneet ja mahdollisuuksien mukaan niiden käyttöjärjestelmät. Avoimissa porteissa pyörivät palvelut listaa services –up -komento, jonka tuloste minun tapauksessani näyttää tältä:

Tunneilla puhuttiin siitä, että ilmeisesti esimerkiksi hostin 10.10.10.131 portissa 21 pyörivä vsftpd olisi haavoittuva ilmeisesti vanhuutensa puolesta. Muistaakseni myös tässä 10.10.10.152 -hostilla oleva Indy httpd bandwith monitor nousi esille keskustelussa. Muutamalla koneella näyttää pyörivän myös Node.js:ään liittyviä palveluita, ja Node.js on nopean päivittymisensä takia altis uusille hyökkäyksille.

Pelkästään silmämääräisesti arvoimalla on omalla tietoudellani hieman vaikeaa sanoa, mitkä palvelut olisivat haavoittuvampia kuin toiset. Haavoittuvimpien kohteiden selvittäminen käy kuitenkin helposti Metasploitin avulla. Metasploitille voi antaa komennon search, johon voi liittää esimerkiksi jonkin yllämainittujen palvelujen nimen. Metasploit hakee tällöin kyseiseen palveluun suunnattuja exploitteja.

Tarkemmalla tarkastelulla silmääni osui koneessa 10.10.10.152 pyörivä Windows Server 2008, jonka ikänsä puolesta luulisi olevan hyvin haavoittuvainen kohde. Ja toden totta, Metasploitista löytyykin 2283 siihen löytyvää exploittia. Tunnilla kokeilimme nimenomaan vsftpd-haavoittuvuuden hyödyntämistä, ja tämä vaikutti helpolta, sillä löytyneelle vsftpd-versiolle oli olemassa tasan yksi erinoimainen exploitti, joten valinnanvaikeutta ei varsinaisesti ollut. Itselleni on kuitenkin hieman vaikeaa suodattaa sadoista vaihtoehdoista ne, jotka saattaisivat todennäköisimmin toimia kohdekonetta vastaan.

Seuraavissa tehtävissä tulee esille uudestaan Metasploit exploittien käyttö ja HackTheBox-koneeseen murtautuminen, joten jatkan kirjoitusta seuraavassa päivityksessä.

Tietoa kirjoittajasta

Noora Huttunen

Opiskelen ohjelmistotuotantoa Haaga-Helian tietojenkäsittelylinjalla.