Después de varios artículos sobre opciones de la reglas Snort, relacionadas con el contenido y no relacionadas con el contenido, hacemos un paréntesis para hablar de los proprocesadores.
Los preprocesadores, básicamente, son unos módulos, añadidos o plugins que usa Snort para arreglar, rearmar, modificar tramas que vienen del decodificador de paquetes antes de que pasen por el motor de detección y las reglas. Pero donde se sitúan, como actúan, que preprocesadores tiene Snort y como funcionan….
Donde se sitúan dentro de la arquitectura Snort.
Se sitúan entre el decodificador de paquetes y el motor de detección.
Con lo que son activados después del Decodificador para luego llamar al motor de detección.
Qué son y como funcionan los preprocesadores.
Se trata de pequeños plugins programados normalmente en C que sirven para tratar los paquetes provenientes del Decodificador. El tratamiento que realiza sobre los paquetes es para darle forma de manera que se pueda interpretar la información de los paquetes de foma más sencilla y lógica. Una vez reordenados los paquetes, al pasar por el motor de Detección se le aplicarán las Reglas en busca de patrones de ataques,virus, información, etc.
Los preprocesadores pueden defragmentar paquetes, ordenarlos, decodificar URLs, reensamblar, etc.
Estos preprocesadores de configuran en el archivo de configuración etc/snort.conf que, como ya hemos visto en otros artículos, tiene la forma dentro del epígrafe 3 configure preprocessors:
De qué preprocesadores disponemos en Snort.
Tenemos varios preprocesadores según la tarea a realizar:
- frag3
- stream4
- stream4_reassemble
- flow
- stream5
- sfportscan
- rpc_decode
- bo (Back Orifice detector)
- arpspoof
- ssh
- etc,
Los iremos viendo uno a uno, como funcionana y como configurarlos en la parte 2 de Snort. Preprocesadores.
hola Alfon, he estado leyendo tus articulos sobre snort y me gustaria preguntate cómo utilizar el modo inline. Se supone que al instalarlo, al hacer el ./configure –enable_inline, make, make install ya deberia instalarse correctamente (al menos es lo que pone el manual). Pero al ejecutar snort en modo inline, con el comando snort_inline -QDc ../etc/drop.conf -l /var/log/snort me dice que no reconece dicho comando. ¿sabes que ocurre?¿has ejecutado snort en modo inline?
Gracias
Hola Javier,
¿ tienes el módulo ip_queue instalado junto con iptables?.
veras, se supone que si, estos son los pasos que segui para instalar snort
./configure –enable-inline
indica que necesitamos el paquete libipq. Para ello descargamos y compilamos el codigo de los iptables, de la pagina web http://www.iptables.org. Descargaremos la version 1.4.2. descomprimo la carpeta y
./configure
make
make install
instalamos la libreria libipq.
make
make install.
Vuelvo a ejecutar ./configure para snort e indica quenecesitamos el paquete libnet 1.0.x, que podemos descargas de la pagina web http://www.packetfactory.net/libnet.
Descargaremos la version 1.0.2a. Lo descomprimimos y hacemos
./configure
make
make install
volvemos a snort y hacemos
make.
make install.
ahora pruebo que la instalacion ha tenido exito
iptables -A OUTPUT -p tcp –dport 80 -j QUEUE
ejecutamos snort inline
snort_inline -QDc ../etc/drop.conf -l /var/log/snort
y me da el siguiente error
bash: snort_inline: orden no encontrada
Te voy a dar un par de enlaces par aque revises bien todos los pasos:
http://linuxgazette.net/117/savage.html
http://linuxgazette.net/118/savage.html
Saludos,
ok gracias Alfon,
he estado leyendo los enlaces, pero como he visto que son de 2005 y segun lo que he leido en el manual de snort tengo una duda ¿no se supone que snort 2.8.3.4 ya tiene incluido el modo inline o hay que instalarlo a parte mediante el fichero snort_inline-2.6.1.5? lo digo porque en el manual oficial de snort dice
«to install Snort Inline use the following command:
./configure –enable-inline
make
make install»
pero claro, tambien es verdad que despues de hacer esto y ejecutar el comado snort_inline en el terminal, me dice que no recone dicho comando
saludos Javi
hola quiero saber los requerimientos para instalar Snort Inline 2.0.2, ya que quisiera instalar.
Hola flor,
Pues tener iptables y Linux.
Respecto a hardware, capacidad de almacenamiento, etc depende del tráfico esperado, situación del sensor, número de instancias o sensores, disponibilidad, necesidad de escalabilidad, etc.
Además es interesante tener una interface web para interactuar con snort / alertas, etc, co todolo que ello spresupone.. php, mysql, servidor web..
saludos,