domingo, 28 de abril de 2013

Análisis de estadísticas de red como herramienta de detección de incidentes

Las estadísticas de red, o network flows, son datos recopilados del tráfico de una red que básicamente suele consistir en registros de cada una de las conexiones. Pueden ser IP origen y destino, protocolo, número de paquetes enviados/recibidos, tiempo de conexión, etc. Esta información se almacena en base de datos para sacar estadísticas, muy útiles para los administradores de red, y también como vamos a explicar hoy, para la gestión de incidentes.
Usualmente estos datos pueden exportarse directamente de la electrónica de red, en formato sFlow o NetFlow, este último formato propietario de Cisco. Algunas aplicaciones usuales para manejar estos datos suelen ser SiLK o Argus.

¿Qué ventajas tiene un gestor de estadísticas de red?
  • Recopila información sobre el tráfico, sin tener que capturar ni esnifar.
  • No importa si el tráfico va cifrado.
  • Es fácil de implementar.
  • Actúa como histórico para usarlo de consulta.
  • Es un excelente complemento para un IDS o IPS.
Con esta información, es posible detectar incidentes que se hayan producido si sabemos qué buscar y cómo buscarlo. Por poner un ejemplo, se podría hacer un timeline bastante preciso de una intrusión o verificar después de la contención de una infección que ésta ha sido efectiva. Veamos algunas técnicas para buscar posibles incidentes:
  • Filtrado: Se pueden acotar los datos a una IP concreta que previamente hemos detectado como sospechosa. De este modo se puede tener un registro detallado de su actividad, y deducir si sus acciones han sido maliciosas. También podría filtrarse por una franja horaria o un puerto concreto que sabemos opera algún malware determinado.
  • Tráfico normal vs tráfico anómalo: identificando cual es el tráfico normal en una red, se puede identificar de forma sutil el tráfico anómalo y potencialmente malicioso a toda actividad que se salga del patrón habitual. Tráfico entrante hacia un puerto no identificado puede traducirse a un posible backdoor en un servidor. Así también sería posible detectar algún indicio de ataque dirigido.
  • “Dirty Values”: En análisis forense es habitual disponer una lista de valores predefinida a buscar. Como aquí no se tiene el contenido del tráfico, los patrones a buscar serían, por ejemplo, listados de direcciones IP maliciosas, como las disponibles en abuse.ch o Shadowserver.
  • Patrones de actividad: los incidentes de seguridad suelen identificarse por un comportamiento muy concreto. Conociendo el patrón que siguen, se puede detectar. Si la tarea se automatiza y se parametriza de acuerdo al entorno de la organización, se tendría una poderosa herramienta de detección de incidentes.
Con las técnicas descritas, a modo de ejemplo vamos a enumerar varios casos de incidentes y sus comportamientos habituales:
Botnets / Malware:
  • Incremento de peticiones DNS, mucho más de lo usual, o más que los demás hosts. Típico para el malware que usa fast-flux.
  • Tráfico SMTP, RPC, SMB o IRC inusual.
  • Tráfico de 1 origen y N destinos.
Escaneos
  • Tráfico de 1 origen y N destinos y excesivos paquetes SYN sin contestar.
DDOS
  • Tráfico de N orígenes y 1 destino y excesivos paquetes SYN sin contestar.
Fuga de datos / Servidor comprometido
  • Mucho tráfico saliente hacia una única IP.
  • Tráfico en horario poco habitual.
Más información:


Fuente: José L. Chica - www.securityartwork.es