Extendiendo la Seguridad de Elastix con Snort

42
Extendiendo la Seguridad de Elastix con Snort

Transcript of Extendiendo la Seguridad de Elastix con Snort

Extendiendo la Seguridad de Elastix

con Snort

JUAN OLIVA @jroliva

A que me dedico ?Proyectos de Voz sobre IP con ELASTIXServicios de Ethical Hacking

CertificacionesECE, dCAA, LPIC-1, Novell CLA, C|EH , CPTE

Instructor / TrainingELASTIX 101, ECE, ESM, LPIC-1Cursos de Ethical HackingEthical hacking para VoIP , Callcenter

Y cuando tengo tiempo mantengo un blog :

http://jroliva.wordpress.com

¿Qué es Snort?

Es un IDS / IPS muy flexible y a la vez complejo, que se ha convertido en el estandar en en campo de la seguridad :

•Alto nivel de personalización

•Análisis de paquetes

•Diferentes modos de ejecución

•Base de reglas de alto alcance

•Diferente tipos de almacenamiento

Modos de funcionamiento

- Pasivo / Snifer

Sniffer de paquetes entrantes y salientes en consola

- Logger

Captura de paquetes E/S guardados en un log

Modos de funcionamiento

- IDS / NIDS

Sniffer de paquetes entrantes y salientes con generación de

alertas , para un host o para todo un segmento de red

- IPS

llamado “inline” , es el modo de preventor de intrusos y

funciona en colaboración con IPTABLES

Posicionamiento en la red

NIDS

sss

IDS/IPS PERIMETRAL - outside

sss

IDS/IPS PERIMETRAL – inside DMZ

En modo mirrored

Funcionamiento interno

Entendiendo el funcionamiento interno

Tres componentes basicos

•Reglas

•Preprocesors

•Plugins de salida

Funcionamiento interno (1)- Reglas por defecto – Reglas personalizadasBase de datos de ataques que sirven para Detección de

Amenazas y Generación de Alarmas

Funcionamiento interno (2)- Preprocesors

Realiza análisis de paquetes entrantes y salientes justo

antes de que el motor de detección se ejecute (reglas) y

justo después de que el paquete ha sido recibido y

decodificado.

* SfPort scan

* Frag3

* HttpInspect

Funcionamiento interno (3)- Plugins de Salida

Formato en que presentará la información procesada

* Motor de base de datos (Mysql, Postgresql)

* Syslog

* tcpdump

Funcionamiento interno (1)

Modos de ejecución

/usr/local/bin/snort -D -u snort -g snort -c /etc/snort/snort.conf -i eth0

- D: En modo servicio- u : Usuario de ejecución- g : Grupo de ejecución- c : Archivo central de configuración- i : Interfase de escucha en modo promiscuo

Modos de ejecución - IDS

snort -D --daq afpacket -Q -u snort -g snort -c /etc/snort/snort.conf -i eth0:eth1

- D: En modo servicio- daq afpacket : Condigura daq en modo inline- Q : Modo IPS- i etho:eth1: Necesita dos interfases en modo IPS

Modos de ejecución - IPS

Pero donde está la información?? La interfase gráfica ???

Hablemos de almacenamiento ...

tail -f /var/log/snort/alerts

Almacenamiento en logs

Habilitar en la instalaciónhasta la 2.9.2 – luego barnyard2./configure --with-mysql –enable-dynamicplugin

Configurar en /etc/snort/snort.confoutput database: alert, mysql, user=root password=passwd dbname=snort host=localhostoutput database: log, mysql, user=root password=passwd dbname=snort host=localhost

Almacenamiento en Base de datos

Interfase gráfica - Base

Interfase gráfica - SnorbyInterfase gráfica - Snorby

De qué me sirve todo esto para proteger Elastix ??

Posicionamiento en la red con Elastix

sss

Elastix con IP Publica + estática

sss

Elastix en la nube

Recordemos un poco de tipos de ataques .....

Los de siempre , ataques externos

Ataques internos, los de revancha

Los que nos hacemos nosotros.......

Detectando ataques hacia Elastix

Cuando fail2ban no basta..

Detectando ataques hacia Elastix

Tres tipos clasicos

•Enumeracion y passwod cracking SIP

•Vulnerabilidades y Discovery Web

•Denial of services

Detectando ataques hacia Elastix

alert udp $EXTERNAL_NET any -> $HOME_NET 5060 (msg:"ET SCAN Sipvicious User-Agent Detected (friendly-scanner)"; content:"|0d 0a|User-Agent|3A| friendly-scanner"; classtype:attempted-recon; reference:url,code.google.com/p/sipvicious/; reference:url,blog.sipvicious.org/; reference:url,doc.emergingthreats.net/2011716; reference:url,www.emergingthreats.net/cgi-bin/cvsweb.cgi/sigs/SCAN/SCAN_Sipvicious; sid:2011716; rev:2;)

Detectando ataques hacia Elastix usando SNORT

DEMO

Tener las librerias completas de DAQ

./snort --daq-list

Available DAQ modules:

pcap(v3): readback live multi unpriv

ipfw(v2): live inline multi unpriv

dump(v1): readback live inline multi unpriv

afpacket(v4): live inline multi unpriv

Snort en modo IPS TIPS(1) :

Contar con dos interfase de red

- No misma mac- Dos interfaces distintas

Snort en modo IPS TIPS(2) :

Levantar snort en el modo correcto

- daq afpacket : Condigura daq en modo inline

- Q : Modo IPS

- i etho:eth1: Necesita dos interfases en modo IPS

Snort en modo IPS TIPS(3) :

Hacer que IPTABLES colabore con Snort

iptables -I INPUT -i lo -j ACCEPTiptables -I INPUT -p tcp --dport 80 -j NFQUEUEiptables -I OUTPUT -p tcp --sport 80 -j NFQUEUEiptables -I INPUT -p tcp --dport 443 -j NFQUEUEiptables -I OUTPUT -p tcp --sport 443 -j NFQUEUEiptables -I INPUT -p udp --dport 5060 -j NFQUEUEiptables -I OUTPUT -p udp --sport 5060 -j NFQUEUE

Snort como IPS TIPS(4) :

Instalación de Snort en Elastix

URL: http://jroliva.wordpress.com/

Gracias ElastixWorld !!

Juan OlivaConsultor en Ethical Hacking y VoIPECE®, dCAA®, C|EH™, C)PTE™, OSEH, BNS, LPIC-1™, Novell CLA®

Correo : [email protected] : [email protected] : @jrolivaBlog : http://jroliva.wordpress.com/