Sie sind auf Seite 1von 16

INTRODUCCIN El presente documento trata acerca de un Sistema de

Deteccin de Intrusos (IDS, siglas en Ingls) llamado Snort desarrollado por


SourceFire. Para llegar a hablar de dicho sistema se definir lo que es un IDS
primeramente. A continuacin, se hablar de lo que es Snort, como funciona y
todos los aspectos bsicos del mismo. Como requerimiento de la entrega de
ste informe, se explicar detalladamente el proceso de instalacin y
configuracin de Snort, al mismo tiempo que se ilustrarn ejemplos de algunos
de los comandos que ste sistema IDS tiene como funcionalidades

1. QU ES UN IDS? Cortafuegos vs IDS Un IDS es un sistema que intenta


detectar y alertar sobre las intrusiones intentadas en un sistema o en
una red, considerando intrusin a toda actividad no autorizada o no que
no debera ocurrir en ese sistema. Segn esta definicin, muchos
podran pensar que ese trabajo ya se realiza mediante los cortafuegos o
firewalls. La principal diferencia, es que un cortafuegos es una
herramienta basada en la aplicacin de un sistema de restricciones y
excepciones sujeta a muchos tipos de ataques, desde los ataques
tunneling(saltos de barrera) a los ataques basados en las aplicaciones.
Los cortafuegos filtran los paquetes y permiten su paso o los bloquean
por medio de una tabla de decisiones basadas en el protocolo de red
utilizado. Las reglas verifican contra una base de datos que determina si
est permitido un protocolo determinado y permite o no el paso del
paquete basndose en atributos tales como las direcciones de origen y
de destino, el nmero de puerto, etc... Esto se convierte en un problema
cuando un atacante enmascara el trfico que debera ser analizado por
el cortafuegos o utiliza un programa para comunicarse directamente con
una aplicacin remota. Estos aspectos se escapan a las funcionalidades
previstas en el diseo inicial de los cortafuegos. Es aqu dnde entran los
IDS, ya que estos son capaces de detectar cuando ocurren estos fallos.
Definicin Un sistema de deteccin de intrusos (o IDS de sus siglas en
ingls Intrusion Detection System) es un programa usado para detectar
accesos no autorizados a un computador o a una red. Estos accesos
pueden ser ataques de habilidosos hackers, o de Script Kiddies que usan
herramientas automticas. El IDS suele tener sensores virtuales (por
ejemplo, un sniffer de red) con los que el ncleo del IDS puede obtener
datos externos (generalmente sobre el trfico de red). El IDS detecta,
gracias a dichos sensores, anomalas que pueden ser indicio de la
presencia de ataques o falsas alarmas. Algunas de las caractersticas
deseables para un IDS son: Deben estar continuamente en ejecucin
con un mnimo de supervisin. Se deben recuperar de las posibles
cadas o problemas con la red. Debe poderse analizar l mismo y
detectar si ha sido modificado por un atacante. Debe utilizar los
mnimos recursos posibles. Debe estar configurado acorde con la
poltica de seguridad seguida por la organizacin. Debe de adaptarse a

los cambios de sistemas y usuarios y ser fcilmente actualizable.


Funcionamiento El funcionamiento de estas herramientas se basa en el
anlisis pormenorizado del trfico de red, el cual al entrar al analizador
es comparado con firmas de ataques conocidos, o comportamientos
sospechosos, como puede ser el escaneo de puertos, paquetes
malformados, etc. El IDS no slo analiza qu tipo de trfico es, sino que
tambin revisa el contenido y su comportamiento. Normalmente esta
herramienta se integra con un firewall. El detector de intrusos es incapaz
de detener los ataques por s solo, excepto los que trabajan
conjuntamente en un dispositivo de puerta de enlace con funcionalidad
de firewall, convirtindose en una herramienta muy poderosa ya que se
une la inteligencia del IDS y el poder de bloqueo del firewall, al ser el
punto donde forzosamente deben pasar los paquetes y pueden ser
bloqueados antes de penetrar en la red. Los IDS suelen disponer de una
base de datos de firmas de ataques conocidos. Dichas firmas permiten
al IDS distinguir entre el uso normal del PC y el uso fraudulento, y/o
entre el trfico normal de la red y el trfico que puede ser resultado de
un ataque o intento del mismo. Tipos de IDS Existen varios tipos de IDS,
clasificados segn el tipo de situacin fsica, del tipo de deteccin que
posee o de su naturaleza y reaccin cuando detecta un posible ataque.
Clasificacin por situacin Segn la funcin del software IDS, estos
pueden ser: NIDS (Network Intrusion Detection System) HIDS (Host
Intrusion Detection System) Los NIDS analizan el trfico de la red
completa, examinando los paquetes individualmente, comprendiendo
todas las diferentes opciones que pueden coexistir dentro de un paquete
de red y detectando paquetes armados maliciosamente y diseados
para no ser detectados por los cortafuegos. Pueden buscar cual es el
programa en particular del servidor de web al que se est accediendo y
con que opciones y producir alertas cuando un atacante intenta explotar
algn fallo en este programa. Los NIDS tienen dos componentes: Un
sensor: situado en un segmento de la red, la monitoriza en busca de
trfico sospechoso Una Consola: recibe las alarmas del sensor o sensores
y dependiendo de la configuracin reacciona a las alarmas recibidas. Las
principales ventajas del NIDS son: Detectan accesos no deseados a la
red. No necesitan instalar software adicional en los servidores en
produccin. Fcil instalacin y actualizacin por que se ejecutan en un
sistema dedicado. Como principales desventajas se encuentran:
Examinan el trfico de la red en el segmento en el cual se conecta, pero
no puede detectar un ataque en diferentes segmentos de la red. La
solucin ms sencilla es colocar diversos sensores. Pueden generar
trfico en la red. Ataques con sesiones encriptadas son difciles de
detectar. En cambio, los HIDS analizan el trfico sobre un servidor o un
PC, se preocupan de lo que est sucediendo en cada host y son capaces
de detectar situaciones como los intentos fallidos de acceso o
modificaciones en archivos considerados crticos. Las ventajas que
aporta el HIDS son: Herramienta potente, registra comandos utilizados,
ficheros abiertos,... Tiende a tener menor nmero de falsos-positivos que

los NIDS, entendiendo falsos-positivos a los paquetes etiquetados como


posibles ataques cuando no lo son. Menor riesgo en las respuestas
activas que los IDS de red. Los inconvenientes son: Requiere instalacin
en la mquina local que se quiere proteger, lo que supone una carga
adicional para el sistema. Tienden a confiar en las capacidades de
auditoria y logging de la mquina en s. Clasificacin segn los modelos
de detecciones Los dos tipos de detecciones que pueden realizar los IDS
son: Deteccin del mal uso. Deteccin del uso anmalo. La deteccin
del mal uso involucra la verificacin sobre tipos ilegales de trfico de
red, por ejemplo, combinaciones dentro de un paquete que no se
podran dar legtimamente. Este tipo de deteccin puede incluir los
intentos de un usuario por ejecutar programas sin permiso (por ejemplo,
sniffers). Los modelos de deteccin basado en el mal uso se
implementan observando como se pueden explotar los puntos dbiles de
los sistemas, describindolos mediante unos patrones o una secuencia
de eventos o datos (firma) que sern interpretados por el IDS. La
deteccin de actividades anmalas se apoya en estadsticas tras
comprender cual es el trfico normal en la red del que no lo es. Un
claro ejemplo de actividad anmala sera la deteccin de trfico fuera de
horario de oficina o el acceso repetitivo desde una mquina remota
(rastreo de puertos). Este modelo de deteccin se realiza detectando
cambios en los patrones de utilizacin o comportamiento del sistema.
Esto se consigue realizando un modelo estadstico que contenga una
mtrica definida y compararlo con los datos reales analizados en busca
de desviaciones estadsticas significantes. Clasificacin segn su
naturaleza Un tercer y ltimo tipo bsico de clasificacin sera respecto a
la reaccin del IDS frente a un posible ataque: Pasivos. Reactivos. Los
IDS pasivos detectan una posible violacin de la seguridad, registran la
informacin y genera una alerta. Los IDS reactivos estn diseados para
responder ante una actividad ilegal, por ejemplo, sacando al usuario del
sistema o mediante la reprogramacin del cortafuegos para impedir el
trfico desde una fuente hostil.

2. QU ES SNORT? Snort es un sniffer de paquetes y un detector de intrusos


basado en red (se monitoriza todo un dominio de colisin). Es un software muy
flexible que ofrece capacidades de almacenamiento de sus bitcoras tanto en
archivos de texto como en bases de datos abiertas como lo es MySQL.
Implementa un motor de deteccin de ataques y barrido de puertos que
permite registrar, alertar y responder ante cualquier anomala previamente
definida. As mismo existen herramientas de terceros para mostrar informes en
tiempo real (ACID) o para convertirlo en un Sistema Detector y Preventor de
Intrusos. Este IDS implementa un lenguaje de creacin de reglas flexible,
potente y sencillo. Durante su instalacin ya nos provee de cientos de filtros o
reglas para backdoor, DDoS, finger, FTP, ataques web, CGI, Nmap... Puede

funcionar como sniffer (podemos ver en consola y en tiempo real qu ocurre en


nuestra red, todo nuestro trfico), registro de paquetes (permite guardar en un
archivo los logs para su posterior anlisis, un anlisis offline) o como un IDS
normal (en este caso NIDS). Cuando un paquete coincide con algn patrn
establecido en las reglas de configuracin, se logea. As se sabe cundo, de
dnde y cmo se produjo el ataque. An cuando tcpdump es considerada una
herramienta de auditora muy til, no se considera un verdadero IDS puesto
que no analiza ni seala paquetes por anomalas. tcpdump imprime toda la
informacin de paquetes a la salida en pantalla o a un archivo de registro sin
ningn tipo de anlisis. Un verdadero IDS analiza los paquetes, marca las
transmisiones que sean potencialmente maliciosas y las almacena en un
registro formateado, as, Snort utiliza la biblioteca estndar libcap y tcpdump
como registro de paquetes en el fondo. Snort est disponible bajo licencia GPL,
gratuito y funciona bajo plataformas Windows y UNIX/Linux. Dispone de una
gran cantidad de filtros o patrones ya predefinidos, as como actualizaciones
constantes ante casos de ataques, barridos o vulnerabilidades que vayan
siendo detectadas a travs de los distintos boletines de seguridad. La
caracterstica ms apreciada de Snort, adems de su funcionalidad, es su
subsistema flexible de firmas de ataques. Snort tiene una base de datos de
ataques que se est actualizando constantemente y a la cual se puede aadir o
actualizar a travs de la Internet. Los usuarios pueden crear 'firmas' basadas
en las caractersticas de los nuevos ataques de red y enviarlas a la lista de
correo de firmas de Snort, para que as todos los usuarios de Snort se puedan
beneficiar. Esta tica de comunidad y compartir ha convertido a Snort en uno
de los IDSes basados en red ms populares, actualizados y robustos. 3. CMO
FUNCIONA SNORT? En la versin de Windows, es necesario instalar WinPcap.
Este software consiste en un driver que extiende el sistema operativo para
permitir un acceso de bajo nivel a la red y una librera que facilita a las
aplicaciones acceder a la capa de enlace saltndose la pila de protocolos. Snort
puede funcionar en: Modo sniffer, en el que se motoriza por pantalla en
tiempo real toda la actividad en la red en que Snort es configurado. Modo
packet logger (registro de paquetes), en el que se almacena en un sistema de
log toda la actividad de la red en que se ha configurado Snort para un posterior
anlisis. Modo IDS, en el que se motoriza por pantalla o en un sistema basado
en log, toda la actividad de la red a travs de un fichero de configuracin en el
que se especifican las reglas y patrones a filtrar para estudiar los posibles
ataques. Una vez hemos instalado correctamente el programa y lo ponemos en
funcionamiento, debemos introducir en la base de patrones de ataques los que
queremos utilizar para detectar actividades sospechosas contra nuestra red.
Intuitivamente, el usuario tiende a utilizar un elevado nmero patrones para
protegerse, pero paradjicamente esto puede perjudicar la seguridad, ya que
no todos los ataques que Snort es capaz de detectar son tiles (para el
atacante) en el segmento de red que monitorizamos y en cambio corremos el
riesgo de sobrecargar la herramienta, que dejar pasar todos los paquetes que
no pueda analizar. Para utilizarlo correctamente, tambin es necesario estudiar
los patrones de trfico que circulan por el segmento donde el sensor escucha
para detectar falsos positivos y, o bien reconfigurar la base de datos, o bien

eliminar los patrones que los generan. En definitiva, pese a todas las
facilidades y automatizaciones y como casi todas las herramientas de
seguridad, es un apoyo que no puede sustituir la tarea del responsable de
seguridad que es quien debe analizar toda la informacin de forma minuciosa y
continuada. Funcionamiento del motor de Snort El motor de Snort se divide en
los siguientes componentes: Decodificador del paquete. Preprocesadores.
Motor de deteccin (Comparacin contra firmas). Loggin y sistema de alerta.
Plugins de salida. El decodificador de paquete, toma los paquetes de
diferentes tipos de interfaces de red, y prepara el paquete para ser
preprocesado o enviado al motor de deteccin. Los preprocesadores son
componentes o plugins que pueden ser usados con Snort para arreglar,
rearmar o modificar datos, antes que el motor de deteccin haga alguna
operacin para encontrar si el paquete esta siendo enviado por un intruso.
Algunos preprocesadores realizan deteccin buscando anomalas en las
cabeceras de los paquetes y generando alertas. Son muy importantes porque
preparan los datos para ser analizados contra reglas en el motor de deteccin.
El motor de deteccin es la responsable de detectar si alguna actividad de
intrusin existe en un paquete. El motor utiliza las reglas que han sido
definidas para este propsito. Las reglas (o cadenas) son macheadas contra
todos los paquetes. Si un paquete machea una regla, la accin configurada en
la misma es ejecutada. Dependiendo que detecte el motor dentro de un
paquete, el logging y sistema de alerta, se encarga de loguear o generar una
alerta. Los logs son almacenados en archivos de texto, archivos con formato
tcpdump u otro formato. Los plugins de salida toman la salida del sistema de
alerta y permiten almacenarlas en distintos formatos o reaccionar antes el
mismo. Por ejemplo: enviar emails, traps SNMP, syslog, insertar en una base de
datos, etc. Plugins de salida: Bases de datos (MySql, Postgres, etc) Syslog
XML Traps SNMP Mensajes SMB 4. COMANDOS DE SNORT Los siguientes son
los comandos que se pueden utilizar en Snort para obtener las diferentes
funcionalidades: -A Set alert mode: fast, full, console, or none //(alert file
alerts only)// -b Log packets in tcpdump format //(much faster!)// -c Use
Rules File -C Print out payloads with character data only //(no hex)// -d Dump
the Application Layer -e Display the second layer header info -E Log alert
messages to NT Eventlog. //(Win32 only)// -f Turn off fflush() calls after binary
log writes -F Read BPF filters from file -h Home network = -i Listen on
interface -I Add Interface name to alert output -k Checksum mode //
(all,noip,notcp,noudp,noicmp,none)// -l Log to directory -L Log to this
tcpdump file -n Exit after receiving packets -N Turn off logging (alerts still
work) -o Change the rule testing order to Pass|Alert|Log -O Obfuscate the
logged IP addresses -p Disable promiscuous mode sniffing -P Set explicit
snaplen of packet //(default: 1514)// -q Quiet. Don't show banner and status
report -r Read and process tcpdump file -R Include 'id' in snort_intf.pid file
name -s Log alert messages to syslog -S Set rules file variable n equal to
value v -T Test and report on the current Snort configuration -U Use UTC for
timestamps -v Be verbose -V Show version number -W Lists available

interfaces. //(Win32 only)// -w Dump 802.11 management and control frames


-X Dump the raw packet data starting at the link layer -y Include year in
timestamp in the alert and log files -z Set assurance mode, match on
established sesions //(for TCP)// -? Show this information

4. INSTALACIN Y CONFIGURACIN DEL IDS SNORT La instalacin se realiz una


distribucin Linux (Ubuntu 12.04 propiamente dicho) por medio de la terminal
de lnea de comandos. Se siguieron los siguientes pasos: 1. Abrir una terminal
2. Escribir el comando de instalacin de paquete sudo apt-get install snort

Dando permisos de superusuario para poder realizar la instalacin (debido al


sistema de permisos utilizado por las distribuciones de Linux), escribiendo la
contrasea en la siguiente lnea. En seguida se iniciar la instalacin.

2. A continuacin pedir la siguiente opcin de configuracin

3.
En este paso pide la direccin de red local (la cual va a ser la que se estar
monitoreando). En este punto puede haber 3 opciones de configuracin: Si es
una nica direccin se colocar con mscara de sub red /32 Si es un bloque
de 256 IPs se utilizar la mscara /24 Si es una red ms amplia se utilizar la
mscara /16 4. Una vez finalizado el proceso de instalacin se puede realizar la
configuracin completa por medio del comando.

4. Preguntar que opcin de arranque se desea configurar:

Se ve explicado claramente qu es cada tipo de arranque. En este caso se


escoger la configuracin del arranque manual. 6. Siguiente viene una ventana
de explicacin de lo que ser el prximo requisito a pedir, la interface de red
que se escanear.

Se explica que se puede utilizar el siguiente comando para encontrar la


interface

Con lo cual se nota que la interface necesaria en la wlan0 (ya que la conexin
se est realizando de manera inalmbrica). 7. En la siguiente opcin se escribe
la interface obtenida en la anterior instruccin

8. Ahora se deber escribir la direccin de red que se desea escanear (paso


similar al realizado durante la instalacin, paso 3).

9. Opcin de habilitar o deshabilitar el Modo promiscuo

Modo Promiscuo significa que se analizar todos los paquetes que pasen por el
segmento aunque no sean de una conexin propia.

11.Recibir resmenes electrnicos por correo de las alertas encontradas.

12. Se especifica el correo electrnico en que se desea recibir los resmenes


diarios.

13. Ahora se pregunta la cantidad de informes que se incluyen por alerta

14.Finalmente la solicitud del comando al finalizar para recargar las


configuraciones hechas.

15.Una vez finalizado el asistente de configuracin, se ejecuta el comando


mostrado en la anterior instruccin

PROCESO PARA LA INSERCIN DE UNA NUEVA REGLA 1. Crear un nuevo archivo


.rules en la carpeta /etc/snort/rules/

En este ejemplo se est creando el archivo sites.rules el cual contendr reglas


sobre: El usuario ingresa a la pgina de google El usuario ingresa a la
pgina de facebook Se est realizando un ping sobre la mquina host. 2. El
anterior comando abrir un nuevo archivo del programa gedit con el nombre
dado.

Como se dijo en el anterior paso se est realizando las 3 reglas. Se guarda y se


cierra el archivo.

3. De vuelta en la terminal se abrir ahora el archivo de configuracin de snort.


El cual se encuentra en la ruta mostrada en la siguiente imagen.

Al ejecutar el comando se abrir nuevamente gedit con el archivo de


configuracin de snort

De esta manera se ingresa la regla recientemente creada en el archivo de


configuracin y ya est cargada para ser revisada.

5. Ejemplo de las reglas anteriormente creadas en funcionamiento:

En este ejemplo se pueden notar tanto la regla de Facebook como la


regla de Ping en funcionamiento.
Ejecucin de snort 1. Nos dirigimos hacia el directorio de snort

2. Ejecutamos snort

En ste caso estamos utilizando los comandos A, -c y i con lo cuales estamos


estableciendo las salidas, el archivo de configuracin a utilizar y la interface a
escanear. 3. Inicia el proceso de snort

4. Nuevamente se muestra la aplicacin mostrando las reglas establecidas


anteriormente

Das könnte Ihnen auch gefallen