Instalación y Configuración de SNORT
Instalación y Configuración de SNORT
Instalación y Configuración de SNORT
INTRODUCCIN
QU ES SNORT Y QU ES ACID?
SEGUNDO DE ASIR
Pgina 1
INTRODUCCIN
Este documento trata de describir los pasos a realizar para la instalacin y configuracin de un sistema de deteccin de intrusiones. Durante la escritura del documento dar algunos pasos por sabidos o ya realizados, para cualquier duda recomiendo consultar la documentacin oficial de las aplicaciones a configurar.
QU ES SNORT Y QU ES ACID?
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. 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. 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. 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. Resulta imprescindible tomar ms medidas complementarias al amparo de esta alarma que salta. Un cortafuego aadido aporta en conjunto una seguridad bastante aceptable. SEGUNDO DE ASIR Pgina 2
[INSTALACION Y CONFIGURACION DE SNORT VISUALIZACION: ACID BASE] 1 de marzo de 2012 PROPORCIONA TRES FUNCIONES ESENCIALES DE SEGURIDAD
MONITORIZAN: Esto es, el IDS mantiene siempre un ojo en la red, observando y escudriando eltrfico en busca de cualquier paquete susceptible de contener cdigo no deseado. Quvisita quin y cundo lo hace en nuestra red, quin viene desde el exterior y qubusca... etc. En este sentido acta exactamente igual que un sniffer. De hecho, cabe laposibilidad de utilizarlos como tal. DETECTAN: Usan polticas (totalmente configurables) para definir los actos sospechosos de todo ese trfico que provocar una alarma si ocurren. Los patrones se pueden actualizar cada cierto tiempo si se descubren nuevos tipos de ataques. RESPONDEN: Esta alarma puede venir en forma de archivos en el sistema, pginas html dinmicas con grficos o incluso correos con la informacin necesaria. Tambin podra incluir la expulsin de un usuario del sistema... etc. A la hora de realizar labores de forense (tras un ataque, determinar el alcance, evaluar los daos, e Intentar cazar al autor) resulta de gran ayuda. Un elaborado registro de las incidencias ocurridas en la red, con el contenido de los paquetes de cada "visita" resulta imprescindible para realizar una buena labor de investigacin, Pero para ello, no se pueden alojar los logs dentro de la propia mquina. Todos sabemos lo sencillo que resulta borrarlos si un atacante llega a tener el control de servidor. Lo mejor es instalar una base de datos en un sistema remoto que almacene los registros ordenadamente, y de esta forma, tambin puedan ser consultados de manera sencilla.
SEGUNDO DE ASIR
Pgina 3
ACID
ACID (Analysis Console for Intrussion Databases) es una interface web desarrollada en lenguaje PHP, que nos muestra los registros guardados por Snort. Snort puede guardarlos en una base de datos o en simples ficheros de texto (por ejemplo syslog)... si queremos usar ACID para visualizar sus efectos, deberemos usar MySQL como almacn para los logs recogidos por Snort.
BASE DE DATOS
Snort debe dejar los logs en una base de datos si queremos poderlos visualizar con ACID, por lo que previamente necesitamos una base de datos, como por ejemplo MySQL. Aunque tambin podemos hacerlo con PosgreSQL, Oracle y alguna otra ms... yo lo he hecho con MySQL, como muestro en el documento. Lo primero que debemos hacer es instalar apache en Ubuntu, en mi caso en Ubuntu 11.04
SOPORTE PHP
Si queremos poder usar ACID como interfaz web para visualizar los logs de Snort, debemos dar soporte para PHP en nuestro servidor web.
SEGUNDO DE ASIR
Pgina 4
Una vez que hayamos introducido nuestra contrasea si nos la pide nos pedir una confirmacin y comenzar la instalacin comenzar la instalacin
Esto instalar Apache 2 y todas sus dependencias, ahora nos dirigiremos al directorio /etc/apache2/ donde nos encontraremos con una serie de archivos, el archivo apache2.conf es el archivo principal de configuracin de nuestro apache, no lo modificaremos por el momento. Tambin podemos encontrar el archivo httpd.conf, este archivo esta vaco y as lo dejaremos, su fin es simplemente garantizar compatibilidad con versiones anteriores de apache.
SEGUNDO DE ASIR
Pgina 5
COMO EXTERNA
SEGUNDO DE ASIR
Pgina 6
Esto instalara mysql server 5.0, el cliente mysql y todas sus dependencias. Para asegurarnos que todo ha salido bien podemos ejecutar en una terminal: Mysql unombredeusuario -pcontrasea
SEGUNDO DE ASIR
Pgina 7
Despus de esto veremos como comienza la instalacin de cada uno de los paquetes
SEGUNDO DE ASIR
Pgina 8
Luego, desde un navegador escribimos como URL la direccin del servidor y solicitamos la pgina info.php, de modo que quede algo como lo 192.168.1.36/info.php, esto nos debera devolver una pgina bastante extensa en la cual figuran las caractersticas de PHP
SEGUNDO DE ASIR
Pgina 9
SEGUNDO DE ASIR
Pgina 10
Nos preguntara que si queremos configurar una base de datos, y le decimos que no.
Y de esta forma finalizaremos la configuracin de snort, por el momento y empezara automticamente la de ACID BASE
SEGUNDO DE ASIR
Pgina 11
Introducimos la contrasea.
Y la confirmamos.
SEGUNDO DE ASIR
Pgina 12
Una vez hemos pulsado en aceptar, veremos que volvemos a la consola y se ha dado por finalizado el asistente
SEGUNDO DE ASIR
Pgina 13
Ahora creamos un usuario de nombre snort, que tiene como contrasea Asir2012,este usuario lo vamos a crear, porque va a ser el usuario que vamos a configurar, para la utilizar snort, para evitar usar el usuario root y correr riesgos innecesarios CREATE USER'snort'@'localhost' IDENTIFIED BY 'Asir2012';
Creamos la base de datos, si el asistente no la ha creado ya, (normalmente no la crea) con el siguiente comando: CREATE DATABASE IF NOT EXISTS `snort`;
Damos todos los privilegios a l usuarios snort sobre la base de datos recin creada. GRANT ALL PRIVILEGES ON `snort`.* TO 'snort'@'localhost';
SEGUNDO DE ASIR
Pgina 14
Borramos el archivo de configuracin pues nos puede dar diversos tipos de problemas sudo rm /etc/snort/db-pending-config
Y ejecutamos una actualizacin para que todos los paquetes queden perfectamente actualizados a sus ltimas versiones sudo apt-get upgrade
SEGUNDO DE ASIR
Pgina 15
Nos mostrara informacin sobre la configuracin de interfaces y dems y pulsamos en aceptar una vez que lo hayamos ledo.
SEGUNDO DE ASIR
Pgina 16
Ahora leeremos atentamente la pantalla, para escoger la opcin que ms nos interese a nosotros nos interesa no deshabilitar el modo promiscuo para que snort compruebe as todos los paquetes que pasen por el segmento Ethernet incluso aunque sean parte de una conexin entre otros dos sistemas.
SEGUNDO DE ASIR
Pgina 17
Decimos que si queremos configurar una base de datos, donde snort-mysql enviar los registros.
SEGUNDO DE ASIR
Pgina 18
Seleccionamos el nombre de la base de datos a utilizar, que ser la que hemos creado anteriormente.
El nombre de usuario, con el que vamos a acceder a dicha base de datos, que va a ser el que hemos creado, para as no acceder con root, por los riesgos de seguridad que esto conllevara.
Una vez hecho esto veremos como se mostrara que el sistema de deteccin de intrusos SNORT se ha iniciado correctamente.
SEGUNDO DE ASIR
Pgina 19
REGLAS Hay que tener en cuenta que en este archivo de configuracin podemos desactivar las reglas que nos convengan, y configurarlo de esta forma a nuestro gusto, para desactivar reglas se puede hacer simplemente comentando los correspondientes includes.
SEGUNDO DE ASIR
Pgina 20
ACID BASE
Ahora nos toca configurar acidbase, para ello ejecutamos el siguiente comando sudo gedit /etc/acidbase/database.php Y lo adaptamos a lo que falte en nuestra configuracin indicndole el puerto y dems, teniendo de gua las siguientes lneas que vemos, que son las ideales para mi configuracin. $alert_user='snort'; $alert_password='Asir2012'; $basepath=''; $alert_dbname='snort'; $alert_host='localhost'; $alert_port='3306'; $DBtype='mysql';
SEGUNDO DE ASIR
Pgina 21
SEGUNDO DE ASIR
Pgina 22
Veramos ya que todo esta en funcionamiento, y con el usuario al que estamos accediendo y otro tipo de informacin en la parte derecha de la pantalla.
SEGUNDO DE ASIR
Pgina 23
Una vez terminado el anlisis, vemos como se nos muestran los resultados de la direccin analizada vemos que el propio resumen, tampoco nos muestra realmente muchos fallos de seguridad.
Puertos abiertos y dems informacin no muy importante, pero que podramos y deberamos de evitar.
SEGUNDO DE ASIR
Pgina 24
Podemos ver una anlisis de trfico teniendo en cuenta los distintos tipos de protocolos.
Podremos ver tambin los ataques que ms se han utilizado su clasificacin y el nmero total de ellos y correspondiente porcentaje
Como otras cosas para la deteccin muy importantes la direccin de origen y la de destino y la hora de los mismos (primera y ltima)
SEGUNDO DE ASIR
Pgina 25