MAQUINA PYSCHO (Fuzzing Parametros VULN WEB LFI con FUZZ Pivoting User PrivEsc {python3 paw.py})
Last updated
Last updated
MAQUINA PYSCHO (Fuzzing Parametros - VULN WEB LFI con FUZZ
- Pivoting User - PrivEsc {python3 - paw.py})
Enumere los puertos abiertos dentro de la maquina con nmap.
nmap --open -p- --top-port=100 --min-rate 3000 -n -Pn -sSCV -oN fullservice.txt
--open= me escanea solo los puertos abiertos
-p-= indica que escanee los 65535 puertos
--top-port= que escanee los 100 puertos mas imporantes
--min-rate= para aumentar el envio de paquetes
-n= no quiero que me haga resolucion DNS
-Pn= no quiero que ejecute un ping al host
Identifique con whatweb las tecnologías que corren en el sitio y no encontré nada interesante
Inspeccione el código fuente de la pagina principal de la web, y encontré una cadena de texto interesante.
Con wfuzz ejecute un escaneo en búsqueda de directorios ocultos
wfuzz -c --hc=404,403 -u <ip> -w <wordlist> -t 50
Hay un directorio assets donde allí se aloja una imagen, con algunas herramientas de esteganografía intente ver si contenía algún archivo dentro de ella
binwalk <img>
DATA:
steghide extract -sf background.jpg
exiftool background.jpg
binwalk background.jpg`
strings background.jpg | less
Ahora volvi a buscar directorios ocultos pero ahora use FFUF y cambie la wordlist ya que las que usaba anteriormente no encontaba el archivo que se ve en la imagen
ffuf -u <ip> -w <wordlist> -e php,html,txt -fs 269
Ahora hay un index.php lo que me da paso a saber que la web esta programada en PHP, voy a esa ruta y veo que es la pagina inicial.
Coloque "?" y lo toma como valido, ahora podría la web estar alojando otro parámetro?
Con FUFF busque si contiene algun parametro interesante usando la siguiente sintaxis
# El -fs lo use para que no me muestre el contenido que tiene como size 2596
Logre encontrar este parámetro con nombre "secret", ahora con esto voy dándome una idea por donde podría llegar a ir
Le agregue a la url un valor cualquier para ver si se modifica la web en este caso fue TEST.
Al enviarla la url no se modifica ni tampoco me indica un error.
Con FFuf realice una busqueda de archivos del sisteam con un diccionario, porque? al poder incluir un valor "X" y no recibir un error esto me da una idea de la web podria tener una vulnerabilidad web llamada LFI (local file inclusion)
ffuf -u <ip>/index.php?secret=FUZZ -w <wordlist>/seclists/Fuzzing/LFI/LFI-LFISuite-pathtotest.txt
No te que la herramienta me devuelve varios estos 200 del /etc/group como del /etc/passwd y varios mas, lo cual pase aprobar cada una
Use la ruta /proc/self/status y logre ver el contenido con éxito
Como funciono con éxito leer archivos del sistema, no dude y mire el /etc/passwd donde encontré 2 usuarios "luisillo y vaxei"
Después de esto trate de ver las id_rsa de cada usuario donde logre encontrar el de vaxei
Me copio la id_rsa, luego le di permisos 600 y logre acceder usando ssh dentro de la maquina indicándole el parámetro -i.
Ya dentro de la maquina busque información de ella para saber ante que versión de linux me enfrento.
Dentro de la carpeta vaxei esta el .bash_history donde al leerlo vi el varios pasos que se ejecutaron anteriormente
Ejecute un sudo -l y vi que luisillo puede ejecutar sin contraseña el binario perl, ahora replique lo mismo que esta alojado en el bash history.
sudo -u luisillo /usr/bin/perl -e 'exec "/bin/sh";'
Esto me dio paso a moverme lateralmente al usuario luisillo.
Ahora volví a ejecutar un sudo -l y vi que cualquier usuario también root puede ejecutar python3 y el archivo paw.py.
Me dirige a /opt y observe el contenido del archivo donde encontré una pista en "codigo para ejecutar script". Pero que pasa? este archivo paw.py no se puede modificar ya que pertenece al usuario root, por ende realice lo siguiente.
Copie el archivo paw.py para no hacer cagada, al copiarlo ahora luisillo tiene permisos para modificar este archivo y ya no root.
Ahora modifico el script colocando lo siguiente y lo guardo, luego ejecuto este comando:
sudo -u root /usr/bin/python3 /opt/paw.py
y ahora logre obtener como root a la maquina
import os
print( import ('os').system('bash'))
En el escaneo de nmap en el puerto 80 hay un titulo de la web "4you" por lo que se me dio agregarlo al /etc/host. Una vez hecho esto volví a la web pero indicándole la ruta y logre ver otro contenido de la web
ffuf -u
-w <wordlist>