Sistema de detección de intrusiones basado en políticas especializadas

En esta ocasión vamos a iniciar una serie de artículos dedicados a Bro, un sistema de detección de intrusiones para UNIX/Linux Open Source que analiza el tráfico de red en busca de actividad sospechosa. Su carcterística principal es que sus reglas de detección están basados en scricd en lenguaje nativo que suponen políticas (policies) que son las encargadas de detectar, generar logs o eventos y acciones a nivel de sistema operativo.

Qué es Bro.

Bro es un sistema de detección de intrusiones para UNIX/Linux Open Source que analiza el tráfico de red en busca de actividad sospechosa.

Analiza la actividad a nivel de aplicación y por comparación con patrones considerados sospechosos, es decir, por características del tráfico y contenido.  Algunas características importantes de Bro son la gran capacidad de análisis a nivel de protocolo y las políticas especializadas y configurables y la capacidad de ser una herramienta deanálisis forense.También es importante destacar el elevado rendimiento y capacidad de gestionar gran volumen de tráfico.

Las alertas pueden ser configuradas de tal forma que puedan generar eventos de log, alertas en tiempo real y hasta ejecución de comandos de sistema.

Bro dispone de una serie de scripts o Policies escritos en un lenguaje nativo de Bro. Estas políticas describen qué tipo de actividades se consideran sospechosas. En base a esto, disponemos de una gran cantidad de políticas para la detección de las actividades sospechosas más comunes. Estas policies suponen una especie de capa más en la estructura de Bro. Estos policies generarán, dado el caso, cientos de eventos depndiendo del tipo de protocolo / script.

Las políticas o policies, además de generar logs por actividad sospechosa, puede generar logs de actividad normal.

Mediante el uso del lenguaje de scripts de políticas o policies, podemos crear políticas específicas para nuestro entorno de red o un actividad concreta que deseemos detectar.

Podemos ejecutar Bro para detecciçón en tiempo real usando una determinada interface de red o leyendo un fichero .pcap.

Instalando y configurando Bro.

En mi caso he necesitado instalar como requisito previo:

  • ncurses-dev
  • libssl-dev
  • python2.6-dev

Comenzamos:

wget http://www.bro-ids.org/downloads/release/bro-2.1.tar.gz
tar xzf bro-2.1.tar.gz
cd bro-1.5.3

./configure
make
make install-broctl

Configuramos Bro.

  • Bro se encuentra en /usr/local/bro por defecto.
  • Archivos de configuración en /usr/local/bro/etc
  • Archivo de configuración: /usr/local/bro/etc/broctl.cfg
  • Configuramos la interface en /usr/local/bro/etc/node.cfg
  • Configuramos nuestra red usando notación CIDR en /usr/local/bro/etc/networks.cfg

Una vez realizados los cambios que considerenos:

en /usr/local/bro/bin ejecutamos sudo python broctl install :

alfon@alfonubuntu:/usr/local/bro/bin$ sudo python broctl install
removing old policies in /usr/local/bro/share/bro/.site … done.
creating policy directories … done.
installing site policies … done.
generating broctl-layout.bro … done.
generating analysis-policy.bro … done.
generating local-networks.bro … done.
updating nodes … done.

Ejecutando Bro.

Dada la complejidad de Bro, iremos estudiando sus características poco a poco y sus variadas fomas de funcionamiento. Toda basado en la práctica.

Mas información en estos enlaces: Parte 1, Parte 2, Parte 3, Parte 4.

Fuente: SeguridadyRedes

Share

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.