Como parte de algunas pruebas de lápiz básicas que me invitaron a hacer en un sitio en vivo, logré acceder a las cookies de otros usuarios.
Lo primero que me viene a la mente que podría usarse para demostrar el alcance de esta vulnerabilidad sería secuestrar la sesión. Sin embargo, me cuesta identificar qué parte de la cookie se utiliza para identificar de forma única la sesión. ¿Puedo esperar ver solo un campo de ID de sesión? Hay muchos componentes diferentes (posiblemente muchos) de la cookie para su sitio, y varios de estos campos difieren de una sesión a otra (he iniciado sesión con 2 cuentas falsas).
He intentado algunas formas de configurar estas cookies ('editar esta cookie' en chrome y 'firebug' en Firefox) pero cuando actualizo la página, no estoy conectado.
¿O es esto bastante subjetivo y específico para el sitio?
Para agregar algo de claridad a mi pregunta, estoy buscando un ejemplo de cómo puedo cambiar de sesión usando las herramientas que he mencionado anteriormente (tal vez me puedas dar un ejemplo de cómo puedo hacer esto por mi cuenta) ¿Un sitio conocido dado un ID de sesión de un navegador usado en otro?).
Además, lo que es más importante, sería genial si pudiera darme una idea de cómo un examinador de bolígrafos puede identificar la parte de la cookie responsable de la identificación de la sesión.
EDITAR
Una de las cosas que lo complica aún más es a lo que tengo acceso en document.cookie
. Inicie las herramientas de desarrollo para esta página, eche un vistazo a document.cookie
, stackexchange no parece mantener el ID de sesión ahí. Pero si miro las opciones de almacenamiento en las herramientas de desarrollo, está ahí. Eso está bien, pero ¿cómo podría un ataque XSS acceder a este lado del cliente? En la lectura adicional, esto parece ser una cookie HttpOnly
- entonces esta es una protección contra XSS, ¿verdad? Entonces, si mi sitio objetivo empleara esto, ¿no sería vulnerable?