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.
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
sí 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: 0
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:

Vamos a
/var/log/suricata y vemos:

Ya, en otro capítulo de Suricata IDS/IPS os hablé de los
logs:
Dentro de la carpeta
/var/log/suricata/files tendremos una serie de ficheros extraídos de la forma:

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:
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/