Documentos de Académico
Documentos de Profesional
Documentos de Cultura
del Software y
Sistemas Informáticos
Ciberseguridad Web
Tema 7
Gestión de
sesiones y
autorización en
aplicaciones web
ÍNDICE
1.Concepto de sesión
2.Implementación y propiedades de la sesión
3. Ataques a la sesión
4. Recomenciones seguridad de la sesión
5. Autorización: concepto
6. Implementación de la autorización
7. Ataques a la autorización
8. Recomendaciones
Gestión de la sesión
Sesión: Concepto
✓ Una sesión Web (o HTTP) es una secuencia de peticiones y respuestas (o transacciones) asociadas al
mismo usuario
✓ Las aplicaciones Web modernas y complejas deben mantener información (o el estado) de cada
usuario durante múltiples peticiones
✓ Las sesiones proporcionan la capacidad de establecer variables, como permisos o información de
cualquier tipo manejada por la aplicación, que se pueden utilizar en cada una de las interacciones del
usuario con la aplicación Web hasta que finalice su sesión
4
Gestión de la sesión
Sesión: Concepto
5
Gestión de la sesión
Sesión: Implementación
6
Gestión de la sesión
7
Gestión de la sesión
8
Gestión de la sesión
Sesión: Propiedades
9
Gestión de la sesión
Sesión: Propiedades
✓ Debe contener al menos 128 bits de datos aleatoriosPara obtener 128 bits pseudoaleatorios, el
identificador debe contener al menos 22 caracteres (128/log2(62) = 21,5). Los 3 primeros caracteres
no se generan aleatoriamente, por lo que los identificadores de sesión tienen una longitud de 25
caracteres.
.
10
Gestión de la sesión
11
Gestión de la sesión
Sesión: Ataques
12
Gestión de la sesión
Sesión: Ataques
✓ Revelación
✓ Ingeniería social, enlaces web, logs, buscadores, url:jsessionid...
✓ Captura:
✓ MITM
✓ CVE navegador
✓ XSS:
13
Gestión de la sesión
Sesión: Ataques
✓ SIDEJACKING
✓ (Firefox add-on) http://codebutler.com/firesheep
✓ CookieMonster http://fscked.org/projects/cookiemonster
✓ Hamster (y Ferret) http://hamster.erratasec.com
✓ The Middler http://inguardians.com/tools/middler-1.0.tgz
✓ Surfjack https://code.google.com/p/surfjack/
14
Gestión de la sesión
Sesión: Ataques
✓ Manipulación
✓ Cambiar URL en el navegador
✓ Auto URL-rewriting (parámetro GET)
✓ Cambiar, guardar y recarga de formulario
✓ Modificación fichero de cookies persistente
✓ Capacidades de edición de memoria en el navegador (extensiones)
15
Gestión de la sesión
Sesión: Ataques
✓ Fijación de sesión
16
Gestión de la sesión
Sesión: Recomendaciones
17
Gestión de la sesión
Sesión: Recomendaciones
18
Autorización
✓ Asegurarse que los usuarios solo pueden realizar acciones dentro de su nivel de privilegios.
✓ Controlar el acceso a los recursos protegidos usando un criterio basado en los roles y
privilegios asociados a los usuarios.
✓ Mitigar los ataques de escalada de privilegios que posibiliten acceder a usuarios a tareas de
administración o recursos no permitidos.
19
Autorización
20
Autorización
✓ Funcionalidad de la aplicación.
✓ Objetos en SGBD.
✓ Ficheros.
✓ Subredes.
21
Autorización
22
Autorización
23
Autorización
Autorización: Navegador
24
Autorización
25
Autorización
Autorización: Implementación
26
Autorización
27
Autorización
28
Autorización
Autorización: Administración
✓ Mandatory Access Control (MAC): el administrador del sistema tiene el control total sobre la
asignación de permisos a los recursos.
✓ Discretionary Access Control (DAC): los administradores delegan la administración de los
propietarios de los objetos que pueden asignar permisos en sus propios recursos
✓ ¿Cómo?
✓ Role-Based Access Control (RBAC).
✓ Perfiles
29
Autorización
Autorización: Ataques
30
Autorización
Autorización: Defensas
05
Autorización: Concepto
01
Sesión: concepto
06
Autorización:
02
Sesión: Propiedades
.Implementación
Longitud, aleatoriedad, no persistentes.
03 07
Sesión: Ataques Autorización: ataques
Sniffing, Fixation… TOCTOU, LFI.
04 08
Sesión: defensas Autorización: defensas
Cookies seguras Sesiones seguras, permisos
32
Juan Ramón
Bermejo
NUESTRAS
DIRECCIONES
Rectorado Sede Madrid
unir.net