Análisis de Sesión con Burp Suite
Los tokens de sessión (Cookies, SessionID, o Campo Oculto) deben ser examinados para asegurar su calidad desde la perspectiva de la seguridad. Estos deben ser evaluados por criterios como aleatoriedad, unicidad, resistencia a análisis estático o criptográfico y fuga de información.
El análisis de la predictibilidad y aleatoriedad de ID de sesión debe ser emprendido para establecer la existencia de cualquier patrón reconocible o predecible. Estos análisis pueden ser realizados manualmente o con herramientas hechas a la medida para poder deducir cualquier patrón. Las pruebas manuales deben incluir comparaciones de ID de sesión entregados por las mismas condiciones de login, por ejemplo el mismo nombre de usuario, contraseña, y dirección IP. El tiempo es un factor importante que también debe ser controlado. Se debe realizar un alto número de conexiones simultaneas para obtener muestras en la misma ventana de tiempo y mantener la variable constante. Incluso una cuantificación de 50ms o menos puede ser demasiado y una muestra tomada de esta manera puede revelar componentes basados en el tiempo que de otra manera se perderían. Los elementos variables deben ser analizados sobre el tiempo para determinar si son incrementales por naturaleza. Cuando son incrementales, los patrones relacionados a un tiempo absoluto o transcurrido deben ser investigados. Varios sistemas usan el tiempo como una semilla para sus elementos pseudo aleatorios. Cuando los patrones son aparentemente aleatorios, hashes de una sola vía del tiempo u otras variaciones del entorno deben ser considerados como una posibilidad. Típicamente, el resultado de una hash criptográfico es un número decimal o hexadecimal, así es que debe ser identificable. En el análisis de secuencias de sesión, patrones o ciclos, elementos estáticos y dependencias del cliente deben ser todas consideradas como posibles elementos contribuyendo a la estructura y función de la aplicación.
Burp Suite
Burp Suite es una plataforma integrada para realizar evaluaciones de seguridad contra aplicaciones web. Sus diversas herramientas trabajan juntas a la perfección para apoyar el proceso completo de las pruebas, desde el mapeo inicial y análisis de la superficie de ataque de la aplicación web, hasta encontrar y explotar vulnerabilidades de seguridad. Burp Suite proporciona completo control, permitiendo combinar técnicas manuales avanzadas con automatización del estado del arte, para hacer el trabajo más rápido, más efectivo y más divertido.
Para la siguiente práctica se realizará un Análisis de Sesión utilizando Burp Suite contra DVWA (Damn Vulnerable Web Application).
Se sugiere en primera instancia limpiar o eliminar todas las Cookies del navegador utilizado. En el caso de Firefox, utilizar la opción “Edit -> Preferences -> Privacy -> Remove individual cookies -> Remove all Cookies”.
Configurar el uso de Burp Suite en Firefox utilizando FoxyProxy
Visitar la aplicación web objetivo utilizando el navegador web.
Se debe verificar que la petición se ha realizado sin Cookies.
Luego verificar que la respuesta contiene en la cabecera el campo “Set-Cookie” para el ID de sesión.
Ingresar a la pestaña “History” o Historial y hacer clic derecho sobre la solicitud adecuada. Sobre la nueva ventana aperturada seleccionar la opción “Send to Sequencer” o Enviar al Secuenciador.
La pestaña “Secuencer” será resaltada en color amarillo o anaranjado. Aquí se verifica que Burp Suite ha identificado correctamente el Cookie de Sesión.
Para iniciar el análisis, proceder a hacer clic en el botón “Start live capture” o Iniciar captura en vivo.
En el momento que se crea conveniente, es factible hacer clic en el botón “Analyze now” o Analizar ahora, para indicar a Burp Suite proceder con el análisis de todas las Cookies de Sesión capturadas hasta el momento.
Según los resultados obtenidos. La calidad total de aleatoriedad dentro del muestreo está estimado a ser: excelente. A un nivel de significancia del 1%, la cantidad de entropía efectiva está estimada en ser: 119 bits. La entropía es la medida de la incertidumbre ante un conjunto de mensajes, de los cuales se recibirá uno solo.
Sobre la Fiabilidad, se menciona que el análisis se basa en una muestra de 1235 tokens. La fiabilidad de los resultados es: razonable. Anotar que estas pruebas estáticas proporcionan solo una guía indicativa para la aleatoriedad de los datos de la muestra. Los resultados obtenidos pueden contener falsos positivos y negativos, y pueden no corresponder con la predictibilidad práctica de los Tokens de la muestra.
Fuentes:
http://www.portswigger.net/burp/
https://www.owasp.org/index.php/Testing_for_Session_Management_Schema_%2...
http://www.dvwa.co.uk/
http://getfoxyproxy.org/
http://www.portswigger.net/burp/help/sequencer_tests.html
Sobre el Autor
Alonso Eduardo Caballero Quezada - ReYDeS
Instructor y Consultor Independiente en Ciberseguridad
WhatsApp: https://wa.me/51949304030
Correo Electrónico: ReYDeS@gmail.com
Twitter: https://twitter.com/Alonso_ReYDeS
Youtube: https://www.youtube.com/c/AlonsoCaballero
LinkedIn: https://pe.linkedin.com/in/alonsocaballeroquezada/