Snort. Formato, tipos e interpretación de las alertas.

Ya hemos visto aquí distintos aspectos de la configuración, uso, preprocesadores, reglas, bases de datos, y distintas posibilidades de trabajo con Snort. También los distintos programas que nos ayudan con sensores, políticas, análisis de alertas, etc.

alerta snort modo paquete capturado interpretacion

Casi lo tenemos todo, pero, ahora que lo tenemos funcionando, ¿ entendemos las alertas ?. En esta ocasión una reseña para la comprensión de los formatos de alertas de Snort.

Tipos de formatos de alertas y Modos de alerta.

Snort genera varios tipos de alertas, ya lo hemos visto. Lo recordamos.

Los tipos más importantes:

Fast: El modo Alerta Rápida nos devolverá información sobre: tiempo, mensaje de la alerta, clasificación, prioridad de la alerta, IP y puerto de origen y destino. Formato ASCII.

snort -A fast -dev -l ./log -h 192.168.4.0/24 -c ../etc/snort.conf

09/19-19:06:37.421286 [**] [1:620:2] SCAN Proxy (8080) attempt [**]
[Classification: Attempted Information Leak] [Priority: 2] …
… {TCP} 192.168.4.3:1382 -> 192.168.4.15:8080

Full: El modo de Alerta Completa nos devolverá información sobre: tiempo, mensaje de la alerta, clasificación, prioridad de la alerta, IP y puerto de origen/destino e información completa de las cabeceras de los paquetes registrados. Formato ASCII.

snort -A full -dev -l ./log -h 192.168.4.0/24 -c ../etc/snort.conf

[**] [1:620:2] SCAN Proxy (8080) attempt [**]
[Classification: Attempted Information Leak] [Priority: 2]
09/19-14:53:38.481065 192.168.4.3:3159 -> 192.168.4.15:8080
TCP TTL:128 TOS:0x0 ID:39918 IpLen:20 DgmLen:48 DF
******S* Seq: 0xE87CBBAD Ack: 0x0 Win: 0x4000 TcpLen: 28
TCP Options (4) => MSS: 1456 NOP NOP SackOK

Información de la cabecera del paquete:

TCP TTL:128 TOS:0x0 ID:39918 IpLen:20 DgmLen:48 DF
******S* Seq: 0xE87CBBAD Ack: 0x0 Win: 0x4000 TcpLen: 28
TCP Options (4) => MSS: 1456 NOP NOP SackOK

Añadimos en esta ocasión el formato tcpdump.

TCPdump: nos devuelve información de las alertas en formato binario. De esta forma Snort se ejecuta más rápido. Además, con el formato binario tcpdump, podemosrealizar un análisis más pausado y profundo con herramientas como Wireshark. Este tipo de alerta lo activaremos de la forma output log_tcpdump: tcpdump.log.

Otra forma de configurar nuestras alertas es el modo unified.

Unified: Los logs se registran en modo binario. Snort de ejecuta de forma más rápida. Se usa generalmente para la exportación de los datos de loss a otros programas. Este tipo de alerta lo activaremos de la forma output log_unified: filename snort.log, limit 128.

Otros formatos:

CSV: Las alertas se registraran de forma que puedan ser importadas a una base de datos. Es un formato universal usada para bases de datos que no son soportadas por Snort.

Modos de alerta.

Vimos también los modos de alerta.

Snort tiene 3 modos de alerta. Por defecto en formato pcap, ascii y none o no logging. Tanto el formato ascii como pcap son enviados y guardados por Snort en el logdir o carpeta de logs ubicada normalmte en snort/log que establecemos con el comando -l

Formato pcap:

logging_1.jpg

El formato pcap puede ser interpretado por analizadores tales como Windump/Tcpdump o Wireshark para su mejor comprensión y análisis.

Desde Wireshark tan solo tendremos que ir a File > Open y abrir el archivo pcap del volcado de la alerta.

Desde Windump/Tcpdump y con la opción -r leemos el archivo de formato pcap:

logging_2.jpg

El formato ascii es el formato antiguo de logging y bastante interesante ya que diferencia el volcado de las alertas atendiendo a las direcciones IP causantes de dichas alertas. Se establece entonces una estructura de directorios o carpetas en /log con las direcciones IP:

logging_3.jpg

Dentro de cada carpeta tenemos los volcados de las alertas correspondientes en formato ascii con todo el contenido de los paquetes:

logging_4.jpg

Cualquiera de estos archivos se abre con el Bloq de notas, Notepad o similar.

Como establecemos los modos de alerta. 

Los tres modos de alertas los podemos establecer con -K 

  • -K pcap (por defecto)
  • -K ascii
  • K  none

Alertas a syslogs y bases de datos.

Las alertas también las podemos enviar a syslog o a bases de datos.

Lo hemos visto aquí:

Enviando alertas a un syslog remoto con snort.

PostgreSQL 8.4. Creando base de datos para Snort. Volcando alertas a través de ODBC.

Snort. Enviado log a base datos mysql.

Formatos de alertas.

Si activamos la salida de las alertas en modo Fast y abrimos el archivo alerts.ids tenemos:

alerta snort modo fast interpretacion

  • 03/02-11:04:35.256648 marca de tiempo
  • 1:382:7 numeración asociada a la descripción de la alerta
  • ICMP PING Windows nombre dela alerta
  • Classifications: Misc activity clasificación de la alerta contenida en el archivo classification.config.
  • Priority: 3 prioridad de la alerta
  • ICMP protocolo asociado a la generación de la alerta
  • 192.168.1.5 origen que genera la alerta
  • 192.168.1.239 destino de quien genera la alerta

Para el modo Full:

alerta snort modo full interpretacion

  • 1:382:7 numeración asociada a la descripción de la alerta
  • ICMP PING Windows nombre de la alerta
  • Classifications: Misc Activity clasificación de la alerta contenida en el archivo classification.config.
  • Priority: 3 prioridad de la alerta

Esta parte que viene a continuación correspondería con Frame Wireshark de que nos  muestra información completa de la trama capturada. Tamaño total, etc. y Ethernet.

  • 03/02-11:06:05.314380 marca de tiempo
  • 0:4:75:ED:89:DF -> 0:15:C5:89:85:5B direcciones físicas MAC de origen y destino
  • type:0x800 corresponde a Type IP
  • len:0x4A corresponde a Frame Length. Tamaño del frame o paquete  (74 bytes)

Esta parte corresponde a Internet Protocol (IP) e Internet Control Message Protocol (ICMP) con información de los campos de las cabeceras:

  • 192.168.1.5 -> 192.168.1.239 origen y destino
  • ICMP protocolo
  • TTL:128 tiempo de vida
  • TOS:0x0 tipo de servicio
  • ID:56307 Identificador de sesión
  • IpLen:20 corresponde con la cabecera IP Tamaño de la cabecera o Header Length (20 bytes).
  • DgmLen:60 corresponde con total Length (60)
  • Type:8  Code:0  ID:1280   Seq:12288  ECHO corresponde a ICMP, tipo código, identificador y se trata de un Ping Echo request
  • [Xref => http://www.whitehats.com/info/IDS169%5D referencia de la alerta IDS169/ping-windows2000 Esta referenca está obsoleta.

Parelelamente, e independientemete de modo de alerta, y si hemos activado la opción -K ascii, Snort creará una serie de carpetas con la siguiente información:

alerta snort modo paquete capturado interpretacion

El el paquete tal como lo capturaríamos con TCPdump, Windump, etc. con la salida hexadecimal de la cabecera ICMP.

Seguimos…

Para el modo tcpdump, tendremos en nuestra carpeta una serie de archivos del tipo tcpdump.log.1267531201. Si lo abrimos con Wireshark tendremos:

alerta snort modo tcpdump interpretacion wireshark

———-

Enla proxima, veremos el significado dealgunas alertas….

Esta entrada fue publicada en Seguridad y redes, Snort. Guarda el enlace permanente.

3 respuestas a Snort. Formato, tipos e interpretación de las alertas.

  1. Alfredo dijo:

    Hola, tengo una pregunta, ojala me puedas ayudar.
    Implemente un IDS (snort específicamente) en una red local 192.168.0.0/24.
    El IDS esta sobre ubunto 11.10 con snort
    Configure en un switch catalyst 2950 un puerto espejo y ahí coloque el snort
    Los detalles son lo siguientes:
    1) Al conectar al puerto el servidor en ubuntu me indica que la red cableada esta desconectada
    Con el ifconfig me muestra que no se le asigna ninguna IP servidor en la interfaz eth0
    2) Al revisar el switch indica
    Session 1
    ———
    Type : Local Session
    Source Ports :
    Both : Fa0/1-23
    Destination Ports : Fa0/24
    Encapsulation : Native
    Ingress: Disabled
    y el puerto 24
    FastEthernet0/24 is up, line protocol is down (monitoring)
    Hardware is Fast Ethernet, address is 0015.fa2a.e698 (bia 0015.fa2a.e698)
    MTU 1500 bytes, BW 100000 Kbit, DLY 100 usec,
    reliability 255/255, txload 1/255, rxload 1/255
    Encapsulation ARPA, loopback not set
    Keepalive set (10 sec)
    Full-duplex, 100Mb/s, media type is 100BaseTX

    3) El snort esta funcionando pero no detecta nada

    4)Al conectar el servidor en otro puertodel switch me asigna ya IP y tengo internet.

    Que estoy configurando mal? para que funcione el snort.

    Gracias

  2. Laura dijo:

    Seria bueno que mejoraras un poco la ortografia…😉
    y los tutoriales estan muy buenos.

    chaos.

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s