Kone: HP ProBook 6560b, johon asennettu Kali linux käyttöjärjestelmä versio 2020.3. CPU: Intel Celeron B810 1.60GHz
VK3 Penetration Testing Course 2020 Autumn
Tehtävänannot otettu Tero Karvisen kurssi sivulta
h5 sitting ducks
”Muista kohdistaa hyökkäykset vain harjoitusmaaleihin ja tarkistaa osoitteet.” (Karvinen, 2020)
”Tehtävä päivittyy, mutta kaikki nämä kohdat tulevat ainakin läksyksi.”(Karvinen, 2020)
”z) Lue artikkelit ja katso videot, tee kustakin muistiinpanot (muutama ranskalainen viiva per artikkeli/video). Tässä z-kohdassa ei tarvitse tehdä mitään kokeita koneella.
- € Jaswal 2020: Mastering Metasploit – 4ed: Chapter 1: Approaching a Penetration Test Using Metasploit(kohdasta ”Conducting a penetration test with Metasploit” luvun loppuun)” (Karvinen, 2020)
”a) Metasploitable. Asenna Metasploitable 2. Murtaudu sille useilla tavoilla.”(Karvinen, 2020)
”Vinkkejä: VirtualBoxissa host-only-networking on kätevä. Voit laittaa Kaliin kaksi verkkokorttia, toinen NAT:lla Internetiin ja toinen host-only-network:n. Verkkoasetusten advanced-kohdasta voi vetää virtuaalisen verkkokaapelin irti ja kiinni, vaikka kone on päällä.” (Karvinen, 2020)
”Vinkkejä: Kannataa käyttää Metasploit-hyökkäysohjelmaa useimpiin hyökkäyksiin. Jos meinaat jäädä jumiin, katso seuraava askel spoilereista, esim Exploitability Guide. Jos Metasploitable 2 -maali ei löydy omasta verkosta (arp, arpwatch, netdiscover…), voit kirjatua sisään (msfadmin:msfadmin) ja ’ifconfig’ tai ’ip addr’. Vapaaehtoinen bonus-alakohta: löydätkö hyökkäyksen, joka tukee meterpreter-payloadia?” (Karvinen, 2020)
”b) Skannaa HackTheBoxin verkko niin, että tallennat tulokset Metasploitin tietokantoihin.” (Karvinen, 2020)
”Vinkkejä: voit hyödyntää aiempia skannauksiasi, joko vain taustatietona, tai tuomalla (import) nmap:n xml-tiedostot suoraan metasploitiin. db_nmap, hosts –up, services” (Karvinen, 2020)
”c) Onko joukossa vanhoja tai haavoittuvia versioita?” (Karvinen, 2020)
”Vinkkejä: Hyödynnä nmap:n versioskannausta. Hae palvelinten versioilla msfconsole search ja searchsploit.” (Karvinen, 2020)
”i) Vapaaehtoinen: Asenna ja korkkaa Metasploitable 3. Karvinen 2018: Install Metasploitable 3 – Vulnerable Target Computer” (Karvinen, 2020)
”j) Vapaaehtoinen: Asenna ja korkkaa Metasploitable 3 Windows, kuten edellisessä kohdassa mutta vm.box ”rapid7/metasploitable3-win2k8″. Viimeksi kokeillessani Windows-version asennuksessa oli sekalaisia hankaluuksia.” (Karvinen, 2020)
”k) Vapaaehtoinen, haastava: korkkaa jokin HTB:n kone.” (Karvinen, 2020)
*Päivitetty 28.1.2021*
Tehtävä z)
Conducting a penetration test with Metasploit
- Auxiliary moduuleja on tärkeätä myös käyttää, koska ne saattavat paljastaa esim käyttäjätunnuksia ja salasanoja.
- Luo aina tietokanta, kun aloitat uuden metasploit ”projektin”
- Hosts komennolla näet hostit, jotka ovat ylhäällä ja services komennolla näet palvelut, jota kone käyttää, kun olet nmpannut.
- search komennolla voit etsiä exploitteja, moduuleja yms. metasploitista
- moduuleilla on oma rank ja mitä parempi rank moduulilla on, sitä paremmin se toimii ja on luotettava.
- RHOSTS on yleensä lisättävä exploittiin eli kohde koneen IP ( set RHOSTS *IP* )
- Payloadien valitseminen ( set payload )
Tehtävä a)
Aloitin tehtävän lataamalla Virtualboxiin Metasploitin ja uuden kali koneen. (**käytin aiemmissa tehtävissä vanhalle läppärille asennettua kalia**) Ongelmitta ei kuitenkaan selvitty, sillä käytän Mac konetta, ja minun täytyi ensiksi käydä hyväksymässä kernel asetukset macin omista asetuksista System Preferences -> Security & Privacy ja sieltä hyväksyä Oraclen lisäosa, jonka jälkeen homma alkoi toimimaan.
Asennusten jälkeen kävin luomassa vbox0 verkon, johon lisäsin metasploitin.
Virtualboxissa kohdasta File -> Host network manager -> create ja näin sain luotua vboxnet0, johon liitin metasploitin
host-only-network -> dropdown valikosta -> vboxnet0

Kun koneet oli asennettu tarkistin metasploitablen ifconfig komennolla koneen ip osoitteen, jonka sitten nmappasin metasploitilla. Ennen nmappausta kuitenkin loin uuden databasen.
db_nmap 192.168.56.101 -sV --top-ports 50
Tämän jälkeen kirjoitin services ja katsoin mitä kaikkea metasploitable 2 koneesta löytyy

Vsftpd
Rupesin käymään portteja läpi ja etsimään mahdollisia hyökkäyksiä. Enimmäisenä otin vsftpd 2.3.4 ja etsin löytyykö sille exploitteja. Ja löysin yhden kyseiselle versiolle, joka näytti olevan Backdoor command execution.

Seuraavaksi lähdin kokeilemaan exploittia ja kirjoitin seuraavan komennon. Eli mitä exploittia haluan käyttää.
use exploit/unis/ftp/vsftpd_234_backdoor // voit myös käyttää numero nopeuttamaan exploitin käyttöä.
Komennon jälkeen katsoin show option komennolla mitä module optioneja minulla on ja lisäsin RHOSTin, johon lisäsin metasploitable 2 koneen IP osoitteen.
set RHOST 192.168.56.101
Tämän jälkeen pystyin ajamaan exploittia koneelle komennolla exploit, jonka jälkeen metasploit alkoi työstämään asiaa ja hakkeroitumaan koneelle. Ja näin pääsin koneelle sisään käyttäen backdoor haavoittuvuutta ja valmista exploittia. Nyt pystyin käymään tiedostoja läpi. Kävin vielä varastamassa ssh avaimet itselleni.

Ensimmäisen kohdan jälkeen lähdin käymään läpi muita portteja, jotka olivat auki. En kuitenkaan löytänyt mitään toimivia exploitteja, joita olisi voinut hyödyntää, ainoastaan VNC protocolla 3.3 löytyi auxiliary, jota kokeilin ja se antoi sanoman ”Login Successful”

En kuitenkaan ollut iha perillä mikä tämä VNC on, mutta sain selville graafisen käyttöliittymän etäkäyttöön tarkoitettu. En tiedä mitä tällä olisi tarkoitus tehdä kun sain Login successfullin.
Kävin hieman katsomassa läpikävleyistä osviittaa mitä kannattaisi tehdä ja huomasin, että en ollut skannannut kaikki portteja auki, kun käytin alussa top ports komentoa, joten ajoin vielä uudelleen nmapin ja löysin lisää portteja, jotka olivat auki, joten lähdin työstämään niitä.
db_nmap -sV 198.168.56.101

IRC
Lähdin kokeilemaan ensimmäiseksi irc protokollaa, ja etsin unrealircd exploitteja ja löysin exploitin, joka oli backdoor command execution.

Lisäsin normaalisti RHOSTin exploitille ja yritin ajaa komentoa, mutta se ei toiminut vaan piti lisätä payload exploittiin.

Päätin käyttää ensimmäistä payloadia, joka ilmeisesti hyödyntää Perl ohjelmointikieltä. Ajoin payloadin sisään komennolla ” set payload 0 ”. Tämän jälkeen pystyin suorittamaan exploitin ja pääsin sisään koneelle, mutta vain irc kansioon eli /etc/unreal.

hetken tutkittuani koneelta löytyi erilaisia luotuja networkkeja ja niiden hostien sähköposteja /etc/unreal/networks kansiosta. Myös unrealircd.conf tiedostosta löytyi mielenkiintoista tavaraa kuten salasanoja ja käyttäjätunnuksia, mutta greppasin vain salasanoja kyseisestä kansiosta.

Tomcat
Kokeilin tomcatia joka toimii portissa 8180. Katsoin hieman vihjettä läpikävelystä, että tomcatista voisi löytyä jotain, jos sivustoa skannaa. Aloitin etsimällä mitä kaikkea tomcattiin löytyy search tomcat komennolla.

Mielenkiinto siirtyi administration kohtaan ja päätin ajaa tiedustelun, joka on suunnattu tomcatin administration toolille. Valitsin kyseisen ajon.
set 1 -> show options -> set RHOSTS 192.168.56.101 -> exploit
Ajossa meni hetken aikaa, mutta sain mielenkiintoisia tuloksia.

Ensimmäisenä kiinnitin huomiota http sivuun, jonne menin vierailemaan ja löysin admin kirjautumis sivun. Kokeilin ensiksi samoja käyttäjätunnuksia ja salasanaa kun metasploitable2 koneessa, mutta ne ei toiminut. Rupesin sen jälkeen katsomaan lisää tulostetta ja lopusta löysin [Tomcat server administration] ja [tomcat/tomcat], joten kokeilin tätä tomcat yhdistelmää ja pääsin kirjautumaan sisään webserverille.

Bindshell Metasploitable root shell
Jouduin hieman katsomaan vinkkiä läpikävelystä, jonka löysin youtubesta, jossa käytettiin netcattia porttiin 1524, joka on metasploitable root shell, eli pääsin komennolla.
sudo nc 192.168.56.101 1524
kirjautumaan suoraan root käyttäjänä metasploitable koneelle.

Lähteet: https://www.youtube.com/watch?v=wqlQpnXJj1o&list=PLnvGUPsMazNScS415yluE4DEir8-dhjFD&index=13
https://charlesreid1.com/wiki/Metasploitable/Apache/Tomcat_and_Coyote
http://terokarvinen.com/2020/tunkeutumistestaus-kurssi-pentest-course-ict4tn027-3006-autumn-2020/
tehtävä b & c)
Tehtävä oli skannata HTB verkko metasploitilla. Aloitin tehtävän ensiksi komennolla
Sudo msfdb init // Avaa ja konfiguroi tietokannan
Seuraavan avasin metasploitin konsolin, jotta voin ruveta luomaan uuden tietokannan ja aloittaa itse tehtävän tekemisen.
Sudo msfconsole // avaa metasploitin consolen

Konsoliin päästyäni aloitin luomalla uuden tietokannan, jonka nimeksi annoin htbnw. Loin tietokannan antamalla komennon
workspace -a htbnw // Luo tietokannan nimeltä htbnw

Kun tietokanta oli luotu niin pystyin aloittamaan itse verkon skannauksen. HTB koneita taisi olla aktiivisena 10.10.10.194-220 osoitteissa, joten päätin ajaa nuo ja –top-ports 25. Ajoin koneet 194-220, koska muistan jonkun tunnilla sanoneen, että aktiivisia koneita htb verkossa on 194-220 osoitteissa.
db_nmap 10.10.10.194-220 --top-ports 25 -sV
Nmap skannasi 27 IP-osoitetta ja siellä oli 20 hostia ylhäällä ja skannaus kesti 56.25 sekuntia. Skannauksen jälkeen katsoin vielä komennolla hosts, jotta näen kaikki hostit, jotka on ylhäällä ja mahdollisesti niiden käyttöjärjestelmät

Hostien katsomisen jälkeen listasin services komennolla kaikki palvelut, jotka ovat koneilla auki tai kiinni, jonka jälkeen rupesin etsimään metasploitista vanhoja ja haavoittuvia versioita.
Kone 10.10.10.197

FTP: v. vsftpd 3.0.3 ja tämä näyttäisi olevan uusin versio FTP:lle. Tälle versiolle en löytänyt mitään haavoittuvuuksia metasploitista. Versiolle 2.3.4 oli Backdoor command execution haavoittuvuus.
SSH: OpenSSH 7.9p1. SSH versio on vanhentunut versio uusin versio on 8.4. En löytänyt metasploitilta openssh versio 7.9:lle mitään haavoittuvuutta.
SMTP: Postfix smtpd. Tästä ei selvinnyt mikä versio käytössä. SMTPD:lle löysin 2 exploittia(read local privilege escalation ja Remote command execution), mutta en ole varma käyvätkö ne tähän, koska versiosta ei ole mitään tietoa.
HTTP/80: nginx 1.14.2. Nginx on vanhentunut versio, mutta tähän ei löytynyt mitään haavoittuvuutta.
IMAP: Courier Imapd Released 2018, myös todennäköisesti vanhentunut versio. Löysin yhden remote code executiion haavoittuvuuden kun etsin hakusanalla imap 2018, mutta en ole varma onko exploitti sopiva tähän.
SSL/IMAP: Courier Imapd released 2018, myös todennäköisesti vanhentunut versio. Löysin yhden remote code executiion haavoittuvuuden kun etsin hakusanalla imap 2018, mutta en ole varma onko exploitti sopiva tähän.
HTTP/8080: nginx 1.14.2 Vanhentunut versio, mutta tähän ei löytynyt mitään haavoittuvuutta.
Kone 10.10.10.198
HTTP/8080: Apache http 2.4.43 on vanhentunut versio tästä on julkaistu jo, 2.4.46 versio. Versiolle ei löytynyt metasploitilta mitään haavoittuvuutta tai exploittia.
Kone 10.10.10.199
SSH: OpenSSH 8.1 on vanhentunut versio, tästä julkaistu jo 8.2. Tähän ei löytynyt mitään haavoittuvuutta.
HTTP: OpenBSD httpd. Versiosta ei saatu tietoa. OpenBSD löytyi 1 exploittia, joka oli Rank: Excellent. Dynamic loader chpass privilege escalation.

Kone 10.10.10.200
SSH: OpenSSH 7.9p1. SSH versio on vanhentunut versio uusin versio on 8.4. En löytänyt metasploitilta openssh versio 7.9:lle mitään haavoittuvuutta.
Kone 10.10.10.201
SSH: OpenSSH 8.2p1. on uusin versio, joka on tullut vuonna 2020 helmikuussa. Tähän ei metasploitista löytynyt haavoittuvuuksia.
Kone 10.10.10.203
HTTP/80: Microsoft IIS http 10.0 ja tämä on uusin versio IIS palvelusta. Metasploitista ei löytynyt tälle mitään haavoittuvuuksia.
Kone 10.10.10.204
MSRPC: Microsoft Windows RPC. Versiota en saanut selville, joten meni arvailuksi löytyikö mitään haavoittuvuuksia, mutta pari pisti silmään, mutta nekin oli julkaistu jo 2005 ja 2007.

HTTP/80: Microsoft IIS httpd versiosta ei saanut tietoa. Metasploitista löytyi useampia IIS exploitteja ja noin 4 kpl excellent rankilla olevia. Lähtisin ensimmäiseksi kokeilemaan näitä excellent rankin omaavia exploitteja kyseiseen palveluun.

10.10.10.205
SSH: OpenSSH 8.2p1 on uusin julkaisu, joka on tullut 2020. Metasploitista ei löytynyt mitään mitään haavoittuvuuksia tästä versiosta.
HTTP/8080: Apache Tomcat 9.0.27 ei ole uusin versio tomcatista ja siitä on julkaistu jo versio 10. Metasploitista löytyi yksi haavoittuvuus hakusanalla ” Apache tomcat 9.0 ” infosta löytyi tietoa, että se olisi versioille 9.0 ja aiemmat, mutta voisihan tätä myös kokeilla tuohon 9.0.27, koska rank on ecellent. Vaikka epäilen exploitin toimivuutta kyseiseen versioon.
Kone 10.10.10.206
SSH: OpenSSH 7.2p2 on vanhentunut versio SSH:sta. Metasploitista ei löytynyt haavoittuvuuksia.
HTTP/80: Apache http 2.4.18 on vanha versio apachesta, mutta metasploitista ei löytynyt mitään haavoittuvuutta.
Kone 10.10.10.208
FTP: vsftpd 2.0.8 or later Eli ei ole täyttä varmuutta voiko se olla ehkä vanhempi versio vai jopa uudempi. Sana later jättää vähän arvailuksi kumpaa sillä tarkoitetaan, mutta jos se on 2.0.8 niin se on vanhentunut versio. Yksi haavoittuvuut löytyi metasploitista

SSH: OpenSSH 7.9p1 on vanhentunut versio, eikä metasploitista löytynyt exploitteja tai haavoittuvuuksia kyseiselle versiolle.
HTTP/80: Apache http 2.4.38 ei ole uusin versio siitä on julkaistu 2.4.46. Eikä tähän versioon löydy haavoittuvuuksia.
Kone 10.10.10.209
SSH: OpenSSH 8.2p1 on uusin versio SSH ja siihen ei löydy haavoittuvuuksia.
HTTP/80: Apache httpd 2.4.41 ei ole uusin versio ja siihen ei löydy mitään haavoittuvuuksia.
Kone 10.10.10.210
HTTP/80: Microsoft IIS httpd 8.5 on vanhentunut versio ja tästä on julkaistu jo 10 versio. metasploitista ei löytynyt 8.5 versiolle haavoittuvuuksia.
SSL/HTTP: Ei löydy kuin, että portti on auki.
HTTP/8080: Apache httpd 2.4.43 on vanha versio, eikä tälle löytynyt haavoittuvuuksia.
Kone 10.10.10.211
SSH: OpenSSH 7.9p1 ei ole uusin versio ja metasploitilla ei löytynyt haavoittuvuuksia.
HTTP/8080: Nginx 1.14.2 on vanha versio, mutta metasploitista ei löydy haavoittuvuuksia.
Kone 10.10.10.212
SSH: openssh 8.2p1 on uusin version openSSH:sta ja siihen ei löydy mitään haavoittuvuuksia.
HTTP/80: Apache 2.4.41 on vanhentunut versio, eikä siitä löydy mitään haavoittuvuuksia.
Kone 10.10.10.213
HTTP/80: Microsoft IIS httpd 10.0 on uusin versio, eikä siihen ole mitään haavoittuvuuksia.
MSRPC: Microsoft Windows PRC ja siitä ei löytynyt mitään versiota, joten muutama exploit löytyi mitä voisi kokeilla, kun ei ole versiota tiedossa.

Kone 10.10.10.214
SSH: openssh 8.2p1 on uusin version openSSH:sta ja siihen ei löydy mitään haavoittuvuuksia.
HTTP/80: Apache 2.4.41 on vanhentunut versio, eikä siitä löydy mitään haavoittuvuuksia.
Kone 10.10.10.215
SSH: openssh 8.2p1 on uusin version openSSH:sta ja siihen ei löydy mitään haavoittuvuuksia.
HTTP/80: Apache 2.4.41 on vanhentunut versio, eikä siitä löydy mitään haavoittuvuuksia.
Kone 10.10.10.216
SSH: openssh 8.2p1 on uusin version openSSH:sta ja siihen ei löydy mitään haavoittuvuuksia.
HTTP/80: Apache 2.4.41 on vanhentunut versio, eikä siitä löydy mitään haavoittuvuuksia.
SSL/HTTP/443: Apache 2.4.41 on vanhentunut versio, eikä siitä löydy mitään haavoittuvuuksia.
Kone 10.10.10.217
SSH: OpenSSH for_windows 7.7ei ole uusin versio ja löysin metasploitista hakusanalla openssh for windows kaksi POSTia, enkä ole varma ovatko nämä toiminnassa tässä versiossa.

HTTP: Microsoft IIS httpd 10.0 ja tämä on uusin versio eikä siihen ole haavoittuvuuksia.
SSL/HTTP: Microsoft IIS httpd 10.0 ja tämä on uusin versio eikä siihen ole haavoittuvuuksia.
Kone 10.10.10.218
SSH: OpenSSH 8.0 ei ole uusin versio, mutta sille ei löydy mitään haavoittuvuuksia.
HTTP: Nginx 1.19.0 ei ole uusin versio, tästä on julkaistu 1.19.5 versio, mutta tähän ei ole mitään löytyvää haavoittuvuutta.
Lähteet: http://terokarvinen.com/2020/tunkeutumistestaus-kurssi-pentest-course-ict4tn027-3006-autumn-2020/
https://nginx.org/en/download.html
https://www.cvedetails.com/version-list/2041/3475/1/Beasts-Vsftpd.html?order=0
https://httpd.apache.org