🔒 Registro cerrado · Apertura oficial próximamente · Acceso exclusivo para alumnos activos
Iniciar SesiónXSS y el navegador
4 tareas · 20 min · Principiante
El XSS pasa cuando una aplicacion devuelve al navegador una entrada del usuario sin codificarla, y el navegador, que no sabe que es dato, la trata como marcado y la ejecuta. El auditor lo encuentra en dos sitios: en el codigo que imprime la entrada y en la respuesta guardada donde se ve el reflejo. En Boletia el buscador devuelve el parametro sin tocar. Se localiza, se clasifica y se arregla; no se escribe ningun codigo de ataque.
Objetivo de la sala
El XSS pasa cuando una aplicacion devuelve al navegador una entrada del usuario sin codificarla, y el navegador, que no sabe que es dato, la trata como marcado y la ejecuta. El auditor lo encuentra en dos sitios: en el codigo que imprime la entrada y en la respuesta guardada donde se ve el reflejo. En Boletia el buscador devuelve el parametro sin tocar. Se localiza, se clasifica y se arregla; no se escribe ningun codigo de ataque.El fallo de XSS se ve en el punto donde la aplicacion pinta en la pagina algo que vino del usuario. En buscar.php de Boletia la entrada $_GET['q'] se concatena dentro de un echo que arma HTML, sin pasar por ninguna funcion que la convierta en texto inofensivo. El navegador recibe lo que el usuario escribio como si fuera parte del documento. El auditor reconoce el fallo por eso: salida sin codificar, no por probar un payload.
Abre el archivo y fijate en que le pasa a $q entre que entra y que se imprime: nada.
Esta tarea se hace en el laboratorio
Un escritorio Linux con terminal, aquí en la página. No instalas nada y no puedes romper nada.
Responde para continuar
En buscar.php, por que hay XSS?
Ver pista de ayuda
Mira si q pasa por alguna funcion antes del echo.
Un auditor sostiene el hallazgo con evidencia, no con una corazonada. En la carpeta evidencia de Boletia hay una respuesta HTTP guardada donde se ve que lo que un revisor escribio en el buscador volvio dentro del HTML tal cual, sin convertirse en texto. Eso confirma que el navegador recibiria el marcado y lo ejecutaria. Leer la respuesta guardada es la forma estatica de confirmar el XSS sin lanzar nada contra un sistema vivo.
La evidencia no es el ataque: es la prueba de que la salida no se codifica, que es lo que el informe necesita.
Esta tarea se hace en el laboratorio
Un escritorio Linux con terminal, aquí en la página. No instalas nada y no puedes romper nada.
Responde para continuar
Que demuestra la respuesta guardada en la carpeta evidencia?
Ver pista de ayuda
Compara lo que se escribio con lo que aparece dentro del cuerpo de la respuesta.
Contra el XSS el arreglo tiene dos capas, y la primera es imprescindible: codificar la salida, convirtiendo los caracteres que el navegador trata como marcado en su forma de texto cuando se pintan —en PHP, htmlspecialchars—. Encima de eso, una Content-Security-Policy limita que scripts puede ejecutar la pagina y reduce el dano si algo se escapa. El auditor recomienda las dos, en ese orden: codificar siempre, CSP como refuerzo.
Validar solo la entrada no basta: la misma entrada puede ser legitima en un sitio y peligrosa al pintarla en otro. Se codifica donde se imprime.
Esta tarea se hace en el laboratorio
Un escritorio Linux con terminal, aquí en la página. No instalas nada y no puedes romper nada.
Responde para continuar
Que recomiendas para cerrar el XSS de Boletia?
Ver pista de ayuda
El arreglo actua donde se imprime la entrada, no solo donde entra.
La nota de triaje de Boletia recoge el fallo: el archivo, el parametro, la clasificacion CWE-79 y el arreglo. Abrela en el laboratorio y lee el codigo del hallazgo con el que cierra. Ese codigo acompana al XSS en el informe.
Esta tarea se hace en el laboratorio
Un escritorio Linux con terminal, aquí en la página. No instalas nada y no puedes romper nada.
Responde para continuar
Abre la nota de triaje de Boletia (carpeta auditoria) y escribe el codigo del hallazgo que la cierra.
Ver pista de ayuda
Ultima linea de auditoria/hallazgo.txt.
Preparando el escritorio…
Whoami-Labs Pro
Whoami-Labs Pro utiliza cookies
Utilizamos cookies y almacenamiento local para el funcionamiento del sitio, seguridad de sesión y, si lo autorizas, analítica y marketing. Puedes aceptar, rechazar o personalizar. Política de Privacidad
Preferencias
Configuraciones de cookies
Elige qué categorías permitir. Las esenciales siempre están activas. Consulta la Política de Privacidad.
Esenciales
Siempre activas · sesión, CSRF, tema y esta preferencia
Necesarias para iniciar sesión, proteger formularios (CSRF) y recordar tu elección de cookies y tema. Sin ellas la plataforma no funciona de forma segura.
Analíticos
Hoy no activos en la plataforma; listos para cuando se conecten
Nos ayudan a entender uso de cursos y páginas. Si los activas, se usarán cuando conectemos analítica; hasta entonces no se carga ningún tracker.
Marketing
Hoy no activos; campañas futuras solo con tu permiso
Comunicaciones o campañas. No activos hoy en la plataforma; quedarán listos si los conectamos y solo si los permites.