Charla realizada durante H&B. Analizamos desde un punto de vista práctico la definición de las cookies, así como las diversas técnicas que podemos utilizar para aprovecharnos de estos elementos presentes en prácticamente la totalidad de las páginas web.
2. whoami
Co-organizador de H&B Valencia
Estudiante de ingeniería informática
toespar toespar.me
Creador de hackinfo.es
Co-organizador de TechfestUPV
Toni Escamilla
7. toespar
Historia time
·Primera vez usadas por Lou Montulli en 1994
·Desarrollo aplicación de comercio electrónico
·Servidores no retener las operaciones de
compra/venta intermedias
·Cookies solución al problema de implementar
carrito de compras virtual
·RFC 6265
13. toespar
Utilidad de las cookies
·Mantener la sesión del usuario
·Mantener la cesta de la compra
·Guardar la personalización de una página
·Hacer un seguimiento del usuario
·Guardar datos de seguridad
25. toespar
1st Party Cookies
·Party = dominio especificado en la cookie
·Cookie establecida por la URL en la que
estamos
·Sólo leídas por el sitio web (guiño, guiño)
·Mayor nivel de confianza
26. toespar
3rd Party Cookies
·Establecida por un dominio distinto al de la
barra de direcciones
·Petición dominio URL a dominio externo
·Cargar archivos externos
27. toespar
1st & 3rd Party Cookies
Third-Party
web server
First-Party
web server
Navegador
28. toespar
De sesión
·Permiten mantener un seguimiento de
movimiento entre páginas
·Almacenan un ID de sesión
·Se borran al cerrar el navegador
·Cargadas en memoria
31. toespar
Persistentes
·Permiten reconocer a un usuario durante
más de una sesión
·Configuradas para rastrear al usuario
·No eliminadas al cerrar el navegador
·Se almacenan en el disco duro
40. toespar
Envío y recepción
·Se envían en cada petición HTTP como
parámetro (Cookie header)
·HTTP protocolo sin estado
·Forma de mantener el estado
·Relaciona la solicitud de la página actual
con solicitudes de páginas anteriores
46. toespar
Cookie Poisoning
·Modificar el contenido una cookie
·Saltarse mecanismos de seguridad
basados en cookies
·Robo de identidad, obtener información no
autorizada, modificar algunos datos, robar
sesiones.
48. toespar
Me he comido DoS galletas
·Vulnerabilidad en mod_log_config del
servidor HTTP Apache (2.2.17-2.2.21)
·Formato "%{cookiename}C" para los logs
·Permite a un atacante producir una
denegación de servicio
·Cookie sin un nombre y un valor
50. toespar
¿Secure? Atribute
·Atributo Seguro para indicar que sólo se
envía mediante HTTPS
·No atributo para indicar procedencia
·Almacenadas como Nombre/Dominio/Ruta
pero leídas como Nombre/Valor
·Posibilidad de escribir un valor arbitrario
en el atributo Ruta
51. toespar
¿Secure? Atribute
·Atributo Seguro para indicar que sólo se
envía mediante HTTPS
·No atributo para indicar procedencia
·Almacenadas como Nombre/Dominio/Ruta
pero leídas como Nombre = Valor
·Posibilidad de escribir un valor arbitrario
en el atributo Ruta
58. toespar
¿Secure? Atribute
·Caso 1: Gmail chat gadget hijacking
·Caso 2: Robo de tarjeta de crédito en
China UnionPay
·Caso 3: Account hijacking contra Google
OAuth y BitBucket
·Caso 4: Validación insuficiente de cookies
en Bank of America
60. toespar
Gmail chat gadget hijacking
·Gadget del chat en la esquina inferior
izquierda
·https://mail.google.com
·El atacante puede poner gadget del chat en
la pantalla de la víctima
·Inyectando 25 cookies: 5 cookies de sesión
con 5 rutas específicas
62. toespar
Gmail chat gadget hijacking
·Gadget del chat en la esquina inferior
izquierda
·https://mail.google.com
·El atacante puede poner gadget del chat en
la pantalla de la víctima
·Inyectando 25 cookies: 5 cookies de sesión
con 5 rutas específicas
64. toespar
China UnionPay
·Añadir tarjeta requiere 4 pasos distintos en
distintas URL + mensaje de texto
·Envío de datos en una URL sin ID
·Solo una cookie de sesión “uc_s_key” para
la autenticación
·Obtener el número (ofuscado) de tarjeta de
crédito e historial de gastos
66. toespar
Google OAuth y BitBucket
·BitBucket permite utilizar la misma cuenta
de Google mediante OAuth
·accounts.google.com activado HSTS con
includeSubDomains
·SID/SSID/HSID dominio .google.com y
LSID/LSOSID dominio accounts.google.com
67. toespar
1. Bug HSTS
Google OAuth y BitBucket
·Overflow lista de cookies de tal forma que
corta la cookie de sesión legítima
2. 8 KB limitación de cabecera de cookie
69. toespar
Bank of America
·Una cookie con ruta / en la web podía ser
explotada para inyectar XSS
·Estricta validación de la cookie en la URL
de login
·Sólo si no cookie, nueva cookie en la
respuesta de la URL de login
·Inyección de 2 cookies
70. toespar
Bank of America
1. Cookie con los 3 primeros atributos
iguales que la original + atributo Expira
2. Cookie con el payload XSS + diferente
ruta /myaccount
·Asegurar que cookie legítima descartada
en URL de inicio de sesión
·Coincidir con primera URL
después del login
74. toespar
Misfortune Cookie
·Vulnerabilidad presente en routers
domésticos
·Permite a un atacante tomar el control de
forma remota con privilegios de admin.
·CVE 2014-9222
·Enviando un paquete a la IP pública