Instalación de un IDS con Snort. Parte II
Continuando con la instalación de un IDS con Snort (Parte I), vamos a ver como actualizar las reglas de VRT o EmergingThreats para SNORT.
Existen varios programas para dicho cometido, pero nosotros vamos a utilizar “PulledPork”.
Lo primero que tenemos que hacer es instalar los pre-requisitos necesarios para su instalación, Para ello ejecutamos:
apt-get install libcrypt-ssleay-perl libwww-perl
A continuación procedemos a la instalación de PulledPork:
cd /usr/src
wget http://pulledpork.googlecode.com/files/pulledpork-0.7.0.tar.gz
tar -zxvf pulledpork-0.7.0.tar.gz
cd pulledpork-0.7.0
cp pulledpork.pl /usr/local/bin
cd etc/
cp *.conf /etc/snort
El siguiente paso a realizar, es la configuración de Pulledpork.
1.Editamos el fichero de configuración:
nano –c /etc/snort/pulledpork.conf
**Nota: Necesitarás darte de alta en la página http://www.snort.org y después de activar tu cuenta deberás solicitar tu Oinkcode.
2. Modificamos las siguientes líneas:
Comentamos las líneas 19, 21 y 26. Para ello ponemos a principio de la línea el carácter “#”.
A continuación de la línea 26 añadimos las siguientes líneas
rule_url=https://www.snort.org/rules/|snortrules-snapshot-2976.tar.gz|aquí hay que poner tu Oinkcode
rule_url=https://rules.emergingthreatspro.com/|emerging.rules.tar.gz|open
Y modificamos las siguientes líneas
Línea #74 – cambiar por: rule_path=/etc/snort/rules/snort.rules
Línea #81 – des-comentar y cambiar por: out_path=/etc/snort/rules/
Línea #89 – cambiar por: local_rules =/etc/snort/rules/local.rules
Línea #92 – cambiar por: sid_msg=/etc/snort/sid-msg.map
Línea #119 – cambiar por: config_path=/etc/snort/snort.conf
Línea #121 – cambiar por: sostub_path=/etc/snort/rules/so_rules.rules
Línea #133 – cambiar por: distro=Debian-Lenny
Linea #141 – cambiar por: black_list=/etc/snort/rules/black_list.rules
Línea #192 – des-comentar y cambiar por: snort_version=2.9.7.6
Línea #196 – des-comentar y cambiar por: enablesid=/etc/snort/enablesid.conf
Línea #198 – des-comentar y cambiar por: disablesid=/etc/snort/disablesid.conf
Línea #199 – des-comentar y cambiar por: modifysid=/etc/snort/modifysid.conf
A continuación ejecutamos el siguiente comando para deshabilitar todo el bloque de reglas fwsam.
echo pcre:fwsam >> /etc/snort/disablesid.conf
Si queremos guardar todas las reglas en un solo fichero, tenemos que ejecutar el siguiente comando.
/usr/local/bin/pulledpork.pl -c /etc/snort/pulledpork.conf -T -l
Para guardar las reglas en ficheros diferentes
/usr/local/bin/pulledpork.pl -c /etc/snort/pulledpork.conf -k -l
Una vez actualizadas nuestras reglas para Snort procedemos a la instalación y configuración de BARNYARD2.
Para ello realizamos los siguientes pasos.
1.Instalación de pre-requisitos
apt-get install libpcre3 libpcre3-dbg libpcre3-dev build-essential autoconf automake libtool libpcap-dev libnet1-dev mysql-client libmysqlclient-dev
2.Instalación de barnyard2
cd /usr/src/
wget http://www.securixlive.com/download/barnyard2/barnyard2-1.9.tar.gz
Si no funciona podemos utilizar el siguiente enlace
wget ftp://ftp.tw.freebsd.org/pub/ports/distfiles/barnyard2-1.9.tar.gz
tar xvfz barnyard2-1.9.tar.gz
cd barnyard2-1.9
./configure –with-mysql
Si durante la instalación se produce el siguiente error es que no encuentra la librería libmysqlclient.*. Para saber en qué directorio se encuentra podemos ejecutar el siguiente comando
find / -name libmysql*
Como vemos en la imagen anterior (lo he marcado en rojo) ya sabemos la ruta donde se encuentra la librería y reanudamos la instalación.
./configure –with-mysql –with-mysql-libraries=/usr/lib/i386-linux-gnu
make
make install
cp /usr/src/barnyard2-1.9/etc/barnyard2.conf /etc/snort/
3.Configuración del fichero barnyard2.conf.
nano –c /etc/snort/barnyard2.conf
Comprobamos las siguientes líneas.
Linea 29 config reference_file: /etc/snort/reference.config
Linea 30 config classification_file: /etc/snort/classification.config
Linea 31 config gen_file: /etc/snort/gen-msg.map
Linea 32 config sid_file: /etc/snort/sid-msg.map
Y añadimos al final del fichero
output database: log, mysql, user=<usuario base de datos> password=<pasword usuario> dbname=<base de datos> host=<indicamos ip del servidor sql> sensor_name=<nombre de sensor>
Un ejemplo de configuración para añadir las alertas a la base de datos de Snorby,
output database: log, mysql, user=snorbyuser password=PASSWORD123 dbname=snorby host=192.168.1.111 sensor_name=sensor1
Para terminar comprobamos que funcione correctamente Snort y Barnyard2
/usr/local/bin/snort -q -u snort -g snort -c /etc/snort/snort.conf -i eth0 &
/usr/local/bin/barnyard2 -c /etc/snort/barnyard2.conf -d /var/log/snort -f snort.log –w /etc/snort/bylog.waldo &
Con esto finalizamos el artículo de hoy, en el siguiente veremos cómo instalar y configurar Snorby para complementar nuestro IDS.
Saludos.
Juanjo Martínez