Kioptix 01
INFORMACIÓN SOBRE LA MÁQUINA
- Nombre: Kioptix 01
- OS: Linux
- Flag: Ninguna
- Objetivo: Root
- Dificultad: Fácil
- Conocimientos usados: Reconocimiento web, enumeración, explotación.
KIOPTIX 01
Hola a todo, el día de hoy vengo con al writeup de Kioptix después de que al incio tuviera varios problemas técnicos de los cuales… bueno, me tardé su buen rato resolviendo. Ahora sí, ya todo configurado finalmente, podemos mandar el mentado netdiscover -r con la nueva ip que tenemos y se nota claramente la diferencia. En este caso mandé 16 de subneting para tener un mayor alcance a la hora de mandar el netdiscover.
Encontramos la que nos interesa, ¿cómo lo sé? Porque es una ip que no reconozco en cuestión de dispositivos. Así que vamos a por esa. Ahora sí, primero mandamos el ping para ver si está activa.¡Tenemos actividad! Así que ahora sí, vamos por nmpa.
¡Y hay puertos abiertos! Primero algo de investigación rápida sobre los puertos para saber qué hace qué y cual podemos abusar. Una vez esa info obtenida, podemos pasar a un escaneo más especializado (no es necesario si ya tienes experiencia, pero como yo soy todavía newbie pues toca aprender todavía). También decidí ver que había en el 192.168.3.21:80 desde mi navegador y solo hay una página muestra, pero eso me dice que si esto está, debe existir un directorio /var/www/html o similar.
Con mi pequeña investigación de entrar al primer link del puerto 111, descubrí que es un puerto vulnerable para cargar archivos y, a su vez, para descargar archivos sí encuentras el servicio NFS. Así que podemos aprovechar eso para subir un archivo php para que nos mande una shell en escucha por nc. Así que primero voy a mandar un nmpa más especializado para ese port. nmap -p 111 -sV -sC --min-rate 5000 -v -Pn -n 192.168.3.21
. Si se preguntan porque no lo mandé todo directo con un nmap para que me diera toda la info de golpe, es porque no me gusta y me satura ver tanta información agrupada, mi tdah no puede. Anyway, acá vemos los resultados:
Confirmamos que es rpcbind, ahora solo tenemos que ver sí tiene el servicio de NFS y para eso tenemos una herramienta del mismo nmpa (my beloved) para que nos diga qué onda con esa cosa. Si tenemos suerte, estará disponible y podremos meter archivitos por ahí.
Bueno, a veces se pierde y otras se gana, aquí tocó soportar porque no nos da la información que queremos. Ahora toca volver a investigar como podemos saber si el servicio NFS está disponible para uso.
Mientras investigaba más sobre el puerto 111, decidí también darle una ojeada al resto de puertos que tenía abierta la máquina y encontré que el puerto 139 se usa para transferencia de archivos y podemos abusar de eso. Así que mandé un nmpa para ese puerto en específico y vaya lo que encontré.
Oh boy, here we go. Vamos a intentar conectaros a ese grupo de trabajo lo único malo es que solo sé como conectarme cuando estamos frente a una computadora windows, pero aquí es una linux así que toca investigar un poquito para saber qué onda. Al final terminé usando el smbclient que al parecer funciona para ambos, ahora toca ver si puedo conectarme.
Después de varios intentos de tratar de acceder como anónimo, al final descubrí que me pide contraseña de root para poder acceder a MYGROUP. Así que por ahora dejaremos ese en pausa y pasaremos a indagar los otros puertos y al inicio de nuevo.
Mientras intento hacer un ataque de fuerza bruta al smbclient con un script en bash, descubrí una nueva herramienta de enumeración para este tipo de puertos: enum4linux -a [IP]. Esta herramienta nos da información valiosa, entre ellas pude sacar los usuarios permitidos, por ende, ya sé que usuarios existen y puedo mandar varios ataques de fuerza bruta para entrar.
Y no solo eso, la herramienta también nos muestra algunos directorios con los que nos podemos dar una idea de qué hay en esta máquina y posibles recursos que podemos abusar para subir de privilegios. Sobre todo, la que más me llamó la atención fue el tty, eso quiere decir que tenemos la posibilidad de tener una consola interactiva entre manos.
Juro que de tantos nmpas que he lanzado ya no quiero más. Anyway, descubrí que hay una forma de que nmpa te diga ciertas vulnerabilidades que existen y para mi sorpresa en el puerto 443 hay demasiadas. Así que vamos a testear poco a poco a ver cual de todas nos sale. Primero la más severa es ssl-ccs-injection que he de suponer que es como un sql injection.
Al final simplemente no encontré nada y después de leer muchos writeups encontré uno que no usaba metasploit (que al chile, yo no quiero usar). Así que ahí va mi versión más chill y con dibujitos kawaiis. Primero usé el rpcclient para conectarme finalmente al mugre puerto 111 que estaba abierto, a diferencia de smbclient que me estaba causando muchos problemas, con éste se logró conectar sin autenticación.
Aquí los comandos son turbo diferentes, así que acá pongo los que usó el bato y alguno que otro que investigué por mi cuenta. Aunque ahorita que lo veo, es la misma información que obtuve con el enum4linux.
Como sea, después de varios otros writeups porque maldita sea todos usan le maldito mfs, encontré una herramienta que me llamó la atención y es feroxbuster, que es como gobuster pero como que más bonito. Además de que puedes meterle de una los argumentos que deseas junto con filtros. En este caso le metieron el html,php, etc.
Gracias a los resultados de Ferofox POR FIN pude dar con las páginas enumeradas correctas. Igual no tienen nada, pero al menos ahora SÍ puedo ver que estoy en el lugar correcto. Lo que un / de más puede hacerle a una chica. Como sea, ahora vamos a lo buenarrdo. La explotación. Como ya había mencionado, aquí vamos a atacar el SMB client, así que primero debemos investigar que versión es y para eso usamos el nikto. Si bien nos lanza demasiada info, debemos centrarnos en una importante y es el apache.
FUCKING FINALLY. Encontramos un método para la shell y no solo eso, sino que también tiene paquetes de wp, así que solo por los loles, vamos a usar sl scan de wp para ver que es eso que nos muestra y si no es nada, per gg.
Wueno, se intentó. Ahora sí con lo de la shell. Según el bato que leí:
Al buscar en Google, se encuentran inmediatamente múltiples resultados para exploits que atacan esta versión de mod_ssl. OpenFuck parece ser un script que podría usarse para explotar esta vulnerabilidad.
Después de varias horas buscando, no encontré como sacar la mugre versión del samba sin usar el meta, así que porque yo no quiero tocar esa cosa, les dejo la captura del bato.
El punto es que nos sale la versión que es Samba 2.2.1a y tras una búsqueda damos con que hay un exploit para éste llamado trans2open y OpenFuckl justamente tiene dicho exploit para el apache y la versión de Samba que estamos usando. Asi que vamos a por ello.
Y LA PORQUERÍA NO FUNCIONA, EXCELENTE. Después descubrí que, literalmente, ya no funciona así que GG. Vamos a intentar con la otra vulnerabilidad a ver sí esa si funciona que es la de mi novia, digo, la de trans2open. Hay un script que tiene dicha vul así que vamos a intentar con esa.
LET’S FUCKING GOOOOOO! LO CONSEGUIMOS. Ahora sí, solo queda una cosa que hacer y no, no es conseguir la flag o el password. Algo más importante… Demostrar que lo hicimos:
Comandos usado en esta máquina
Comando | Uso |
---|---|
arp-scan -I eth0 --localnet | Escaneo local de la red |
nmap -p- --open -sS -sC -sV --min-rate 5000 -v -Pn -n 192.168.136.254 | Escaneo de IP |
ping [IP] | Mandar paquetes para ver si está activa una IP |
netdiscover | Escaneo local |
enum4linux -a [IP] | smbmap pero más perro |
feroxbuster -u [IP] -x php,html -w /usr/share/wordlists/seclists/Discovery/Web-Content/directory-list-2.3-medium.txt -t 200 -d 2 -f -C 404 --no-state -o feroxbuster.txt | gobuster pero más aesthetic |