Banner 1

Suricata IDS/IPS 1.2.1 Extracción de ficheros de sesiones HTTP tráfico de red.

Ya hemos visto en artículos anteriores como instalar, configurar, incluso añadir un sensor suricata a un SIEM Prelude. Esto lo hicimos con la versión 1.0.2 de Suricata.
En esta ocasión instalaremos y configuraremos la versión 1.2.1 de Suricata pero, además, añadiremos la funcionalidad de extracción de ficheros de sesiones HTTP.
Ya hemos hablado en varias ocasiones de la forma que tenemos de extraer ficheros de datos Binarios / Objetos HTTP a partir de una captura de tráfico de red, e incluso la forma de extraer fichero de impresión en red. También la forma de hacerlo con Tcpxtract, Justniffer, Assniffer, con Xplico, etc.
Al lio..

Instalación de Suricata 1.2.1

Yo ya tengo todos los prerequisitos e instalo directamente. Cualquier problema o para una primera instalación de suricata teneis más información sobre instalación y resolución de errores aquí: IDS / IPS Suricata. Instalación, configuración y puesta en marcha.
wget http://www.openinfosecfoundation.org/download/suricata-1.2.1.tar.gz
tar -xvzf suricata-1.2.1.tar.gz
cd suricata-1.2.1
./configure –enable-prelude
–enable-prelude por si usamos suricata como un sensor prelude que es mi caso.
Ahora, si no tememos las carpetas creadas por otra instalación anterior de suricata hacemos:
mkdir /var/log/suricata/
mkdir /etc/suricata
cp suricata.yaml /etc/suricata
cp classification.config /etc/suricata
make
sudo make install
cd /etc/suricata
Vamos a descargar las rules o reglas Emerging-Threats:
wget http://www.emergingthreats.net/rules/emerging.rules.tar.gz
tar xzvf emerging.rules.tar.gz

La extracción de ficheros de sesiones HTTP en suricata se realiza mediante reglas. Un ejemplo de estas reglas (files.rules) las descargaremos y ubicaremos en /etc/suricata/rules :
wget https://redmine.openinfosecfoundation.org/projects/suricata/repository/revisions/master/raw/rules/files.rules
Editamos files.rules y descomentamos las reglas que queramos usar.

Modificación de archivo de configuración suricata.yaml

Editamos /etc/suricata/suricata.yaml
Aunque no es necesario para la extracción de ficheros, yo he realizado la modificación siguiente:
  – pcap-log:
      enabled:  yes
      filename: log.pcap
Para la extracción de ficheros nos hará falta:
  – file:
      enabled: yes
      log-dir: files
      force-magic: no
log-dir files hará que los ficheros extraidos se depositen en /var/log/suricata/files
También en la sección stream:
stream:
  memcap: 32mb
  checksum_validation: no
  inline: no                  
  reassembly:
    memcap: 64mb
    depth:  
    toserver_chunk_size: 2560
    toclient_chunk_size: 2560
depth en 0, es decir, sin límite.
En cualquier caso también nos hará falta:
  • threshold-file: /etc/suricata/threshold.config
  • default-rule-path: /etc/suricata/rules/
  • classification-file: /etc/suricata/classification.config
  • reference-config-file: /etc/suricata/reference.config
En la sección libhtp:
libhtp:
   default-config:
     personality: IDS
     # Can be specified in kb, mb, gb.  Just a number indicates
     # it’s in bytes.
     request_body_limit: 0
     response-body-limit: 0
   server-config:
     – apache:
         address: [192.168.1.0/24, 127.0.0.0/8, "::1"]
         personality: Apache_2_2
         # Can be specified in kb, mb, gb.  Just a number indicates
         # it’s in bytes.
         request_body_limit: 0
         response-body-limit: 0
     – iis7:
         address:
           – 192.168.0.0/24
           – 192.168.10.0/24
         personality: IIS_7_0
         # Can be specified in kb, mb, gb.  Just a number indicates
         # it’s in bytes.
         request_body_limit: 0
         response-body-limit: 0
En la sección rule-files, que es donde se indican las rules a cargar, comentamos o descomentamos las reglas de nuestro interés y, además, añadimos la regla que anteriormente descargamos files.rules:
 - files.rules
Otras modificaciones pueden ser la ubicación de puertos de servicios que se encuentran con la indicación de puertos por defecto, nuestra HOME-NET, etc.
y listo.
Sobre algunas características de suricata ya escribí algo aquí: IDS / IPS Suricata. Entendiendo y configurando Suricata. Parte I

Extracción de ficheros con suricata.

Ya solo nos queda ejecutar suricata:
sudo suricata -c /etc/suricata/suricata.yaml -r ../pcap1/ids_2.pcap
Vemos la salida de información en consola:
Ejecutando Suricata 1.2.1 para extracción ficheros sesiones HTTPVamos a /var/log/suricata y vemos:
Logs de suricata 1.2.1 en /var/log/suricata y ficheros extraidos en files
Ya, en otro capítulo de Suricata IDS/IPS os hablé de los logs:
IDS / IPS Suricata. Instalación, configuración y puesta en marcha.
Dentro de la carpeta /var/log/suricata/files tendremos una serie de ficheros extraídos de la forma:
Suricata 1.2.1 fichers extraidos.
Tendríamos ficheros de texto, pfd, imágenes .js, etc ,etc ,etc,
Si editamos, por ejemplo, (estaría más a bajo del listado) file.9984.meta:
TIME:              12/07/2011-12:16:52.887378
PCAP PKT NUM:      869016
SRC IP:            195.xxx.152.xx
DST IP:            192.168.101.240
PROTO:             6
SRC PORT:          80
DST PORT:          36908
FILENAME:          /hphotos-xp-cpd4/381174_249112748_148457649_683242_1878105586_a.jpg
MAGIC:             JPEG image data, JFIF standard 1.02, comment: "*"
STATE:             CLOSED
SIZE:              10356
Tenemos información de la extracción respecto a origen, destino, puerto, etc. El archivo meta hace referencia, en este caso a file.9984.
En el explorador veríamos los ficheros:
suricata 1.2.1 extracción ficheros sesiones HTTP.

Relacionado con suricata IDS / IPS:

======
Y hasta aquí por hoy. Hasta lá próxima-

Fuente:https://seguridadyredes.wordpress.com/2012/02/01/suricata-idsips-1-2-1-extraccion-de-ficheros-de-sesiones-http-trafico-de-red/

No hay comentarios:

Powered by Bad Robot
Helped by Blackubay