Laboratorio 05: Unrestricted File Upload
🎯 Objetivo
Subir un archivo con contenido ejecutable (HTML/JS) aprovechando la falta de validación en el formulario de subida del foro.
📋 Prerrequisitos
- Sesión activa.
- Modo Vulnerable activo.
📝 Instrucciones Paso a Paso
Paso 1: Preparar el Payload
- Crea un archivo en tu ordenador llamado
exploit.html. - Añade el siguiente contenido:
<html> <body> <h1>Archivo Malicioso</h1> <script> alert('XSS via File Upload: ' + document.domain); </script> </body> </html>
Paso 2: Subida del Archivo
- Ve al Foro.
- En el formulario de "Crear Nueva Publicación", rellena un título cualquiera.
- En el campo de archivo, selecciona tu
exploit.html. - Publica el tema.
Paso 3: Ejecución
- Busca tu publicación en el tablón.
- Verás un enlace al archivo adjunto.
- Haz clic en el enlace.
🏁 Verificación
- El archivo HTML debe abrirse en el navegador y ejecutar el script (mostrar la alerta).
- Esto demuestra que el servidor aceptó el archivo sin validar su extensión o contenido.
🛡️ Preguntas de Reflexión
- Si el servidor interpretara PHP, ¿qué podrías haber logrado subiendo un archivo
.php? - ¿Cómo se debería asegurar esta funcionalidad?