Path Traversal via Invoice Download
Foro con sistema de pedidos donde el parametro file del endpoint de descarga de facturas permite path traversal para leer archivos arbitrarios del servidor.
Learn to find this bug
A real bug bounty report, reproduced for you to practice.
Create your account and practice real bugs that got paid. Download the environment, find it and learn the exact technique — your path to your first bounty.
- hunters training
- 650
- labs from real reports
- 50
- completions
- 380
- in bounties practiced
- $200,000
hunters training
labs from real reports
completions
in bounties practiced
Access to all labs · no commitment · cancel anytime
Hunters who solved it· 7
Objectives
Achievement you'll earn
Solve this lab to unlock this shareable achievement
Path Traversal via Invoice Download
Community writeups
Despliegue
# Opcion 1: autodeploy
./autodeploy.sh
# Opcion 2: manual
docker compose up --build
# Acceder
http://localhost:1400
Compatible con macOS, Linux y Windows (Docker Desktop / WSL).
Para parar:
./autodeploy.sh destroy
# o: docker compose down -v
Contenido del Lab
La aplicacion
ZeroDay Forum con sistema de pedidos y descarga de facturas.
La vulnerabilidad
El endpoint /api/orders/download?file=invoice.pdf no sanitiza el parametro file, permitiendo ?file=../../../../etc/passwd para leer archivos arbitrarios.
Cadena de ataque
1. Hacer un pedido y descargar factura
2. Observar URL: /api/orders/download?file=invoice_123.pdf
3. Cambiar a: ?file=../../../../etc/passwd
4. Obtener contenido del archivo del sistema
Solucion interactiva
Accede a /writeup dentro de la aplicacion para una guia paso a paso con botones interactivos.
Flag
(contenido de /etc/passwd o archivos del servidor)
Remediacion
- Usar path.basename() para sanitizar el nombre de archivo
- Verificar que la ruta final esta dentro del directorio de facturas
- Usar IDs de base de datos en vez de nombres de archivo
- Bloquear secuencias ../ en los parametros