Loading
_ DESCIFRANDO CONEXIÓN SEGURA...

Cabeceras, cookies y parámetros

4 tareas · 40 min · Principiante

Una petición y su respuesta HTTP son texto, y el proxy te las enseña tal cual. Leerlas bien es la habilidad central del trabajo sobre aplicaciones web: qué cabeceras anuncian de más, qué atributos le faltan a una cookie de sesión y qué datos manda el navegador que el servidor no debería creerse. En esta sala se leen cinco mensajes guardados de la sesión de prueba de Tamarindo Eventos, sin modificar ninguno. No se explota nada: se lee y se redacta lo que se ve.

0 de 4 · 0%

Objetivo de la sala

Una petición y su respuesta HTTP son texto, y el proxy te las enseña tal cual. Leerlas bien es la habilidad central del trabajo sobre aplicaciones web: qué cabeceras anuncian de más, qué atributos le faltan a una cookie de sesión y qué datos manda el navegador que el servidor no debería creerse. En esta sala se leen cinco mensajes guardados de la sesión de prueba de Tamarindo Eventos, sin modificar ninguno. No se explota nada: se lee y se redacta lo que se ve.

La cookie de sesión es la llave de la cuenta mientras dure la sesión: quien la tenga, es esa persona para la aplicación. Por eso importan sus atributos. Secure hace que el navegador solo la envíe por conexiones cifradas. HttpOnly impide que los scripts de la página la lean, lo que reduce el daño si la página tiene una inyección de código en el navegador. SameSite limita en qué contextos se envía junto con peticiones que vienen de otros sitios. Domain y Path dicen a qué hosts y rutas se manda; con un Domain que cubre el dominio padre, la cookie viaja a todos sus subdominios.

La ausencia de un atributo no es una vulnerabilidad por sí sola; es una defensa que falta, y se reporta como tal, con su arreglo.

Responde para continuar

¿Qué consigue el atributo HttpOnly de una cookie de sesión?

Ver pista de ayuda

Un atributo trata el cifrado, otro el acceso desde scripts y otro el origen de la petición. Este es el de los scripts.

En la respuesta al acceso, el servidor entrega dos cookies. Una guarda el idioma del usuario y no es sensible; la otra identifica la sesión. Se distinguen por el nombre y por lo que hacen: la que aparece al iniciar sesión y viaja a todos los hosts de la API es la sesión. Revisa sus atributos línea por línea.

Responde para continuar

Abre el laboratorio y lee respuesta-login.http. ¿Qué cookie de sesión se emite sin el atributo Secure? Escribe su nombre.

Ver pista de ayuda

Hay dos Set-Cookie. Una es de idioma. Mira cuál de las dos no lleva Secure y es la que identifica la sesión.

Todo lo que el navegador envía lo controla quien tiene el navegador, y con un proxy, además, puede verlo y cambiarlo antes de que salga. Un servidor no debe fiarse de valores que ya sabe por su cuenta: quién es el usuario, cuánto cuesta un producto, qué descuento corresponde. Un campo oculto de un formulario o un valor numérico dentro de un JSON son visibles en el proxy y modificables; si el servidor los usa tal cual, la lógica de negocio depende de la buena voluntad del cliente.

En esta sala solo se lee: se identifica qué valores manda el cliente y que el servidor parece usar. Probar qué pasa si cambian es trabajo del módulo de lógica de negocio, y siempre dentro del alcance. Abre peticion-reservar.http y respuesta-reservar.http: el total de la reserva es el resultado de una cuenta.

Responde para continuar

En la petición que crea la reserva, ¿qué parámetro enviado por el cliente determina el importe? Escribe su nombre.

Ver pista de ayuda

La respuesta trae el total. Divide ese total entre los invitados y verás qué valor de la petición coincide.

El servidor anuncia su software y su versión en las cabeceras Server y X-Powered-By. No es un fallo explotable por sí mismo, pero le ahorra trabajo a quien busca qué versión corre; es un dato más para la enumeración. Se reporta con su peso real: informativo o bajo, con un arreglo concreto, que es quitarlas o dejarlas genéricas. Una versión anunciada no demuestra que esa versión esté vulnerable; solo que hay algo que comprobar.

Inflar un hallazgo menor es tan dañino como ocultar uno grave: el cliente aprende a no creer el informe. Lee las cabeceras de respuesta-mi-cuenta.http.

Responde para continuar

Las respuestas anuncian el servidor web y la versión de PHP. ¿Cómo se reporta?

Ver pista de ayuda

La cabecera ayuda a quien enumera, pero no demuestra una vulnerabilidad. El peso del hallazgo debe ser el real.

Inicia sesión para registrar tus puntos y progreso en el ranking.

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