Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                

Conceptos: ¿Por Qué Tienen Éxito Los Robos de Identidad?

Descargar como pdf o txt
Descargar como pdf o txt
Está en la página 1de 6

CONCEPTOS

Un servidor web manda un token o llave de identificación de sesión a un cliente web


tras una autenticación satisfactoria. Estos tokens de sesión diferencian múltiples
sesiones que el servidor establece con clientes. Los servidores web utilizan varios
mecanismos para generar tokens al azar y sus controles, para asegurarlos durante la
transmisión.

Secuestro de sesión hace referencia donde un atacante toma unas comunicaciones


TCP validas de sesión entre dos computadoras. Como la mayoría de las
autenticaciones ocurren en una sesión TCP, permite al atacante tomar acceso a esa
sesión. Los atacantes pueden esnifar todo el tráfico de una sesión TCP establecida y
realizar robos de identidad, de información, fraude, etc.

Un secuestro de sesión hace referencia a aprovecharse del mecanismo de generación


de token de sesión o sus controles de seguridad, por lo que el atacante puede
establecer una conexión no autorizada contra el servidor objetivo. El atacante puede
adivinar o robar un ID de sesión valido y usarlo para establecer una sesión con el
servidor. El servidor web responde a las peticiones del atacante como si se estuviese
comunicando con un usuario autenticado.

Los atacantes realizan ataques MitM o DoS para el secuestro de sesión.

¿POR QUÉ TIENEN ÉXITO LOS ROBOS DE IDENTIDAD?


• Algoritmo de ID de sesión débil o ID de sesión pequeños
• Tiempo de sesión indefinido
• Muchas contramedidas no funcionan sin cifrado
• Manejo inseguro de ID de sesión
• Computadoras usando el protocolo TCP/IP
• Sin bloqueo de cuenta por ID de sesión invalidos
PROCESO DE SECUESTRO DE SESIÓN
• Rastrear la conexión Mediante un sniffer de red
• Desincronizar la conexión Ocurre cuando el atacante cambia la
secuencia del numero ACK (SEQ/ACK) del servidor. Al hacerlo el
atacante manda datos nulos al servidor para que el contador SEQ/ACK
avance.
• Inyectar paquetes del atacante Una vez se interrumpe la conexión
entre el servidor y el objetivo se puede inyectar datos en la red o
participar de forma activa en el MitM
ANÁLISIS DE PAQUETES EN UN SECUESTRO DE SESIÓN “LOCAL”
• Se rastrea la sesión
• Se desincroniza la sesión
• Se inyectan comandos del atacante
TIPOS DE SECUESTRO DE SESIÓN
• Pasivo Roba la sesión, pero simplemente graba y analiza el tráfico que
se manda y recibe. Un método pasivo utiliza simplemente sniffers.
• Activo Se tira la conexión entre el servidor y el cliente y se participa de
forma activa, un ataque MitM es un ejemplo de Secuestro de sesión
activo
SECUESTRO DE SESIÓN EN EL MODELO OSI
• Nivel capa de red Es la intercepción de paquetes durante la transmisión
entre cliente y servidor en una sesión TCP/UDP. Este ataque provee al
atacante con información crucial, que será utilizada en el ataque a la
capa de aplicación.
• Nivel capa de aplicación Se trata de tomar el control sobre la sesión de
usuario HTTP al obtener su ID de sesión. En la capa de aplicación el
atacante toma el control de una sesión existente y puede crear nuevas
sesiones no autorizadas al usar datos robados. Generalmente ambos
suelen darse a la vez.

SECUESTRO DE SESIÓN EN LA CAPA DE APLICACIÓN


El atacante obtiene la ID de sesión para controlar una sesión existente o para crear
nuevas sesiones no autorizadas. En el nivel de aplicación el atacante roba o predice
una sesión valida para ganar acceso no autorizado al servidor web. Un atacante
implementa varias técnicas como el robo, predicción o fuerza bruta para conseguir una
sesión ID valida.

• Robo El atacante puede robarla mediante el acceso físico (adquiriendo


los ficheros que contienen los ID de sesión o el contenido en la
memoria) o herramientas como wireshark o SteelCentral Packet
Analyzer para esnifar el tráfico entre el cliente y el servidor.
• Predecir Se intenta predecir el ID de sesión al observar las variables de
la sesión y tratar de generarla mediante dichas variables.
• Fuerza bruta
Un token de sesión puede ser comprometido de varias formas:

• Esnifado de sesión
• Token de sesión predecible
• Ataque MitM
• Ataque MitB (Un troyano es el que registra toda actividad del usuario)
• XSS (Se inyecta código malicioso que captura tokens)
• CSRF
• Ataque Session replay (mandar el token o ID de sesión que ha usado
la víctima)
• Ataque Session fixation (Se manda un link malicioso a la víctima que
es el ID del atacante, si la víctima lo utiliza el atacante podrá utilizar esa
ID también)
• Usando servidor proxy malicioso
• Ataque CRIME (La posibilidad de la mitigación contra la compresión
HTTPS), las cookies son comprimidas usando el algoritmo de
compresión lossless data (DEFLATE) y su cifrado. Se manda a la
víctima un enlace a un sitio malicioso, que inyecta código malicioso en el
sistema de la víctima o le redirige al sitio malicioso. Si se hubiese
establecido ya una conexión HTTPS el atacante esnifa el tráfico y
manda peticiones HTTPS a la aplicación con esa cookie cifrada. El
atacante monitorizando el tráfico entre la víctima y la aplicación web
para capturar el valor comprimido y cifrado de la cookie. Tras capturarla
analiza su largo y predice el valor actual de la cookie. Tras este paso el
atacante puede impersonificar a la víctima y secuestrar su sesión para
robar información confidencial.
• Ataque “prohibido” (Forbidden) El atacante monitoriza las conexiones
entre la víctima y el servidor web y esnifa el contenido de las cadenas
que se envía de forma única (nonce) de los mensajes “handshake” TLS.
El atacante genera las llaves de autenticación usando el nonce y
secuestra la conexión, por lo que todo el tráfico entre la víctima y el
servidor web pasa por la máquina del atacante. En este punto el
atacante inyecya código js o campos web en la transmisión a la víctima,
lo que revelará información sensible de su sesión

SECUESTRO DE SESIÓN EN LA CAPA DE RED


Depende de secuestrar los protocolos de transporte e internet usados por una
aplicación web. Con este ataque se consigue información crítica que es utilizada
después en la capa de aplicación.

SECUESTRO TCP/IP
El atacante intercepta y establece conexión entre dos puntos usando paquetes
“spoofeados”, entonces pretende ser uno de los puntos. En esta aproximación el
atacante usa paquetes TCP spoofeados àra redirigir el tráfico TCP/IP a su máquina.

SPOOFING DE IP: SOURCE ROUTED PACKERS


Permite al atacante crear sus propios paquetes e insertarlos en la sesión TCP. Primero
spoofea una dirección IP, los paquetes son enrutados a origen (source-routed) por lo
que el emisor especifica la ruta de los paquetes por el origen del destinatario. Usando
estas técnicas los atacantes pueden engañar al servidor al pensar que se comunica
con el usuario.

Tras un spoofing de dirección IP el atacante altera la secuencia y los números ACK.


Una vez ha cambiado el atacante debe de inyectar paquetes “forjados” (forged
packets) a la sesión TCP antes de que el cliente pueda responder.

SECUESTRO RST
Implica el uso de paquetes RST usando un origen spoofeado y prediciendo el numero
ACK, La víctima cree que el origen de la conexión ha mandado el paquete RST y
resetea la conexión.

SECUESTRO CIEGO (BLIND HIJACKING)


Aquí el atacante intenta adivinar el siguiente ISN de una computadora para establecer
una conexión, el atacante manda datos maliciosos o un comando, como establecer
una contraseña para su posterior acceso, pero el atacante nunca podrá ver la
respuesta (por eso es ciego), para comprobarlo tendrá que comprobar si funcionan
dichos cambios realizados, por ejemplo, esa contraseña que ha establecido.

SECUESTRO UDP
UDP al no usar secuencia de paquetes y sincronización es más sencillo, porlo que un
atacante puede atacar antes una sesión UDP que una TCP. Como UDP es en caso de
fallo de conexión (conectionless) es muy fácil de modificar los datos sin que la víctima
se percate.

MITM USANDO FORJADO ICMP Y SPOOFING ARP


Utiliza un esnifado de paquetes para interceptar la comunicación entre el cliente y el
servidor. El atacante modifica la puerta de enlace por defecto del cliente y trata de
redireccionar los paquetes. Los paquetes entre el cliente y el servidor son enrutados a
través del atacante. Se puede hacer mediante ICMP o ARP.

HERRAMIENTAS PARA SECUESTRO DE SESIÓN

• Burpsuite
• OWASP-ZAP
• BetterCAP
• netool toolkit
• Websploit Framework
• Sslstrip
• JHijack
• Ettercap
• Cookie Cadger
• Hámster
HERRAMIENTAS PARA SMARTPHONE
• DroidSheep
• DroidSniff
• FaceNiff

CONTRAMEDIDAS

MÉTODOS DE DETECCIÓN
Esnifado de paquetes como wireshark y SteelCentral Packet Analyzer para monitorizar
la sesión. Adicionalmente se puede forzar una entrada ARP de forma manual y buscar
actualizaciones ARP con direcciones ARP repetidas, tormentas ACK (ACK storms),
tramas mandadas entre el cliente y el servidor con diferentes direcciones MAC.

Los métodos automatizados implican usar IDS e IPS

PROTECCIÓN
• SSH
• Pasar cookies de autenticación sobre HTTPS
• Implementar el uso log-out por el usuario al acabar con la sesión.
• Generar el ID de sesión tras un login correcto y aceptar ID de
sesión generadas únicamente por el servidor para evitar CSRF.
• Asegurar que los datos que se transmiten son cifrados e
implementados en un mecanismo con defensa en profundidad.
• Utilizar cadenas o números al azar MUY largos como llave de
sesión para evitar ataques de predicción o de fuerza bruta.
• Usar diferentes nombres de usuario y contraseñas (no reciclar
credenciales)
• Aleccionar y enseñar a los empleados
• Implementar un tiempo final (timeout) para la sesión cuando
“expire”.
• Evitar el uso del ID de sesión en la URL o petición al servidor
• Usar switches por encima de hubs por ataques MitM
• Asegurar protecciones contra ataques client-side y server-side
• Usar autenticaciones robustas como Kerberos o VPN P2P
• Configurar las reglas de spoofing de puertas de enlace
• Usar soluciones IDS
• Usar protocolos de cifrado como OpenSSH
• Usar firewall y configuraciones adecuadas del navegador.
• Proteger la cookie de autenticación con SSL
• Actualizar regularmente para solucionar vulnerabilidades TCP/IP
• Usar IPSec para cifrar la información de sesión
• Usar HPKP para la autenticación de usuarios en servidores web
• Habilitar al navegador el verificar la autenticidad usando servidores
network notary
• Implementar autentificación de nombres de entidades DNS
• Deshabilitar mecanismos de compresión de peticiones HTTP
• Utilizar cifrados CBC incorporando números al azar superiores a
255 bytes.
• Restringir los scripts CSRF como los scripts del lado del cliente
• Actualizar los navegadores a su ultima versión
• Usar scanners de vulnerabilidades como masscan para detectar
configuraciones incorrectas de sesiones HTTPS.
HERRAMIENTAS PARA DETECTAR SECUESTROS DE SESIÓN
• LogRhythm

PROCEDIMIENTO DE ESCANEO EN PENTESTING


• Se realiza una conexión normal con una de las máquinas.
• Se recopilan muchas ID de sesión
• Se intenta predecir el nuevo ID de sesión
• Se repite una nueva ID de sesión (Replay attack)
• (¿Se ha establecido la conexión? En el caso de que no…) Se hace
ataque de fuerza bruta contra el ID de sesión
• Se documentan lo que se ha descubierto

También podría gustarte