ón de Snort para Ubuntu Manual de uso e instalaci ó
Primero, hay que abrir una terminal presionando el botón de Aplicaciones del panel superior del sistema operativo, luego seleccionar Accesorios y posteriormente Terminal . Para descargar la versión más conveniente de Snort para las versiones del software que se tienen instal instaladas adas en el equipo equipo así como todas las dependencias dependencias necesarias para que Snort funcione correctamente, se debe ejecutar con privilegios de administrador la instrucción apt-get install snort
Inmediatamente se le solicitará la contraseña del administrador para luego analizar qué paquetes se necesitan descargar e instalar. Cuando se le pregunte si desea descargar e instalar los paquetes, elija que sí .
En seguida iniciará la instalación. Espere hasta que se le pregunte la interfase de red por la que Snort va a escuchar, elija la interfase (en este caso eth0) y presione Enter.
Posteriormente, se le solicitar á la red y el intervalo de la misma para la cual Snort va a funcionar, especificando la dirección IP de la red y la máscara de subred utilizando la diagonal.
Una vez introducidos esos datos, sólo queda esperar para que la instalaci ón de Snort se complete. Se puede modificar la configuración con la que Snort se instala de forma predeterminada y as í poder controlar el momento en el que el IDS debe iniciarse, qu é redes monitorear, qué tipos de informes se pueden entregar, a qué e-mail enviar los resúmenes, etc. Para entrar a este modo avanzado de configuración, teclear en la terminal
sudo dpkg-reconfigure snort
Por ejemplo, en las siguientes imágenes se pregunta si se desea que se enví en los resúmenes a un correo electrónico especí fico.
La configuración realizada por este medio se almacena en el archivo /etc/snort/snort.debian.conf Para comprobar que Snort se instaló adecuadamente se le puede ejecutar en modo sniffer, en el que despliega todos los paquetes que llegan a su interfase promiscua de red, es decir, escucha los paquetes aún cuando no vayan dirigidos a él. Se debe ejecutar Snort con privilegios de administrador, agregar las opciones -v para que se desplieguen los resultados y -i para agregar la interfase por la cual escuchar. sudo snort -v -i wlan0
Además se pueden agregar otros argumentos como -e para que se despliegue la información de la capa de Enlace de Datos o -d para que se deseche la información de la capa de Aplicación. Para terminar la ejecución hay que presionar Ctrl + c Inmediatamente aparecerá un resumen como el que se muestra en la siguiente figura. En él se puede ver cuántos paquetes fueron analizados y cuántos de esos paquetes pertenecen a determinado protocolo.
Para poder diferenciar entre un paquete potencialmente dañino a la red y otro producto del inocente
tráfico de datos, snort utiliza reglas o condiciones especificadas en archivos ubicados en el directorio /etc/snort/rules/ . Las reglas pueden identificar el tr áfico por puerto, protocolo, contenido o dominio, y al romper alguna regla, snort genera una alarma. Todos los archivos de reglas son incluidos en el archivo general /etc/snort/snort.conf , en el que se encuentran definiciones y variables comunes para todos los demás archivos. Para no utilizar las reglas que vienen predefinidas en snort y tener m ás control sobre las mismas, crearemos un archivo (naranjo.rules) con nuestras propias reglas con el siguiente comando sudo gedit /etc/snort/rules/naranjo.rules
Después de que se abra el editor de texto gedit, agregamos el siguiente texto, guardamos y cerramos el archivo. alert tcp any any -> any any (msg:"Alguien entró a Youtube...";content:"youtube";sid:2021000;rev:1;) alert tcp any any -> any any (msg:"Alguien entró a GOOGLE...";content:"google";sid:2021001;rev:1;)
Con esas reglas decimos que se genere una alarma y se despliegue un texto siempre que cualquier host con cualquier puerto se comunique a cualquier puerto de cualquier otro host y dentro de la informaci ón se encuentren las palabras “google” o “youtube”. El campo rev indica que es la primera revisión de ambas reglas, mientras que el campo sid (snort id) debe ser único para cada regla. Posteriormente, hay que agregar una referencia al archivo snort.conf del archivo que se acaba de crear. Para abrir el archivo snort.conf hay que teclear en la terminal el comando sudo gedit /etc/snort/snort.conf
Se abrirá el archivo en el editor de texto gedit. Dirigirse casi al final del archivo, donde se agregan los demás archivos y agregar el siguiente texto en una nueva l í nea, tal como lo muestra la imagen. include $RULE_PATH/naranjo.rules
Finalmente guardar y cerrar el archivo. Para probar las reglas que acabamos de crear, introduzca el comando sudo snort -A console -c /etc/snort/rules/naranjo.rules -i wlan0
El argumento -A console es para que se identifiquen únicamente las alertas y se desplieguen en la consola. -c es para aplicar sólo las reglas contenidas en el archivo (en este caso naranjo.rules). El siguiente screenshot muestra a otra computadora, diferente del servidor, accesando a youtube.
En las siguientes dos im ágenes se ven las salidas de Snort, los mensajes que se despliegan cuando alguien accesa a google o youyube y el resumen al final del proceso, indicando que en total hubieron 28 alertas.
En este ejemplo utilizamos un archivo con reglas que creamos nosotros mismos, pero se pueden utilizar los demás archivos para detectar ataques de virus, tormentas de ping, escaneo de puertos, sesiones telnet, etc.