PortSwigger Information Disclosure Error Messages Debug Pages Version Control

Information Disclosure

Divulgación de información sensible a través de mensajes de error, páginas de debug, archivos de backup y historial de control de versiones.

How to find and exploit information disclosure vulnerabilities

Error messages

Lab 1Information disclosure in error messages

Agregar cualquier texto al parámetro productId. El mensaje de error revelará la versión del framework que utiliza la aplicación.

Debugging data

Lab 2Information disclosure on debug page

El código fuente contiene un comentario con la ruta /cgi-bin/phpinfo.php. En esa página, buscar en las variables de entorno la variable SECRET_KEY.

Source code disclosure via backup files

Lab 3Source code disclosure via backup files

Revisar robots.txt para encontrar rutas ocultas. Existe la carpeta /backup con un archivo .java.bak que contiene la contraseña de la base de datos en la función de conexión.

Information disclosure due to insecure configuration

Lab 4Authentication bypass via information disclosure

El panel de administración solo está disponible para usuarios locales. Interceptar la consulta con Burp Suite y cambiar el método GET por TRACE. La respuesta incluye una cabecera interna que revela la IP pública. Agregar la cabecera X-Custom-IP-Authorization: 127.0.0.1 para suplantar acceso local.

Version control history

Lab 5Information disclosure in version control history

El directorio /.git está expuesto. Descargar recursivamente con wget -r, luego usar git para analizar cambios y encontrar contraseñas en commits anteriores.

# Descargar el repositorio git expuesto
wget -r https://LAB-ID.web-security-academy.net/.git

# Ver cambios en el último commit
git diff

# Ver historial de commits
git log

# Volver al commit que tenía la contraseña
git checkout 7bdcbe23d2a92f2c962a1b1568a77b9590500f49