enemigo mio: conociendo a tu adversario
TRANSCRIPT
Enemigo míoConociendo a tu adversario
Gonzalo Rodrigo Sancho @ txalin
De qué va esto?Cuando comprendo a mi enemigo tan bien como para vencerlo, entonces también lo amo.
Ender Wiggin
● Necesitas saber cómo te atacan● Sin poner en riesgo a tus activos● Y aprender de tus atacantes● Y admirarlos
Solución ideadaRequisitos iniciales● Open source● Fácil instalación y mantenimiento● Personalizable● Análisis de ataques a bajo nivel● Captura de tráfico en tiempo real● Usable para protección
Solución ideadaRequisitos iniciales● Open source● Fácil instalación y mantenimiento● Personalizable● Análisis de ataques a bajo nivel● Captura de tráfico en tiempo real● Usable para protección
Solución ideadaInternet
Dionaea
Snort
Características● Sniffer● Open source● Personalizable● MUY ruidoso
NIDS: Snort
Pros y contras● Gran comunidad● Gran comunidad● Miles de reglas● Miles de reglas
DionaeaCaracterísticas● Baja interacción● Open source● Python● Plug and play● Sit and grab popcorn
If ( Snort_detecta_patrones && dionaea_muestra patrones )...
Dionaea + Snort?
If ( Snort_detecta_patrones && dionaea_muestra patrones )...
Dionaea + Snort?
Dionaea + Snort!!● Permite ver cómo nos atacan
○ Técnicas empleadas○ Binarios utilizados○ Payloads
● Auto generación de reglas● Todo es dinámico
Es tán sencillo???
Es tán sencillo???
DionaeaAutoinstalación
apt-get install libudns-dev libglib2.0-dev libssl-dev libcurl4-openssl-dev libreadline-dev libsqlite3-dev python-dev libtool automake autoconf build-essential subversion git-core flex bison pkg-config libgc-dev libgc1c2 sqlite3 python-geoip sqlite python-pip
Y luego vienen las compilaciones a mano ….
liblcfg, libemu, libnl, libev, python, cython (wtf), libcurl, libpcap, p0f….
DionaeaCompilando...autoreconf -vi./configure --with-lcfg-include=/opt/dionaea/include/ \ --with-lcfg-lib=/opt/dionaea/lib/ \ --with-python=/opt/dionaea/bin/python3.2 \ --with-cython-dir=/opt/dionaea/bin \ --with-udns-include=/opt/dionaea/include/ \ --with-udns-lib=/opt/dionaea/lib/ \ --with-emu-include=/opt/dionaea/include/ \ --with-emu-lib=/opt/dionaea/lib/ \ --with-gc-include=/usr/include/gc \ --with-ev-include=/opt/dionaea/include \ --with-ev-lib=/opt/dionaea/lib \ --with-nl-include=/opt/dionaea/include \ --with-nl-lib=/opt/dionaea/lib/ \ --with-curl-config=/usr/bin/ \ --with-pcap-include=/opt/dionaea/include \ --with-pcap-lib=/opt/dionaea/lib/ make && make install
Dionaea Problemas:
1. Dificultad para distinguir un ataque2. Captura todo lo que le llega3. El ataque debe llegar a la honeypot4. Personalización peculiar
5. Detectable por nmap
Dionaea Problemas:
1. Dificultad para distinguir un ataque2. Captura todo lo que le llega3. El ataque debe llegar a la honeypot4. Personalización peculiar
5. Detectable por nmap
NIDS: SnortReglas…. peculiares.
NIDS: SnortReglas…. peculiares.
NIDS: SnortReglas…. peculiares.
Trabajando juntosIt’s demo time!!
¿Preguntas? Muchas gracias !!