Evasión de IDS Cómo atacar sin ser detectado 02 Junio 2005.

18
Evasión de IDS Evasión de IDS Cómo atacar sin ser detectado Cómo atacar sin ser detectado 02 Junio 2005

Transcript of Evasión de IDS Cómo atacar sin ser detectado 02 Junio 2005.

Page 1: Evasión de IDS Cómo atacar sin ser detectado 02 Junio 2005.

Evasión de IDSEvasión de IDSCómo atacar sin ser detectadoCómo atacar sin ser detectado

02 Junio 2005

Page 2: Evasión de IDS Cómo atacar sin ser detectado 02 Junio 2005.

2

Sistemas de Detección de IntrusosSistemas de Detección de Intrusos

¿Qué es un IDS?• Definición

Elementos básicos• Fuentes de información

• Motor de análisis

• Respuesta frente alertas.

Page 3: Evasión de IDS Cómo atacar sin ser detectado 02 Junio 2005.

3

Sistemas de Detección de IntrusosSistemas de Detección de Intrusos

Categorías

• NIDS vs HIDS

• DIDS

• Análisis de patrones vs Detección de anomalías

• Sistemas pasivos vs Sistemas Activos

Page 4: Evasión de IDS Cómo atacar sin ser detectado 02 Junio 2005.

4

Problemática de los IDS

Falsas alertas• Falsos positivos

• Falsos negativos

Insuficiente información• Datos de la topología

• Estado de la red

• Congestiones o problemas

• Tipo de S.O. de las máquinas

• Estado de las máquinas. Carga..

Ambigüedades• En los propios protocolos

• La variedad de implementaciones

• Inconsistencias en la red

Lo que define a un ataque no es un paquete,

sino el comportamiento que induce ese paquete en la

máquina objetivo.

Page 5: Evasión de IDS Cómo atacar sin ser detectado 02 Junio 2005.

5

Ataques contra NIDS

Ataques contra NIDS

• Ataques de Inserción

• Ataques de evasión

• Denegación de Servicio CPU Memoria Disco Ancho de banda

• Otro: spoofing, inundación de alertas,etc.

Page 6: Evasión de IDS Cómo atacar sin ser detectado 02 Junio 2005.

6

Ataque de Inserción

Page 7: Evasión de IDS Cómo atacar sin ser detectado 02 Junio 2005.

7

Ataque de Evasión

Page 8: Evasión de IDS Cómo atacar sin ser detectado 02 Junio 2005.

8

Capa de red

Ataques en la capa de red

Cómo conseguir Inserción o Evasión en el NIDS

• Cabeceras malformadas Ejemplo: checksum

• Opciones IP Strict source routing Timestamp

Page 9: Evasión de IDS Cómo atacar sin ser detectado 02 Junio 2005.

9

Ataque basado en TTL

Page 10: Evasión de IDS Cómo atacar sin ser detectado 02 Junio 2005.

10

Ataque basado en MTU

MTU = 1200 bytes

OBJETIVO

NIDS

PAQUETEDF = 1

1350 bytes

Desecha el paquete

Page 11: Evasión de IDS Cómo atacar sin ser detectado 02 Junio 2005.

11

Ataques de fragmentación (timeout-1)

Intruso NIDS

Fragmento 1 1 1

Fragmento 2 2

Fragmento 3

Espera un tiempo T determinado

2 3

1 2

1 2 2

TIMEOUTSe desecha el fragmento 1 Espera fragmentos...

ATAQUENo procesa el ataque completo

Page 12: Evasión de IDS Cómo atacar sin ser detectado 02 Junio 2005.

12

Ataques de fragmentación (timeout-2)

Page 13: Evasión de IDS Cómo atacar sin ser detectado 02 Junio 2005.

13

Ataques de fragmentación (overlap)

NIDS

Intruso

Fragmento 2

Fragmento 2'

Fragmento 3

Fragmento 1

El fragmento 2' sobrescribeAl framento anterior

1 2' 3

1 2 3

1 2 3

1 2' 3

1 2' 3

Page 14: Evasión de IDS Cómo atacar sin ser detectado 02 Junio 2005.

14

Capa de transporte

Ataques a nivel TCP

• Más elaborados

• Cabeceras malformadas Opciones no permitidas en ciertos estados. Datos en un paquete SYN Checksum

• Opciones TCP Ejemplo: PAWS

– Timestamp inválido

– Modificar el umbral

Page 15: Evasión de IDS Cómo atacar sin ser detectado 02 Junio 2005.

15

Sincronización del NIDS

Sincronización del NIDS• Estado

• Números de secuencia

• BCT = Bloque de control TCP

Puntos donde de-sincronizar el NIDS• Creación de BCT

• Reensamblado Duplicado de segmentos Superposición de segmentos

• Destrucción del BCT

Page 16: Evasión de IDS Cómo atacar sin ser detectado 02 Junio 2005.

16

Ataque en otras capas

Capa de enlace• Ataques de spoofing Inserción.

Capa de aplicación• HTTP

Técnica Ejemplo

Cambio de métodoGET /cgi-bin/some.cgi HEAD /cgi-bin/some.cgi

Codificación de la URL

cgbin %63%67%69%2d%62%69%6e

Transformación UNICODE

0x5C0xC19C U+005C /0xE0819C

Directorio 1 GET ////cgi-bin///vuln.cgi

Directorio 2 GET /cgi-bin/blahblah/../some.cgi HTTP/1.0

Directorio 3 GET /cgi-bin/././././vuln.cgi

Múltiples peticiones

    GET / HTTP/1.0\r\n    Header: /../../cgi-bin/some.cgi HTTP/1.0\r\n    \r\n

Page 17: Evasión de IDS Cómo atacar sin ser detectado 02 Junio 2005.

17

Conclusiones

Soluciones y consideraciones

• No es sencillo evadir NIDS Mucha información necesaria Mejores capacidades Se deben dar ciertos problemas de configuración Ataques a ciegas

• Soluciones Normalización del tráfico Uso de una base de conocimientos

– Mapeado Activo

Page 18: Evasión de IDS Cómo atacar sin ser detectado 02 Junio 2005.

18

CONFIDENCIALIDAD Y RESTRICCIONES DE USO

Toda la información contenida en el presente documento, sea de naturaleza técnica, comercial, financiera o de cualquier otro tipo, es propiedad de TISSAT y considerada como “Información estrictamente confidencial”, por lo que no se revelará a terceras partes quedando prohibida su reproducción, total o parcial, por cualquier medio sin el previo consentimiento expreso de TISSAT.

Roberto GutiérrezRoberto Gutiérrez

[email protected]@alumni.uv.es

FINFIN

¿Preguntas?¿Preguntas?