Snort Instalacion y Configuracion PDF
Snort Instalacion y Configuracion PDF
Snort Instalacion y Configuracion PDF
INSTALACIN Y CONFIGURACIN
De esta forma el IDS puede comprobar todos los ataques producidos, aunque
muchos de ellos no se hagan efectivos. Genera gran cantidad de informacin en los logs,
que puede resultar contraproducente.
Dentro de esta ubicacin, como se muestra en la figura 3-1, se puede situar el IDS
atendiendo a los siguientes esquemas:
2 Utilizacin de Sistemas de Deteccin de Intrusos como Elemento de Seguridad Perimetral
a) IDS colocado tras un Hub (concentrador que une conexiones y no altera las
tramas que le llegan).
En los dos primeros mtodos se replican los datos mediante hardware y en el tercer
mtodo se hace mediante software. El procedimiento para instalar Snort en modo bridge
es el siguiente:
Una vez que se ha seleccionado la ubicacin del IDS en nuestra red se procede a su
instalacin y configuracin. Seguidamente se describe el proceso seguido para ello.
3 Instalacin automtica
Para instalar Snort en un equipo GNU/Linux, se puede proceder de dos formas:
intalndolo y compilndolo manualmente o descargando los paquetes ya compilados.
Si se desea instalar Snort y Mysql directamente desde las fuentes, bastar con
ejecutar el comando:
yum install snort
O yum install snort-mysql si se quiere descargar snort para que almacene las alertas
en mysql. As se descargarn ya los paquetes compilados de snort y mysql y las
dependencias necesarias (libpcap, pcre,..).
Flex
Bison
Libpcap
Pcre
PCRE es una librera que implementa funciones de pattern maching. Para instalar
pcre hay que realizar los siguientes pasos:
Se descomprime el paquete:
tar xvfz pcre-7.4.tar.gz.
Una vez instaladas las dependencias, para instalar snort hay que seguir los siguientes
pasos:
En el caso de que se quiera compilar Snort para que tenga soporte para MySQL, se
deben de tener en cuenta las siguientes consideraciones:
5 Configuracin
En primer lugar para configurar Snort se van a crear los directorios que necesita para
trabajar:
A continuacin se deben copiar los ficheros necesarios para poder trabajar con
Snort:
Ficheros de configuracin.
Firmas:
Preprocesadores:
Configurar los plugins de salida. Snort se puede configurar para que tenga
varios modos de salida. Estos modos de salida son: por pantalla, en ficheros de
log, en una base de datos, con syslog (servidor de eventos del sistema) y con
varios formatos como en formato binario (para exportar datos a otros
programas).
Para realizar una configuracin bsica de Snort, se pueden hacer las siguientes
modificaciones bsicas sobre el archivo de configuracin de Snort:
6 Modos de ejecucin
Snort es una herramienta que funciona en cuatro modos:
Sniffer Mode.
Packet Logger Mode.
Network Intrussion Detection System (NIDS).
Inline Mode.
fichero de configuracin de
snort.
Para iniciar el modo sniffer y visualizar en pantalla todo el trfico TCP/IP se debe
de ejecutar el comando:
snort -v
Si se se quiere visualizar los campos de datos que pasar por la interfz de red se
ejecuta como se indica a continuacin:
snort -dev
Para que Snort funcione en modo IDS, se debe utilizar el parmetro -c directorio
hacia snort.conf.
7 Frontends
La idea general es que el front-end es el responsable de recolectar los datos de
entrada del usuario, que pueden ser de muchas y variadas formas, y representarlos de
forma que puedan ser analizados de un modo ms simple.
12 Utilizacin de Sistemas de Deteccin de Intrusos como Elemento de Seguridad Perimetral
ACID
BASE
SNORTSMS
SnortSnarf
Tambin se puede proceder a instalarlo directamente desde las fuentes. Para ello, se
escribe en lnea de comandos:
yum install php
Captulo 3. Instalacin y Configuracin 13
Para instalar el servidor MySQL para que almacene las alertas de snort se deben
de ejecutar los siguientes comandos:
yum install mysql-server
yum install mysql-devel
A continuacin se debe de crear en MySQL una base de datos para registrar las
alertas del sistema de deteccin de intrusos. Para ello, se deben de realizar los siguientes
pasos:
Se puede crear un usuario especfico para la base de datos snort, para no usar el
usuario root:
GRANT ALL PRIVILEGES ON snort.*TO snort@localhost IDENTIFIED BY
'test';
Ntese que el login y el password para la base de datos snort deber ser el
mismo que el especificado en el archivo /etc/snort/snort.conf.
A continuacin se crean las tablas para la base de datos de snort, importndolas del
archivo create_mysql que se encuentra en el subdirectorio /schemas de donde se
descomprimieron las fuentes:
Para comprobar que se han creado las tablas correctamente se pueden realizar los
siguientes pasos:
Se entra en MySql:
mysql -u root p snort
Para ver las tablas que se han creado para nuestra base de datos snort se ejecuta:
show tables;
7.4.1 ACID
Para ponerla en funcionamiento bastar con que realizar los siguientes pasos:
Captulo 3. Instalacin y Configuracin 15
Una vez hecho esto, se necesitan instalar los paquetes jpgraph y adodb para el
correcto funcionamiento de ACID como se indica a continuacin:
Si se desea tambin se pueden crear las tablas directamente ejecutando los siguientes
comandos:
Para ver si las tablas se han creado correctamente en primer lugar se selecciona
la base de datos snort:
use snort;
Se podr ver la estructura final de la base de datos snort con las 20 tablas creadas
(vase la figura 3-9).
Captulo 3. Instalacin y Configuracin 17
7.4.2 BASE
Para ponerla en funcionamiento bastar con que realizar los siguientes pasos:
Para poder utilizar BASE se necesitan tener instalados los paquetes adodb e
Image_Graph. A continuacin se ver cmo se instala cada uno de los paquetes:
Adodb
Image_Graph
Para instalar el paquete Image_Graph hay que utilizar el instalador pear. Para ello,
el primero paso que hay que realizar es instalar el mdulo php-pear. Se puede instalar a
travs de go-pear siguiendo los siguientes pasos:
7.4.2.2 Configuracin
El siguiente paso es indicar los datos de la conexin a la base de datos. Para ello
se contestan a cada una de las opciones que se indican:
o Pick a Database Type: MySQL
o Database Name: snort
o Databse host: localhost
o Database port:
o Database User Name: snort
o Database Password: test
Una vez introducidos todos los datos se pulsa el botn Enviar Consulta para
continuar.
Una vez que el sistema ha sido configurado correctamente hay que quitar los
permisos de escritura del usuario apache ejecutando el siguiente comando:
chmod 550 /var/www/html/base -R
Si se desea ver las tablas que se han creado en el proceso de instalacin debe
ejecutar los siguientes comandos:
Y finalmente para ver la estructura final de la base de datos snort (vse figura
3-15), se ejecuta:
show tables;
.
Figura 3-15. Tablas de snort con BASE instalado
7.4.2.3 Instalacin de base-plugins
Para instalar el plugin SnortCenter de BASE lo primero que hay que hacer es
descargar el paquete base-0.9.7-plugin-v1.tar.gz de la pgina
http://base.secureideas.net/.
Para utilizar BASE con el plugin SnortCenter tan slo hay que conectarse a la
direccin http://localhost/base. (vase figura 3-16).
7.4.3 SnortSMS
El Sensor IDS de SnortSMS tiene un Agente que usa un portal web que funciona
como listener para recibir y enviar informacin hacia y desde el Colector SnortSms. Los
scripts del Agente estn escritos en PHP y requieren un servidor web en el sensor para
escuchar las peticiones del Colector. Se puede elegir el servidor web Apache, aunque en
este caso se ha optado por usar el servidor web lighttpd porque tiene un tamao
pequeo, puede soportar autenticacin HTTP, php-cgi y SSL.
Barnyard es una herramienta opcional que permite que las alertas de Snort sean
propagadas a la base de datos central en background. Aunque Snort tiene la
funcionalidad de escribir los eventos en la base de datos directamente, se recomienda
Barnyard porque es ms seguro y libera a Snort de la latencia y entradas errneas que
podran ocasionar la eliminacin de eventos.
Las principales caractersticas que posee esta herramienta son las que se nombran a
continuacin:
Gestin Centralizada de los Sensores. Unifica todos los sensores bajo una
interfaz comn. Permite crear y compartir polticas de configuracin globales a
travs de los sensores IDS, y arrancar y parar sensores de forma remota.
Monitorizacin del Estado. Monitoriza las estadsticas del estado de todos sus
sensores.
24 Utilizacin de Sistemas de Deteccin de Intrusos como Elemento de Seguridad Perimetral
SnortSMS est diseado para funcionar sobre dos sistemas Linux: uno que realice la
funcin del Colector SnortSMS y otro la del Sensor IDS SnortSMS, aunque ambos
podran convivir en la misma mquina.
Colector SnortSMS
Posteriormente se descomprime:
tar xvfz snortsms-1.7.8.tar.gz
Se copia la carpeta en el directorio del servidor web Apache donde residir el
SnortSMS Collector, en este caso: /var/www/html:
cp /root/snortsms-1.7.8 /var/www/html
Se asume que se tienen instalados todos los componentes necesarios. En este caso se
va a instalar el sensor en el mismo host donde residir el Colector, si bien puede
localizarse en un host remoto. Para el IDS Sensor se va a instalar el servidor web
ligtthpd porque es ms recomendable, aunque tambin podra utilizarse el servidor web
Apache.
26 Utilizacin de Sistemas de Deteccin de Intrusos como Elemento de Seguridad Perimetral
Lighttpd
Una vez instalado lighttpd se debe proceder a su configuracin. Para ello se edita el
archivo lighttpd.conf que se encuentra en /etc/lighttpd.
Se indica el directorio raz del servidor. En este caso se trata del subdirectorio
creado anteriormente:
server.document-root = "/var/www/lighttpd/"
server.bind = "192.168.1.179"
Instalar el Agente
cp /var/www/html/snortsms-1.7.8/Agent/agent.php /var/www/html/snortsms-
1.7.8 /var/www/html
Si se quiere proteger el agente con autenticacin http, tenemos que crear un archivo
usuario/password. Se trata simplemente de crear un archivo de texto plano con el
usuario y el password separados por dos puntos. Es decir: usuario:password
Una vez realizados los pasos anteriores se puede testear el funcionamiento del
agente. Para ello, en el navegador web se escribe:
http://<userid>:<password>@<sensorip>:<port>/agent.php?ac=test
SnortSMS Collector
Para instalar pear-DB, se debe instalar la herramienta pear, que se ha explicado para
instalar BASE.
Captulo 3. Instalacin y Configuracin 29
magic_quotes_runtime = Off
max_execution_time = 120
max_input_time = 120
memory_limit = 100M
post_max_size = 20M
upload_max_filesize = 20M
include_path=".:/var/www/html/base/pearweb_gopear-
1.1.1/public_html/PEAR"(localizacin del ejecutable pear aadido con go-pear)
Si se quiere tener una base de datos central para todos los sensores se puede crear la
base de datos de Snort. En este caso, ya se considera que se ha creado en el apartado de
Instalacin y Configuracin de Snort.
Por tanto, slo ser necesario modificar la base de datos de eventos de snort. Para
ello se procede de la siguiente forma:
Una vez realizados los pasos anteriores, queda configurar las propiedades globales
de SnortSMS desde la interfaz web, como se explica a continuacin:
A continuacin se describen las principales propiedades que hay que configurar para
poner en funcionamiento SnortSMS, y que se pueda comunicar con el Agente.
External Programs
34 Utilizacin de Sistemas de Deteccin de Intrusos como Elemento de Seguridad Perimetral
Paths
Local directory for temporary files /var/tmp/snortsms
(must be read/writable by web server)
SnortSMS log file: Full path and filename /var/log/snortsms
Rule Pages
Maximum results per page 25
Monitoring
Monitor Console refresh rate (seconds). 180
Monitoring (DB-Feed)
Enter the 'IP' to the Snort database server. 192.168.1.179
HTTP Proxy
Use HTTP Proxy No Yes
HTTP Proxy Host localhost
Apply Changes
Si todo est correctamente se ver que pone PASSED en verde en cada opcin
correctamente configurada. En caso contrario nos aparecer FAILED en rojo, as
como el impacto que ocasiona y el modo de solucionarlo, como se puede ver en
la figura 3-24.
Hay que cerciorarse de que todos los resultados estn correctos antes de seguir
con la configuracin. En la figura 3-25, se muestra el resultado de la correcta
configuracin de SnortSMS.
36 Utilizacin de Sistemas de Deteccin de Intrusos como Elemento de Seguridad Perimetral
Despus de que el test est correcto, se pasa a Crear un Nuevo Daemon Profile
para el sensor. Al menos se debe de crear un daemon profile, que se usa para
comunicarle a SnortSMS cuando lanzar el proceso snort en el sensor remoto.
El siguiente paso es Importar las Libreras necesarias para Snort. Para ello, se
siguen los siguientes pasos:
o Se pulsa en la pestaa Libraries, en el enlace Import.
o Se selecciona los elementos que se quieren importar: rules, archivos de
configuracin y archivos de notas de las rules. En este caso se seleccionan
todas las opciones. En la figura 3-27 se muestra el formulario para la
importacin de los recursos.
A continuacin una vez que las libreras fuente estn cargadas, se debe de Crear
un Perfil para las Reglas, ya que no se pueden asignar reglas directamente a los
sensores, slo se pueden asignar rule profiles a cada sensor. Para ello se
realiza lo siguiente:
o Se hace clic en el enlace Pick en el profile para ver las distintas libreras
de reglas y asignar las reglas que se deseen para este profile (vase la figura
3-30).
o Tambin se puede ver el Nuevo Profile con la rule que se acaba de importar
en la figura 3-33.
o Si se pulsa el enlace View All se podrn ver todas las alertas agrupadas por
el Nombre del Evento, tal y como se observa en la figura 3-41.
7.4.4 SnortSnarf
SnortSnarf viene con otras funciones adems del anlisis de alertas. Estas funciones
adicionales son las siguientes:
Una vez instalados los mdulos perl de Tiempo, se debe descargar el paquete
SnortSnarf. Se puede ejecutar:
wget http://www.snort.org/dl/contrib/data_analysis/snortsnarf/SnortSnarf-
050314.1.tar.gz
rm -rf SnortSnarf-050314.1
rm -f SnortSnarf-050314.1.tar.gz
producir URL.
-rulesdir dir Donde dir es un directorio a usar como el path base para los archivos de
reglas.
-sisr configfile Genera enlaces con el Almacenaje de Incidentes de SnortSnarf (SISR). El
argumento configfile es el path completo al archivo de configuracin
SISR a usar. Este archivo no es analizado por SnortSnarf.pl
-nmapurl URL Donde URL es la Url del directorio URL base en el cual se almacena la
salida html de ejecutar nmap2html.
-nmapdir dir La variabe dir es el directorio en sistema de ficheros en el cual se
almacena la salida nmap2html.
Se puede ver como nos indica que est usando como entrada el SnortFileInput, es
decir el archivo de alertas de snort que se le ha indicado anteriormente.
Tambin se puede ejecutar snortsnarf, indicando que coja las alertas desde la base
de datos snort de Mysql.
Para ello, en primer lugar se inicia el servicio de mysql (si no est iniciado ya) y se
ejecuta snortsnarf como sigue:
service mysqld start
./snortsnarf.pl snort@localhost -d /var/www/html/snortsnarf
y pedir la introduccin del password.
En este caso SnortSnarf indica que est cogiendo las alertas desde la base de datos
snort@localhost.
En la figura 3-45 se pueden ver las alertas obtenidas desde la base de datos de Snort:
8 OSSIM
8.1 Introduccin
A pesar del gran desarrollo tecnolgico producido en los ltimos aos con
herramientas con capacidades como la de los IDS, desde el punto de vista de la
seguridad sigue siendo difcil obtener una informacin de la red, con un grado de
abstraccin que permita una revisin prctica y asumible.
Correlacin.
Priorizacin.
Valoracin de Riesgos.
Por ltimo est formado por una herramienta de administracin que configura y
organiza los diferentes mdulos tanto externos como propios que integraran OSSIM.
Esta herramienta es el Framework y mediante ella se pueden definir la topologa,
inventar activos, definir una poltica de seguridad, definir las reglas de correlacin y
enlazar las diferentes herramientas integradas.
8.3 Funcionalidad
Para entender qu ofrece OSSIM se define su funcionalidad usando un grfico
simplificado con los niveles que se muestran en la figura 3-46.
Por ejemplo: Si una mquina est ejecutando el sistema operativo UNIX con
Apache Web Server y recibe una alerta acerca de un ataque que le corresponde a
Microsoft IIS, la alerta debe de ser despreciada.
8.4 Arquitectura
El sistema cuenta con dos partes diferenciadas, en las que se desarrollan dos
etapas diferentes del proceso:
Base de datos de perfiles (UDB). Almacenar todos los datos aprendidos por
el Monitor de Perfiles.
1. Los eventos son procesados por los detectores hasta que, bien por la
localizacin de un patrn o una anomala, se produce una alerta.
2. Las alertas son procesadas en caso de ser necesario por los consolidadores
antes de ser enviadas. Estos se encargarn de enviar la informacin agrupada
para ocupar el mnimo ancho de banda.
8.6 Componentes
Archivo /etc/apt/sources.list
deb http://ftp.debian.org/debian/ etch main contrib non-free
deb http://security.debian.org etch/updates main contrib non-free
deb http://www.ossim.net/download/ debian/
Archivo /etc/preferences
Package: *
Pin: release o=ossim
Pin-Priority: 995
As, apt asignar una prioridad mayor a los paquetes OSSIM y sus dependencias.
Tambin se necesitar actualizar apt con el siguiente comando:
apt-get update
caracterstica. De esta forma si se quiere cambiar el puerto hay que asegurarse de que
se modifica en todos los archivos de configuracin de OSSIM.
A continuacin habr que recargar la base de datos, para que escuche las
conexiones tcp:
/etc/init.d/mysql reload
Seguidamente para crear las BDs para Ossim seguimos los siguientes pasos:
mysql -u root -p
(La contrasea que pide es la que pusimos anteriormente para el mysql)
mysql> create database ossim;
mysql> create database ossim_acl;
mysql> create database snort;
mysql> create database osvdb;
mysql> exit;
zcat /usr/share/doc/ossim-mysql/contrib/create_snort_tbls_mysql.sql.gz \
/usr/share/doc/ossim-mysql/contrib/create_acid_tbls_mysql.sql.gz | \
mysql -u root snort p
zcat /usr/share/doc/ossim-mysql/contrib/OSVDB-tables.sql.gz | \
mysql -u root osvdb -p
Las barras \ se usan para decir a Debian que no ejecute aun el comando, que
contina en la siguiente lnea.
b) O instalarlos todos:
cd /usr/share/doc/ossim-mysql/contrib/plugins
zcat *.sql.gz | mysql -u root ossim -p
cat *.sql | mysql -u root ossim -p
58 Utilizacin de Sistemas de Deteccin de Intrusos como Elemento de Seguridad Perimetral
dpkg-reconfigure ossim-server.
8.7.5 Instalar el agente de OSSIM
El agente o cliente del servidor, se instalar en cada mquina que vigile una subred
del cliente. Ms adelante veremos como instalar las aplicaciones de seguridad que lo
acompaan. Por defecto, el agente ossim instalar automticamente algunos plugins.
Cambiar el valor del sensor a la direccin IP del sensor. Como en este caso, todo
se ejecuta en la misma mquina la direccin del sensor es localhost
(sensor=127.0.0.1). Tambin habr que cambiar la interfaz desde donde
proceden los eventos.
Otro aspecto que hay que modificar est situado en la seccin llamada output-
server. Habr que cambiar la direccin IP del servidor:
enable = True
ip = 127.0.0.1
port = 40001
Para acceder a las tablas de mysql desde el sensor, se deben de garantizar los
privilegios a estas mquinas en el servidor mysql en todos los sensores con:
GRANT ALL PRIVILEGES ON *.* TO 'snort_database_user'@sensor_ip
identified by 'mysql_password';
Las mquinas que pueden hacer consultas al servidor de tiempo deberan ser
solo los agentes (y a veces la BD). Para instalar el cliente en las mquinas que
deseemos se ejecuta:
apt-get install ntpdate
WebServer
Para instalar todos estos paquetes necesarios para el servidor web se puede utilizar
el siguiente comando:
apt-get install apache2 php4 libapache2-mod-php4 php4-mysql
PHPGACL
Ossim Framework
En el caso de php5 harn falta otros paquetes que debian no lleva por defecto como
en el caso de php4:
apt-get install libphp-jpgraph
apt-get install php5-cli
apt-get install php5-gd
apt-get install php5-mysql
Se deben de reconfigurar los paquetes php para habilitar las extensiones php, porque
en debian estn deshabilitadas por defecto. Para php se deber ejecutar:
dpkg-reconfigure php4-cli php4-domxml php4-gd php4-mysql php4-xslt
Para configurar los parmetros de acceso a la base de datos de algunos scripts, slo
hay que utilizar el comando dpkg-reconfigure como se ha visto antes:
dpkg-reconfigure ossim-utils
Seguidamente se describen los plugins que se pueden instalar con OSSIM. Si bien
en este caso slo se va a instalar Snort:
Snort
En primer lugar se va a instalar el plugin Snort con soporte para mysql. Para ello se
ejecuta:
apt-get install snort-mysql
Al hacer apt-get install snort-mysql aparecen una serie de preguntas que habr que
responder:
9. Nombre del servidor de la BD que se va a utilizar: usar IP, en este caso se indica
localhost.
10. Nombre BD a utilizar: snort.
11. Usuario: root.
12. Contrasea usuario de la BD: contrasea que se pusiese antes.
13. Mensaje indicando que se arranque snort despus de la creacin de la estructura
de la base de datos.
Seguidamente se actualiza la base de datos de Ossim con las reglas del sistema
(hace falta el paquete ossim-utils). Se ejecuta:
/usr/share/ossim/scripts/create_sidmap.pl /etc/snort/rules | \ mysql -u root ossim
p
Otros plugins
A continuacin se van a comentar otros plugins que se pueden instalar con Ossim,
pero que en esta instalacin no se han utilizado.
NTOP. Una herramienta Unix que muestra el uso de red, similar al comando
top.
Aparecer entonces una pantalla (vase figura 3-63) que indica que se debe de
configurar phpGACL. Se hace clic en el botn here.
Ya se puede ver la consola de OSSIM, con todas las opciones disponibles como
muestra la figura 3-69. En primer lugar aparece una pestalla llamada Upgrade
que es para ver las versiones de todos los paquetes que hay instalados.
Como se puede observar son muchas las opciones que ofrece OSSIM, ya que es una
consola centralizada para gestionar un gran conjunto de herramientas integradas y que
permiten un fcil manejo de las mismas.
Como se puede observar hay una zona neutra donde se encuentran dos servidores
con funciones distintas y una red interna de ordenadores. Se deber de establecer la
configuracin adecuada de Snort para este entorno de red que se ha propuesto como
ejemplo. A continuacin se describen los principales aspectos de configuracin que se
deben de llevar a cabo para adaptar Snort al esquema propuesto:
Variables de red
Lo primero que hay que hacer es indicarle a snort las direcciones de la red para que
pueda interpretar correctamente los ataques provenientes del exterior. Para ello se utiliza
la variable HOME_NET:
Preprocesadores
Una vez que Snort ha preprocesado la informacin se aplican las reglas en busca de
un determinado patrn de ataques. Las reglas se guardan en el directorio /etc/snort/rules
y se hacen referencia desde el fichero de configuracin de snort.
Captulo 3. Instalacin y Configuracin 77
Las reglas que se han incluido en el archivo de configuracin de Snort para este
ejemplo, son las siguientes:
include $RULE_PATH/local.rules
include $RULE_PATH/bad-traffic.rules
include $RULE_PATH/exploit.rules
include $RULE_PATH/scan.rules
include $RULE_PATH/ftp.rules
include $RULE_PATH/dos.rules
include $RULE_PATH/ddos.rules
include $RULE_PATH/dns.rules
include $RULE_PATH/web-cgi.rules
include $RULE_PATH/web-coldfusion.rules
include $RULE_PATH/web-iis.rules
include $RULE_PATH/web-frontpage.rules
include $RULE_PATH/web-client.rules
include $RULE_PATH/web-php.rules
include $RULE_PATH/x11.rules
include $RULE_PATH/netbios.rules
include $RULE_PATH/attack-responses.rules
include $RULE_PATH/mysql.rules
include $RULE_PATH/smtp.rules
include $RULE_PATH/pop3.rules
include $RULE_PATH/web-attacks.rules
include $RULE_PATH/virus.rules
Mdulos de salida
Para que se inicien automticamente los servicios mysqld y httpd debe ejecutar el
comando ntsysv y seleccionar los dos servicios para que se ejecuten automticamente.
En la figura 3-80 se muestra la pantalla para automatizar los servicios indicados con
ntsysv.
Para que se incie el servicio snortd de forma automtica debe incluir la siguiente
lnea en el fichero /etc/rc.d/rc.local:
service snortd start
Captulo 3. Instalacin y Configuracin 79
En la figura 3-82 se puede ver el resultado de actualizar las rules con oinkmaster.
Para que se actualicen las rules de forma automtica se debe utilizar el servicio
croad. Para ello se ejecuta el comando crontab e y se escribe:
PATH=/usr/local/bin
0 1 * * * /usr/local/bin/oinkmaster.pl o /etc/snort
El siguiente paso que hay que realizar es descargar el paquete rrdtool de la pgina
web http://oss.oetiker.ch/rrdtool y compilarlo o ejecutar los siguientes comandos:
yum install rrdtool
yum install rrdtool-devel
yum install perl-RRD-Simple
Como se desea que la pgina web se actualice automticamente entonces hay que
programar cron para ejecute el comando para genera la pgina web. Como en el fichero
/etc/snort.conf se ha indicado que el fichero /var/log/snort/snort.stats se genere cada 60
segundos entonces hay que ejecutar crontab e y aadir el siguiente comando:
9.4.1 Caractersticas
Spade revisar los paquetes recibidos por Snort, encontrar aquellos de inters e
informar de los paquetes que cree que son anmalos con una puntuacin de anomala.
Los paquetes son clasificados por su campo de ocurrencia. Para hacer esto, se
mantienen tablas de probabilidad que reflejan la ocurrencia de distintos tipos de
paquetes, con su peso ms alto en los eventos ms recientes. A partir de la probabilidad
de ocurrencia se calcula la anomala dando una puntuacin para esta anomala. Esta
puntuacin mide el grado de anomala y facilita la interpretacin.
Para cada sensor, se define un umbral de informe. Para cada evento que excede este
umbral, se enva una alerta al mismo lugar que debe enviarse la alerta de Snort
producida.
Adems para informar de los eventos anmalos, Spade puede tambin ser
configurado para generar informes sobre la red en la cual se est ejecutando. Puede
relatar la cantidad de entropa en los puertos destino y en los de origen o producir
informes peridicos del nmero de paquetes vistos y pedir estticas tales como la
puntuacin de anomala media producida.
Spade tampoco agrupa los eventos de anomalas juntos. Esto lo realiza el correlador
Spice en cuyo caso es mejor manejarlo fuera del sensor IDS. Se podra usar SnortSnarf,
como se ha visto anteriormente para navegar por los informes de anomalas.
9.4.2 Detectores
Dependiendo del tipo de detector que est siendo aplicado y la configuracin del
usuario, Spade podra esperar un paquete por un corto periodo de tiempo antes de enviar
una alerta. Esto es una forma interesante de reducir los falsos positivos, ya que funciona
como un filtro aplicado al flujo de paquetes.
En tabla 3-3 que se muestra a continuacin, se pueden ver algunas de las opciones
que se pueden utilizar con Spade.
Se indica la red especfica con homenet, con logfile se indica que se almacenen las
alertas de log en el archivo spade.log y se le indica un archivo para la tabla de
probabilidad llamado state.rcv. Con cpfreq se indica que se guarde el estado cada
25.000 actualizaciones y con dest=alert se indica que se guarden los mensajes en la
facilidad alert indicada en snort.
9.5 Frag3
Spade como se ha dicho anteriormente slo est disponible hasta la versin 2.4 de
Snort. En versiones posteriores de Snort, se han incluido los preprocesadores frag2
primero y frag3 despus, para dotar a Snort de la capacidad de deteccin de anomalas.
La idea bsica de los IDS basados en objetivos, es que se le pueda informar al IDS
sobre los hosts en la red de forma que se puedan evitar ataques de evasin Ptacek &
Newsham basados en informacin sobre cmo opera un objetivo individual de la pila
IP.
Vern Paxson y Umesh Shankar hicieron un gran artculo en 2003 [SHA] que detall
el mapeo de hosts en una red y determina cmo sus distintas implementaciones de la
pila IP maneja los tipos de problemas vistos en la defragmentacin IP y en los flujjos
TCP. Se pueden presentar los IDS con informacin de la topologa de red para evitar las
evasiones basadas en TTL y una gran variedad de entradas.
9.5.2 Caractersticas
Frag3 pretende sustituir al mdulo de defragmentacin frag2 y fue diseado con los
siguientes objetivos:
1) Ejecucin ms rpida que frag2 con una gestin menos compleja de los datos.
2) Tcnicas anti-evasin de modelado de host basado en objetivos.
9.5.3 Configuracin
Frag3 tiene al menos dos directivas de preprocesador que son necesarias, una
directiva de configuracin global y una instanciacin del motor de deteccin. Puede
haber un nmero arbitrario de engines definidos al comienzo de su configuracin pero
slo una directiva global. Seguidamente se muestran estas dos directivas de
configuracin:
Configuracin Global
Su sintaxis es:
preprocessor frag3_global: [opciones]
Las opciones disponibles son las que se pueden ver en la tabla 3-5.
Captulo 3. Instalacin y Configuracin 87
preprocessor frag3_global
preprocessor frag3_engine
As, pues son dos soluciones que tienen el mismo objetivo: la deteccin de
anomalas pero actan de forma diferente.