Subido por fliperbaker flipi

jesusmarin Presentacion IDS-IPS

Anuncio
Sistemas IDS/IPS
Defensa reactiva a los
ataques en red
IDS vs IPS
Un sistema IDS (Intruder detection
system) detecta acceso o uso no
autorizado a una red o equipo.
 Trataremos IDS de red.
 “Sniffa” la información de la red en busca
de incidencias, NO NECESARIAMENTE
DE ATAQUES.
 Detecta la incidencia y registra
información asociada. Puede o no lanzar
una alerta.

IDS vs IPS
Un sistema IPS (Intruder protection
system) toma decisiones inteligentes
cuando encuentra una incidencia.
 Solo existen IPS para redes.
 Evolución natural de los sistemas IDS.
 Sniffa la información de la red en busca de
incidencias. Cuando encuentra una,
además de registrarla y mandar una alerta,
puede tomar una decisión.

IDS vs IPS
El IPS decidirá si hacer drop o reject al
paquete. Puede haber alguna otra opción,
como forward, según el IPS.
 Drop elimina el paquete, mientras que
reject además reinicia la conexión TCP. Si
no fuese TCP, mandará un mensaje de
destino inalcanzable.

Sistemas IPS
Cuatro formas de análisis o actuación.
 Detección basada en firmas: Analiza el
trafico en busca de patrones coincidentes
con una base de datos de firmas. Es un
funcionamiento similar al de los antivirus.
 Pro: Pocos falsos positivos, permite
detectar exploits u otro código malicioso.
 Contra: Hay que actualizar las firmas
frecuentemente.

Sistemas IPS
Detección basada en políticas: Se declaran
políticas de forma parecida a un firewall.
El sistema IPS analizará el tipo y destino
de los paquetes de red para saber como
actuar.
 Ej: Prohibido el acceso tcp al puerto 80
desde la subred 192.168.3.0/24
 Contra: Limitaciones de un firewall.

Sistemas IPS
Detección basada en anomalías: Crea
perfiles de uso de la red a través del
análisis estadístico y el aprendizaje
automático.
 Perfiles por usuarios y redes.
 Reaccionará cuando detecta un
comportamiento anómalo.

Sistemas IPS
Ej: Un usuario habitualmente solo crea
conexiones TCP a nuestro servidor por el
puerto 80. De repente, empieza a mandar
mensajes UDP a muchos puertos de
nuestro servidor. ¿Posible ataque?
 Pro: Se pueden detectar ataques
desconocidos o muy recientes sin que
estén en nuestras firmas.
 Contra: Propenso a falsos positivos.

Sistemas IPS
Detección por honeypot.
 Un honeypot es un equipo que, a primera
vista, parece ser vulnerable e interesante
para un atacante. Se equipan con
herramientas de sandboxing y analisis
forense.
 Podemos obtener mucha información de
los ataques sufridos por un honeypot.

IPS o IDS/IPS
Algunos autores afirman que un IPS es la
continuación de los sistemas IDS. Por
otro lado, los hay que afirman que un IPS
y un IDS son sistemas distintos.
 Cuestión: IPS lleva implícito o no IDS en
el nombre.
 Un IDS no podrá actuar como IPS. Un IPS
si como IDS.

IPS vs Firewall
Un IPS NO ES un cortafuegos.
 Cortafuegos: Siguen reglas de forma
estática, basadas en direcciones y puertos.
 IPS: Toman decisiones de forma dinámica,
basadas en reglas y en función del trafico.
 Ej: Prohibir trafico http al puerto 8090 si y
solo el número de secuencia TCP es 100.

¿Por qué un IPS?
MAGERIT: Metodología de Análisis y
Gestión de Riesgos de los Sistemas de
Información, del esquema nacional de
seguridad.
 Propone “H.tools.IDS IDS/IPS:
Herramienta de detección / prevención
de intrusión” como salvaguarda de tipo
general para nuestros sistemas.

¿Por qué un IPS?

En entornos industriales es inviable el uso
de antivirus de propósito general. Se debe
a:
◦ Equipos antiguos con capacidad limitada.
◦ No se pueden desperdiciar recursos.
◦ Altos costes de actualización del
equipamiento.

Muchos protocolos industriales no
implementan seguridad.
¿Por qué un IPS?

Solución: Externalizar la protección a la
red, a través de equipos específicos.
Sistemas IPS y Firewalls.

En redes de grandes organizaciones la
topología de la red y los cortafuegos no
puede ser suficiente: Ataques desde
dentro, uso incorrecto de la red o nuevas
técnicas de ataque. Un IPS puede mitigar
el problema.
¿Por qué un IPS?
En grandes redes publicas donde se
conectarán multitud de usuarios que
pueden no ser de nuestra confianza, un
sistema IPS proporcionará una nueva capa
de protección a la red.
 Un sistema IPS basado en sensores puede
ofrecernos una protección centralizada a
nuestros servidores en la nube. Cada
servidor analiza su propio trafico y
volcará registros en un destino común.

¿Dónde situar el IPS?
Es una cuestión importante: Dependerá
de las redes que se quieren proteger, y la
topología de las mismas.
 El sistema IPS deberá tener acceso y
conectividad a todas las redes que se
quieren proteger.
 En redes de medio cableado o separadas
geográficamente aparece un problema.

¿Dónde situar el IPS?
Se pueden instalar en serie o en línea, o
en paralelo.
 En paralelo se pierden funcionalidades del
IPS. En serie se perderá velocidad de la
conexión.

Conectado en paralelo
Conectado en serie
¿Dónde situar el IPS?
Algunos dispositivos, como switches,
disponen de facilidades para los IPS.
 Los switch de CISCO permiten crear una
VLAN a la que replicar todo el trafico.
Otras marcas disponen de un puerto
especial.

¿Dónde situar el IPS?
Solución: Usar un IPS basado en sensores,
distribuidos en los distintos puntos de
interés.
 Los sensores analizarán el trafico que les
llega de forma independiente, pero
tomarán decisiones basadas en reglas
comunes (No siempre).
 Entregarán los resultados en un destino
común.

IPS: ¿Hardware o software?
Existen IPS hardware y software.
 Los basados en hardware son más caros,
pero al estar instalados en un dispositivo
especializado en analizar el trafico, suelen
tener mayor potencia (Tiempo empleado
en analizar y capacidad de análisis).
Pensados para grandes servidores o redes
de servidores, donde una alta capacidad
del IPS resulta crítica.

IPS: ¿Hardware o Software?
Los basados en software son más baratos,
ya que podemos instalarlo en un equipo
convencional. Su capacidad de
funcionamiento estará limitada por el
hardware otorgado.
 Existen soluciones libres basadas en
Software muy buenas.
 Los sensores IPS también pueden ser
basados en hardware o software.

Soluciones IPS
Stonesoft 3206
 Desarrollada por McAfee
 Basada en hardware
 Firewall + IPS
 Analiza a 10Gbps
 Hay que renovar una suscripción anual a
las firmas y reglas

Soluciones IPS
IBM GX7800
 Desarrollada por IBM
 Basada en hardware
 Prometen bloquear un 97,7% de ataques
 Analiza a 20Gbps
 No especifica si requiere suscripción o si
las firmas son actualizables

Soluciones IPS
Cisco IPS 4270
 Analiza a 4Gbps
 Basada en hardware
 Cada unidad hardware es un sensor.
Solución pensada para distribuir varios
sensores.
 Suscripción gratuita a reglas. Permite
administrar tus propias reglas.

Soluciones IPS
Cisco IOS IPS
 Basada en Software
 Se instala en el firmware de los routers
Cisco
 Actualizaciones a firmas gratuitas y
automatizadas
 Detección basada en firmas y anomalías

Soluciones IPS
Suricata
 Open source, desarrollado por “Open
Information Security Foundation”
 Sistema de reputación por IP, aceleración
por GPU, detección automática de los
protocolos.
 Scripts lua avanzados para cuando el lenguaje
de reglas no es suficiente.
 Alertas en Json
 Análisis basado en reglas

Soluciones IPS
Snort
 Open source, desarrollado por
“SourceFire”.
 Análisis basado en reglas, firmas y
anomalías.
 Sistema muy ligero. Permite ser ejecutado
como sensor.
 Distribución de reglas oficial “gratuita”
(30 días de retraso).

Snort

Vamos a conocer a Snort
Open source (Licencia GNU-GPL v2)
 Fácil de usar
 Muy potente
 Comunidad muy activa desde 1998
 Más de 4 millones de descargas
 En 2009, el 4º IPS más usado, por debajo
de tres soluciones propietarias.

Snort
Snort se divide en dos componentes:
Snort Engine y los Snort Rules
 Snort Engine es el motor básico que se
encarga de interceptar el trafico y
analizarlo, en función unas reglas y firmas.
Como se ha dicho, se encuentra bajo
licencia GNU-GPL v2.

Snort
Snort Rules son un conjunto de ficheros
que contienen las reglas de Snort. Las
reglas indican al IPS como hacer la
detección basada en firmas así como la
detección basada en políticas.
 Es importante actualizar las reglas de
forma habitual, para estar al tanto de las
últimas amenazas.

Snort
Existen varios rule sets que pueden
dividirse en tres grandes grupos.
 Las community rules son las reglas que
“por defecto” de Snort. Se actualizan con
baja frecuencia y tienen un conjunto de
reglas muy básico. Cualquier persona
puede descargarlas para uso no
comercial.

Snort
Reglas VRT
 VRT (Vulnerability Research Team) es un
grupo de profesionales en seguridad
respaldado por Snort cuyo fin es
encontrar y estudiar amenazas de red.
 Desarrollan un conjunto de reglas
complejo, de alta calidad y que se actualiza
tan pronto como aparece una nueva
amenaza.

Snort
Las reglas VRT, de uso propietario, las
puede descargar cualquier usuario que se
registre de forma gratuita en la web de
Snort.
 Así mismo, un usuario puede comprar una
suscripción a las reglas de VRT.
 El precio es de 30€ para fines didácticos
o de investigación, y 300€ para uso en
producción.

Snort

Diferencias entre versión gratuita y de
pago:
◦ La versión gratuita recibe las actualizaciones
30 días más tarde que los usuarios
suscriptores.
◦ Los usuarios suscriptores pueden contactar
con el VRT para obtener soporte (falsos
positivos/negativos, ayuda en la creación de
reglas, etc…)
Snort
Por último, existen distribuciones “no
oficiales”. Son distribuciones de reglas
realizadas por terceros, ya sea de forma
gratuita o de pago.
 Cualquiera puede programar sus propias
reglas a través del lenguaje de reglas de
Snort.

Snort
Las reglas de Snort se pueden dividir en
políticas. Snort nos permite cambiar de
una política a otra fácilmente.
 Existen tres políticas en las reglas VRT y
comunitarias.
 Conectividad sobre Seguridad
 Balanceada
 Seguridad sobre conectividad

Snort
Conectividad sobre Seguridad intentará
reducir los tiempos de análisis, así como
prohibir al usuario lo menos posible.
 Solo se buscarán vulnerabilidades
aparecidas en los últimos 3 años.

Snort
La política balanceada es la política por
defecto los conjuntos de reglas.
 Buscará vulnerabilidades de los últimos
tres años, así como malware, kits de
explotacion y SQL injections.

Snort
La política seguridad sobre conectividad
dará prioridad a la seguridad por encima
de todo.
 Buscará vulnerabilidades desde “el
principio de los tiempos”.
 Buscará malware, kits de explotación, sql
injections, e intentará detectar el software
detrás de cada conexión.

Snort
Las firmas de Snort se pueden distribuir
en varios archivos en formato .rules
 Esto permitirá tenerlas mejor organizadas,
o tener un sistema IPS que solo atenderá
a reglas de un tipo.
 Los archivos se suelen dividir por
protocolo o contenido. Ej: Http, serverapache, server-mail, policy-spam, os-linux,
pua-adware, blacklist, browser-firefox.

Snort
¿Es mejor usar un conjunto de reglas por
defecto? ¿O utilizar un conjunto
personalizado?
 Un mayor número de reglas implica
mayor seguridad. Además implica mayor
tiempo de análisis, mayor latencia en la
conexión…
 ¡Hay que encontrar un equilibrio según la
situación!

Snort
Lenguaje de construcción de reglas muy
sencillo.
 En la página oficial de Snort existe un
manual bien documentado sobre la
construcción de reglas.
 Veamos una de ejemplo…

Snort

alert tcp any any -> any 21 (content:"site
exec"; content:"%"; msg:"site exec buffer
overflow attempt";)

Esta regla intenta alertar de un posible
intento de ataque en un servidor FTP.
Snort
Cabecera, en color rojo. Formato:
 Parametro1[alert, log, pass] protocolo
origen puerto -> destino puerto
(parametros)
 Alertar si hubiera una conexión TCP de
cualquier lugar y cualquier puerto, a
nuestros equipos en el puerto 21, si y
solo si en el paquete se encuentran las
cadenas “site exec” y “%”. El mensaje de
alerta será el valor de msg.

Snort

Se crearán reglas de mayor complejidad
utilizando operadores lógicos y los
distintos parámetros que acepta el
lenguaje.
Snort
Existe un archivo de configuración de
Snort llamado snort.conf
 Entre otras cosas, podemos configurar
donde escribirá las alertas.
 Las alertas normalmente se escriben en
consola (para tareas de prueba y
mantenimiento), en archivos log o en una
base de datos MySQL.

Snort




Snort se puede ejecutar como sensor
fácilmente.
Para utilizar Snort como sensor, cambiamos
en snort.conf el destino de las alertas a una
base de datos MySQL centralizada.
output database: log, mysql, user=snort
password=snortpass dbname=snort
host=mysql.host
Multitud de instalaciones de Snort pueden
escribir en la misma base de datos.
Snort
Escribir en una base de datos, además, nos
permitirá integrar Snort con multitud de
aplicaciones de alerta, estadísticas, etc…
 Los pocos recursos que necesita Snort
para ejecutarse, lo hacen ideal para
instalar un sensor en cada servidor de
producción.
 Ej: Servidor de email con un sensor que
ejecuta reglas de email, y servidor web
que ejecuta reglas de servidor web.

Snort
Snort, como la mayoría de los IPS, volcará
información que necesitamos trabajar
para que sea útil. Existen aplicaciones que
harán este trabajo por nosotros.
 BASE es una interfaz web de licencia
GPLv2 que ejecuta consultas en una base
de datos de Snort y generará informes.

Snort
Existe una gran comunidad de desarrollo
de plugins para Snort.
 Algunos ejemplos:
 PE Sig: Genera firmas para archivos
ejecutables que podemos usar en nuevas
reglas.
 Pulled_Pork: Un administrador de reglas.
Permite descargar actualizaciones y
activar/desactivar reglas facilmente.

Snort
ThePigDoktah: Otra herramienta de
generación de informes a partir de los
registros de Snort.
 SnoGE: Representa el trafico (origen y
destino) de los registros sobre Google
Earth.
 DumbPig: Detecta fallos de sintaxis en las
reglas de Snort.

Snort
Snort, y otros IDS/IPS, empiezan a
incorporar técnicas de fingerprinting.
 Estas técnicas les permiten detectar, en
ocasiones, el software que realiza la
conexión.
 Útil para rechazar conexiones de
software que, si bien puede no ser
malicioso, puede ser no deseado.

¡Gracias por su atención!
Descargar