Snort en un router DD-WRT: Instalación, configuración y operación básica en 10 pasos

Buenas,

Os dejo unas notas sobre un experimento reciente que he estado realizado con una instalación peculiar de Snort, en este caso en el propio router, por si fueran de vuestro interés.

Necesitamos:

  • Un router con DD-WRT. En mi caso es un Asus RT-N16
  • Preparar el router para optware, y aquí la recomendación es seguir los pasos descritos en el wiki
  • El router debe tener entrada USB, porque lo aconsejable es instalar optware en un dispositivo externo, en este caso una llave o disco USB, para no agotar el escaso espacio disponible en el router. Es recomendable emplear ext2 (cosa que yo no he hecho, por cierto), ya que ext3 como sabéis es un sistema de ficheros con journaling y por tanto, con ext2 podemos acelerar el acceso al disco al no tener que efectuar dicho journaling. Recomendación: Leer el wiki.
  • Habilitar en el router JFFS (Journalling Flash File System). JFFS/JFFS2 proporciona un area de reescritura en el router que es necesario para instalar paquetes vía ipkg, así que hay que habilitarlo. Es una opción dentro de la administración de DD-WRT:

    snort ddwrt

Paso 1. Conectamos el medio externo y verificamos que monta adecuadamente

snort ddwrt

Los incrédulos pueden tirar de la shell para verificar, lo cual nos vendrá bien para verificar también que tenemos soporte JFFS. Es fácil observar parte de la estructura flash de almacenamiento montada en /jffs en la línea /dev/mtdblock/4 on /jffs type jffs2 (rw)

snort ddwrt

Paso 2. Lanzamos la preparación de optware

Esto se hace vía consola en dos cómodos pasos:

1. Descarga wget -O /tmp/prep_optware http://wd.mirmana.com/prep_optware
2. Ejecución del script de preparación sh /tmp/prep_optware

Paso 3. Una vez finalizada la instalación de optware, lanzamos una consulta de disponibilidad de Snort

snort ddwrt

Paso 4. Instalamos, siendo recomendable forzar la instalación de dependencias

ipkg -force-depends install snort

Paso 5. Verificamos la instalación

snort ddwrt

Paso 6. Nos fabricamos un fichero de configuración de snort al uso para nuestras pruebas

snort ddwrt

Si alguien quiere copiar y pegar, el fichero está disponible aquí. Es un ejemplo muy sencillo en el que emplearemos el preprocesador stream5 para generar dos tipos de alerta: una para cualquier tráfico externo hacia nuestra red, y cualquier tráfico puramente interno, tal y como se muestra en el fichero de configuración.

Paso 7. Lanzamos Snort

Para ello indicamos el fichero de configuración recién creado y una ruta donde escribir las alertas y los logs. En mi caso por comodidad, las he ubicado también dentro de /opc para evitar el colapso por agotamiento de almacenamiento:

snort -i vlan1 -c /opt/etc/snort/test.conf -l /opt/etc/snort/snortlog

Nótese que lanzo sobre la primera vlan (vlan1) que tengo definida en el router y que corresponde al primer puerto LAN del dispositivo. Cada cual que escoja la que desee.

snort ddwrt

Paso 8. Observamos si el invento funciona

snort ddwrt

Aprovechando que SSH está activo, nos asomamos con un cliente gráfico, o bien lanzamos un ls por la consola. El caso es comprobar que se estén generando logs y alertas.

Paso 9. Nos damos una vuelta

Pues eso, dejamos que corra el aire un poquito antes de ir impacientes a ver las alertas :)

Paso 10. A investigar

Pues en ausencia de procedimientos de asignación de prioridad, escalada y notificación, y habida cuenta de que nuestras reglas dispararán mútiples veces antes numerosos eventos, inspeccionamos el fichero de alertas a mano. En mi caso he detectado a un impresentable haciendo un ataque de fuerza bruta sobre el servidor SSH de otra máquina de la infraestructura:

snort ddwrt

Mmmm. Espera. 192.168.1.120. Esa es la IP de mi portátil … y la máquina destino es una máquina virtual del laboratorio que también reconozco. Y la propia alerta me dice que es un evento ocurrido en la red interna. Oh wait…. :)

Saludos,

2 comentarios sobre “Snort en un router DD-WRT: Instalación, configuración y operación básica en 10 pasos

  1. Tiene buena pinta, mas no tengo acceso a un router con DDRT, cachis.

    Seguro que a Alfon le interesa. Ha escrito bastante al respecto de Snort. Te he reseñado en el mismo hilo de comentarios:

    -> Nauscopio Scipiorum Seguridad y Redes: Honey Security Console, Reglas Snort, Snort Security Platform 3.0 Beta y Wireshark

    Nota: qué bien hiciste yéndote de España. Me temo que pasarán unos cuantos años hasta que puedas volver, pues lo peor está por llegar, sobre todo después del verano.

    – Saludos tarraconense –

Comentarios cerrados.