Instalación de un NIDS - Snort

Snort es un sistema de detección de intrusos (IDS) basado en reglas, requiere de mucho espacio en disco, en dependencia de la cantidad de redes y tráfico que será auditado.

Este sistema nos monitorea el tráfico que se está generando en nuestra red y lo guarda a disco para que nosotros podamos posteriormente dedicarnos a revisarlo y ver qué actividades (maliciosas, no permitidas, etc) existe en nuestra red.

Instalación

Bajar la última versión para su CentOS (el3 o el4) de: http://dag.wieers.com/packages/snort e instalarla con RPM.

Modo sniffer

En este modo, el snort no actua como un IDS, sino que sencillamente puede oler lo que circula por nuestra red:

snort -v : Imprimirá los encabezados de los paquetes TCP/IP

snort -vd : Imprimirá los encabezados asi como los datos del paquete

snort -vde : Además imprimirá los encabezados de la capa Data Link

Es de hacer notar que los switches (opciones) se pueden enviar separadamente además, este ultimo comando, podía haberse invocado así:

snort -v -d -e

Packet logger

Hasta el momento hemos visto que el snort puede mostrarnos estos comandos a pantalla. Pero que tal si quisiéramos guardar paquetes a disco?

./snort -dev -l ./log

Lo que hemos hecho es agregar el switch -l indicándole que guarde los datos en el directorio ./log, si este directorio no existe hay que crearlo orimeramente.

Esto creara un directorio por cada IP que escuche en la red, si deseamos guardar nuestra red interna en una sola IP, podemos agregar:

./snort -dev -l ./log -h 192.168.1.0/24

esto crearía un solo directorio de históricos dentro de ./log para nuestra red interna (suponiendo que es 192.168.1.0/24)

Modo NIDS (Network Intrusion Detection System)

En este modo, el snort no guarda cada paquete que circula por la red, sino sencillamente los que ameritan por su patron.

Ejecutemos el snort en modo IDS:
snort -d -h 192.168.1.0/24 -l /var/log/snort -c /etc/snort.conf

Procedera a guardar los eventos inusuales dentro de /var/log/snort y leera la configuracion de estos eventos en: /etc/snort/snort.conf

Si tenemos una cantidad enorme de paquetes circulando por la red, podemos indicarle al snort que ejecute en modo fast, para guardar informacion minima de los paquetes y no tener cuellos de botella: snort -d -h 192.168.1.0/24 -l /var/log/snort -A fast -c /etc/snort.conf

Si queremos correr snort en modo de demonio, agregamos el switch -D:

snort -d -h 192.168.1.0/24 -l /var/log/snort -A fast -c /etc/snort.conf -D

En este modo, el snort comienza a correr y devuelve acceso al prompt.

Archivo de configuracion snort.conf

Este archivo es el encargado de ejecutar las reglas del snort que seran usadas para detectar cualquier intento de intrusion. Las reglas las guardaremos en /etc/snort

editemos /etc/snort/snort.conf y busquemos la palabra:

RULE_PATH ../rules

cambiemosla por: RULE_PATH /etc/snort

reiniciemos el snort: killall -HUP snort

o mejor, matémoslo y volvamoslo a llamar:

service snort restart

Eso es todo, el snort guardara los eventos definidos en snort.conf dentro de /var/log/snort/

eperez – Sun, 2006 – 02 – 05 16:06