1 Rafael Alberto Reyes Gómez
Sistema de detección de intrusos (SNORT)
Creamos una maquina virtual e instalamos los siguientes paquetes desde el Gestor de
paquetes Synaptic.
Para el paquete Acidbase nos preguntará el tipo de base de datos: MySQL y la
contraseña de la cuenta para conectarse. Pondremos “rafa” (en mi caso)
En el paquete Snort-MySQL elegimos el intervalo de la red. Nos pregunta si queremos
usar una base de datos. Marcamos la opción y adelante. Nos da un mensaje, lo ignoramos y
adelante.
En el paquete MySQL-server nos pregunta por la contraseña de root. Establecemos
“rafa”.
Cuando tengamos instalados todos los paquetes anteriores correctamente llega la
hora de configurar algunos ficheros de Snort.
En primer lugar, nos cambiamos de usuario a root y editamos el fichero
/etc/snort/snort.conf
Y ponemos la red local y el resto de redes:
Nos fijamos en que la variable RULE_PATH en este fichero, este indicando
/etc/snort/rules.
2 Rafael Alberto Reyes Gómez
La configuración sobre la base de datos, en sistemas Debian, se realiza en el fichero
/etc/snort/database.conf. Tenemos que completar la línea para que quede de la siguiente
manera:
El siguiente paso es la creación de la base de datos. Entramos a MySQL con el comando
mysql –u root –p y creamos las bases de datos con los comandos create database snort; y
create database archive;
Para crear las tablas de las bases de datos que hemos creado anteriormente, lo
hacemos con unos scripts que trae ya Snort, nos movemos hacia el directorio
/usr/share/doc/snort-mysql y ejecutamos las siguientes instrucciones.
Ahora vamos a comprobar si se han creado correctamente las bases de datos. Para
ello, entramos a MySQL con el comando mysql –u root –p y miramos si se han creado las
tablas con el comando show tables; en cada una de las bases de datos.
3 Rafael Alberto Reyes Gómez
Cuando comprobemos que todo esta correctamente, vamos a ver si Snort funciona
correctamente, para ello utilizamos el comando snort –c /etc/snort/snort.conf
Si todo funciona correctamente, es la hora de configurar Apache. En primer lugar
vamos a crear un fichero php que se llamara test para comprobar que ejecuta correctamente
php.
En el fichero escribimos la siguiente instrucción php:
<?php
Phpinfo();
?>
Para comprobar que ejecuta correctamente, abrimos el navegador e introducimos en
la barra de direcciones: localhost/test.php y debe salir lo siguiente.
Si todo funciona correctamente, el siguiente paso es configurar Apache.
4 Rafael Alberto Reyes Gómez
Vamos a añadir extensiones a PHP, editamos el fichero /etc/php5/apache2/php.ini y
en la sección “Dynamic Extensions” ponemos extensión=gd.so
Una vez guardado los cambios en el fichero, reiniciamos apache con el comando
service apache2 restart
Luego movemos directorios, en primer lugar movemos ADOdb.
mv /usr/share/php/adodb /var/www
Luego creamos la carpeta web, movemos acidbase y le damos permisos.
mkdir /var/www/web
mv /usr/share/acidbase /var/www/web
chmod 777 /var/www/web/acidbase
Luego nos movemos a la carpeta /var/www/web/acidbase y renombramos el fichero
que existe.
mv base_conf.php base_conf.old
Por último, si no nos ha dado error nada, instalamos la extensión pear para gráficos.
pear Install Image_Color
5 Rafael Alberto Reyes Gómez
Ahora vamos a configurar ACIDBASE, para ello abrimos el navegador y en la barra de
direcciones escribimos lo siguiente.
localhost/web/acidbase/setup
Observamos que da un warning avisando que la variable error_reporting tiene un valor
inadecuado.
Para corregir el warning cambiamos en el fichero /etc/php5/apache2/php.ini el valor
anterior por el valor que indica la página y desaparecerá el error.
6 Rafael Alberto Reyes Gómez
Cuando le demos a continuar seguimos una serie de pasos en los que nos pedirá que
rellenemos una serie de campos, escribimos en cada uno lo siguiente.
El paso 3 nos pide una contraseña de autenticación que dejamos en blanco y
continuamos.
Pulsamos en el botón Create BASE AG.
Si todo ha ido correctamente nos debe aparecer una cosa parecida a la siguiente.
7 Rafael Alberto Reyes Gómez
Ahora vamos a configurar la base de datos archive, para ello introducimos los
siguientes comandos.
mkdir /var/www/web/acidbase/archive
cd /var/www/web/acidbase
cp –R * /var/www/web/acidbase/archive
chmod 777 /var/www/web/acidbase/archive
Y renombramos el fichero.
cd /var/www/web/acidbase/archive
mv base_conf.php base_conf.old
Una vez hayamos introducido los comandos, vamos a la dirección
localhost/web/acidbase/archive/setup y seguimos los pasos anteriores.
Por últimos nos queda comprobar el funcionamiento. Para ello arrancamos Snort en
modo demonio con el comando: snort –c /etc/snort/snort.conf –i eth0 –D y nos aseguramos
que apache y MySQL estén ejecutándose.
Para comprobar que detecta ataques, hacemos un escaneo de puertos de nuestra
maquina con la herramienta Zenmap y observamos como lo detecta.
8 Rafael Alberto Reyes Gómez
Cuando hayamos comprobado que funciona, luego podemos crear nuestras propias
reglas para detectar, por ejemplo, los ping. Para ello creamos un fichero donde las
definiremos.
En el directorio /etc/snort/rules creamos un fichero llamado myrules.rules con lo
siguiente.
Cuando lo hayamos creado, en el fichero /etc/snor/snort.conf debemos añadir la
siguiente línea.
Una vez introducida la línea anterior, hacemos un ping a cualquier maquina de la red y
deberá de salir una cosa parecida a esto.