door Manuel Santos 3 jaren geleden
310
Meer zoals dit
Este informe del INCIBE, se basa en la protección de las cookies.
Aunque las cookies son el recurso más utilizado para las sesiones, he querido recordar que existe otra opción e indicar sus pros y contras.
Cada lenguaje de programación tiene sus propias herramientas para controlar las sesiones de los usuarios. Aquí vemos las de los 3 más empleados en los entornos web.
php guarda la sesión http en un archivo, se puede acceder mediante $_Session.
Recomendaciones:
Java funciona de forma parecida pero distinta a los otros ejemplos. La información de la sessión se almacena en la memoria del servidor, pero tambien se puede (si quisieramos) usar cookies.
Recomendaciones (para las cookies):
ASP.net funciona muy similar a php, con un objeto session que controla la sesión en el framework.
Recomendaciones:
Lo más simple del mundo, si el usuario ha olvidado cerrar la sesión o hemos programado mal el tiempo de validez de las cookies, simplemente podemos acceder como otro usuario.
Si se puede interceptar el tráfico web entre la víctima y el portal web, ahora más que nunca por el auge de las comunicaciones inalámbricas, también se puede capturar el identificador de sesión.
(Tan fácil como abrir el Wireshark y filtrar)
Este tipo de ataque sigue un camino distinto del resto, en vez de capturar un identificador de sesión valido, genera un identificador genuino (que no está asociado a ningún usuario por el momento) en el portal web afectado para, a continuación, tratar de que la víctima se autentique en el portal con él. De este modo, el atacante obtiene un identificador de un usuario autenticado que puede utilizar para realizar acciones en el portal afectado en nombre de la víctima.
Si una página web presenta una vulnerabilidad XSS un atacante puede aprovecharla para ejecutar código que capture el contenido de la cookie y se lo envíe.
Aprovechando los patrones de generación de identificadores de sesión que pueda utilizar el servidor se reduce el espacio de búsqueda, y se prueba todas las posibilidades posibles mediante fuerza bruta.