cross site request forgery , falsificación de petición en sitios cruzados (csrf)
DESCRIPTION
Cross Site Request Forgery , Falsificación de petición en sitios cruzados (CSRF). Por: Martin Serna Julián Camilo Guerra Jaime Tangarife. Definicion : . - PowerPoint PPT PresentationTRANSCRIPT
Cross Site Request Forgery, Falsificación de petición en sitios
cruzados (CSRF)
Por:Martin Serna
Julián Camilo GuerraJaime Tangarife
ADMINISTRACION DE REDES
Las vulnerabilidades relacionadas con la falsificación de petición en sitios cruzados permiten a un atacante la posibilidad de enviar una petición a una aplicación Web vulnerable ejecutando una acción a través de la víctima
Definicion:
ADMINISTRACION DE REDES
Vulnerabilidad CSRF
La representación simbólica de esta acción puede visualizarse en la imagen siguiente:
ADMINISTRACION DE REDES
Vulnerabilidad CSRFLa representación simbólica de esta acción puede visualizarse en la imagen siguiente:
ADMINISTRACION DE REDES
De forma esquemática, la situación podría representarse de la siguiente forma:
ADMINISTRACION DE REDES
ADMINISTRACION DE REDES
Una vez el site malicioso recibe la petición, envía en la respuesta a dicha petición pero contiene parte de código malicioso que permite aprovechar la vulnerabilidad de CSRF. Esta situación podría representarse de la siguiente forma:
De esta forma, nuestro servidor de catálogo recibe una petición para realizar una transferencia con un usuario autenticado y ejecuta la acción transfiriendo a la cuenta de puntos del usuario malicioso la cantidad indicada de forma oculta al usuario.
ADMINISTRACION DE REDES
Uso de un token de sesión personal
Uso de un token de sesión personal por acción
Uso de un token encriptado personal por acción
ADMINISTRACION DE REDES
Mecanismos de defensa
Formularios POST:
Formularios multipágina:
Comprobación del Referer:
ADMINISTRACION DE REDES
Falsa sensación de seguridad
ADMINISTRACION DE REDES
Responsabilizar al usuario:
Escaso impacto de los ataques:
Ni el firewall del servidor, ni la encriptación SSL, ni el framework de programación que se utilice defiende a la aplicación frente a estos ataques. Es tarea del desarrollador hacer que la aplicación sea lo menos vulnerable posible.
Aparte de estos mecanismos de falsa seguridad, hay una serie de ideas muchas veces aceptadas que hacen que este tipo de ataques proliferen.