FIST Conference Febrero 2004 @




    SISTEMAS HONEYNET
     Rafael San Miguel Carrasco
     Soluciones Seguras
FIST Conference Febrero 2004 @




  1. Definición de honeynet
  2. Software con tecnología honeynet
  3. Ejemplo: honeyd
  4. Gestión de un sistema honeynet
FIST Conference Febrero 2004 @


Definición de honeynet :
• honeynet = red trampa para hackers
• cebo en la red
• distinguir tráfico legítimo de tráfico
   malintencionado
• sustituye o complementa a sistemas
   HIDS y sondas
FIST Conference Febrero 2004 @


Definición de honeynet :
  “Cualquier tráfico dirigido a una máquina de la
   red que NO está en producción (honeynet)
   proviene de un atacante”




    SMTP      WEB       HONEYNET
FIST Conference Febrero 2004 @


Clases de sistemas honeynet :
• honeynet para investigación
• honeynet vulnerable como IDS
• honeynet protegida como IDS
FIST Conference Febrero 2004 @


honeynet para investigación:
•   conocer la metodología de los hackers
•   máxima protección de la honeynet
•   importancia de los mecanismos de
    logging
FIST Conference Febrero 2004 @


honeynet vulnerable como IDS:
• vulnerabilidad real y fácilmente detectable
• protección del entorno de la honeynet
  (firewall con reglas para tráfico out)
• mecanismos de logging vulnerables
FIST Conference Febrero 2004 @


honeynet protegida como IDS:
• simulación de una vulnerabilidad
  fácilmente detectable
• el atacante descubre el engaño fácilmente
• mecanismos de logging fiables
FIST Conference Febrero 2004 @


honeynet vulnerable como IDS:
• disuade a los atacantes de comprometer el
  resto de máquinas de la red

honeynet protegida como IDS:
• identificación de atacantes y acciones de
  carácter legal o administrativo
FIST Conference Febrero 2004 @


Productos con tecnología honeynet :
• Symantec Mantrap
• Deception Toolkit
• LaBrea
• Honeyd
FIST Conference Febrero 2004 @


Symantec Decoy Server (Mantrap) :
• cages sobre sistema operativo host
• logging a través de syslog
• CGM (Content Generation Module)
• ataques internos
• interfaz gráfica atractiva
FIST Conference Febrero 2004 @


Deception Toolkit :
• simulación de servicios de red
  vulnerables
• logging a través de syslog
• gestión vía telnet/rsh
• detección trivial
FIST Conference Febrero 2004 @


LaBrea :
• defensa basada en ataque DoS
• ralentiza la expansión de worms
• idea tomada del exploit naphta
• sólo “engaña” a robots de red
FIST Conference Febrero 2004 @


Honeyd :
• emulación de:
  • servicios de red
  • topologías de red
  • SSOO a nivel de stack TCP/IP
FIST Conference Febrero 2004 @


SSOO emulados :
• Linux
• Windows (95/98/NT/2000/Me/XP)
• Cisco IOS
• Mac OS
• Sega Dreamcast
FIST Conference Febrero 2004 @


Honeyd :
• IP takeover
• ratio de pérdida, latencia de
  comunicación
• interfaz basada en línea de comandos
   y ficheros de configuración
FIST Conference Febrero 2004 @


Honeyd : segmento de red destino




                           HONEYNET
FIST Conference Febrero 2004 @


Honeyd : máquinas virtuales
 sistema Linux
    • FTP, SMTP, POP3
 sistema Windows
    • IIS
 router Cisco
    • telnet
FIST Conference Febrero 2004 @


Honeyd : direcciones IP LIBRES

 En nuestro ejemplo:
  192.168.0.60 – 192.168.0.62
FIST Conference Febrero 2004 @


Arpd : captura de tráfico dirigido a las
       máquinas virtuales
                                 HONEYNET




                PETICIÓN ARP
                 192.168.0.60
                                RESPUESTA ARP
FIST Conference Febrero 2004 @


Arpd : sintáxis


  ./arpd –i eth0 192.168.0.60-192.168.0.62
FIST Conference Febrero 2004 @


honeyd.conf : máquina Linux
 create linux
 set linux personality "Linux 2.0.32-34"
 set linux default tcp action reset
 set linux default udp action reset
 add linux tcp port 110 "sh scripts/pop3.sh $ipsrc $ipdst $dport"
 add linux tcp port 25 "sh scripts/smtp.sh $ipsrc $ipdst $dport"
 add linux tcp port 21 "sh scripts/ftp.sh $ipsrc $ipdst $dport"
 set linux uptime 3284460
 bind 80.58.63.61 linux
FIST Conference Febrero 2004 @


honeyd.conf : máquina Windows
create windows
set windows personality "Windows NT 4.0 Server SP5-SP6"
set windows default tcp action reset
set windows default udp action reset
add windows tcp port 80 "perl /usr/local/share/honeyd/scripts/iis-0.95/iisemul8.pl"
add windows tcp port 139 open
add windows tcp port 137 open
add windows udp port 137 open
add windows udp port 135 open
set windows uptime 3284460
bind 80.58.63.60 windows
FIST Conference Febrero 2004 @


honeyd.conf : router Cisco
 create router
 set router personality "Cisco IOS 11.3 - 12.0(11)"
 set router default tcp action reset
 set router default udp action reset
 add router tcp port 23 "/usr/bin/perl scripts/router-telnet.pl"
 set router uid 32767 gid 32767
 set router uptime 1327650
 bind 80.58.63.62 router
FIST Conference Febrero 2004 @


syslog.conf : redirección a servidor
              de logs remoto
daemon.info,daemon.err,daemon.warn @servidor
FIST Conference Febrero 2004 @


Honeyd : sintáxis

  ./honeyd   –i eth0
             –p nmap.prints
             –x xprobe2.conf
             –f honeyd.conf
             192.168.0.60-192.168.0.62
FIST Conference Febrero 2004 @


PING a los hosts virtuales
FIST Conference Febrero 2004 @


Detección de OS en equipo Cisco
FIST Conference Febrero 2004 @


Detección de OS en servidor Windows
FIST Conference Febrero 2004 @


Servicio POP3 virtual
FIST Conference Febrero 2004 @


Servicio Web virtual: página por defecto
FIST Conference Febrero 2004 @


Servicio Web virtual: página inexistente
FIST Conference Febrero 2004 @


Servicio FTP virtual
FIST Conference Febrero 2004 @


Telnet equipo Cisco virtual
FIST Conference Febrero 2004 @


Sustituimos echo por syslog ():
FIST Conference Febrero 2004 @


Honeyd : scripts adicionales
•   wuftpd     •   squid
•   ident      •   qpop
•   lpd        •   discard
•   syslogd    •   fingerd
•   telnetd    •   ldap
•   rpc        •   vnc
•   sendmail   •   servicios MS Exchange
FIST Conference Febrero 2004 @


smtp.sh : añadir un nuevo comando
 #!/bin/sh
 DATE=`date`
 host=`hostname`
 domain=`dnsdomainname`
 log=/tmp/honeyd/smtp-$1.log
 MAILFROM="err"
 EHELO="no"
 RCPTTO="err"
 echo "$DATE: SMTP started from $1 Port $2" >> $log
 echo -e "220 $host.$domain ESMTP Sendmail 8.12.2/8.12.2/SuSE Linux 0.6;
 $DATEr"
FIST Conference Febrero 2004 @


smtp.sh : añadir un nuevo comando
while read incmd parm1 parm2 parm3 parm4 parm5
do
          # remove control-characters
          incmd=`echo $incmd | sed s/[[:cntrl:]]//g`
          parm1=`echo $parm1 | sed s/[[:cntrl:]]//g`
          parm2=`echo $parm2 | sed s/[[:cntrl:]]//g`
          parm3=`echo $parm3 | sed s/[[:cntrl:]]//g`
          parm4=`echo $parm4 | sed s/[[:cntrl:]]//g`
          parm5=`echo $parm5 | sed s/[[:cntrl:]]//g`
          # convert to upper-case
          incmd_nocase=`echo $incmd | gawk '{print toupper($0);}'`
FIST Conference Febrero 2004 @


smtp.sh : añadir un nuevo comando
 case $incmd_nocase in
   QUIT* )
           echo "220 2.0.0 $host.$domain closing connection"
           exit 0
           ;;
   RSET* )
           echo "250 2.0.0 Reset state"
           ;;
   RAFA* )
           echo “Hola Rafa!”
           ;;
   *)
           echo "500 5.5.1 Command unrecognized: "$incmd""
           ;;
 esac
FIST Conference Febrero 2004 @


smtp.sh : añadir un nuevo comando
FIST Conference Febrero 2004 @


script IIS : cambiar la página web
FIST Conference Febrero 2004 @


Honeyd : emulación de redes
FIST Conference Febrero 2004 @


Honeyd : emulación de redes
FIST Conference Febrero 2004 @


herramienta de gestión: características

•   parsear mensajes honeyd
•   empaquetado y almacenaje de logs
•   cifrado de la comunicación
•   estadísticas del sistema
FIST Conference Febrero 2004 @



• ADMlogger
   http://aaron.marasco.com/linux.html
• Logrep
   http://itefix.no/cgi-bin/itefix/logrep
• Lire
   http://logreport.org/lire/
FIST Conference Febrero 2004 @


Sandbox: más seguridad

•   Sólo llamadas al sistemas “legítimas”
    (observación del funcionamiento “típico”)
•   Restriccíón de privilegios
FIST Conference Febrero 2004 @




• Auditorías de seguridad
    • e-commerce   • redes de acceso
    • web          • VPN
    • wireless     • sistemas operativos
• Diseño de sistemas de información
  seguros
FIST Conference Febrero 2004 @




      ¡Muchas gracias!

Sistemas Honeynet

  • 1.
    FIST Conference Febrero2004 @ SISTEMAS HONEYNET Rafael San Miguel Carrasco Soluciones Seguras
  • 2.
    FIST Conference Febrero2004 @ 1. Definición de honeynet 2. Software con tecnología honeynet 3. Ejemplo: honeyd 4. Gestión de un sistema honeynet
  • 3.
    FIST Conference Febrero2004 @ Definición de honeynet : • honeynet = red trampa para hackers • cebo en la red • distinguir tráfico legítimo de tráfico malintencionado • sustituye o complementa a sistemas HIDS y sondas
  • 4.
    FIST Conference Febrero2004 @ Definición de honeynet : “Cualquier tráfico dirigido a una máquina de la red que NO está en producción (honeynet) proviene de un atacante” SMTP WEB HONEYNET
  • 5.
    FIST Conference Febrero2004 @ Clases de sistemas honeynet : • honeynet para investigación • honeynet vulnerable como IDS • honeynet protegida como IDS
  • 6.
    FIST Conference Febrero2004 @ honeynet para investigación: • conocer la metodología de los hackers • máxima protección de la honeynet • importancia de los mecanismos de logging
  • 7.
    FIST Conference Febrero2004 @ honeynet vulnerable como IDS: • vulnerabilidad real y fácilmente detectable • protección del entorno de la honeynet (firewall con reglas para tráfico out) • mecanismos de logging vulnerables
  • 8.
    FIST Conference Febrero2004 @ honeynet protegida como IDS: • simulación de una vulnerabilidad fácilmente detectable • el atacante descubre el engaño fácilmente • mecanismos de logging fiables
  • 9.
    FIST Conference Febrero2004 @ honeynet vulnerable como IDS: • disuade a los atacantes de comprometer el resto de máquinas de la red honeynet protegida como IDS: • identificación de atacantes y acciones de carácter legal o administrativo
  • 10.
    FIST Conference Febrero2004 @ Productos con tecnología honeynet : • Symantec Mantrap • Deception Toolkit • LaBrea • Honeyd
  • 11.
    FIST Conference Febrero2004 @ Symantec Decoy Server (Mantrap) : • cages sobre sistema operativo host • logging a través de syslog • CGM (Content Generation Module) • ataques internos • interfaz gráfica atractiva
  • 12.
    FIST Conference Febrero2004 @ Deception Toolkit : • simulación de servicios de red vulnerables • logging a través de syslog • gestión vía telnet/rsh • detección trivial
  • 13.
    FIST Conference Febrero2004 @ LaBrea : • defensa basada en ataque DoS • ralentiza la expansión de worms • idea tomada del exploit naphta • sólo “engaña” a robots de red
  • 14.
    FIST Conference Febrero2004 @ Honeyd : • emulación de: • servicios de red • topologías de red • SSOO a nivel de stack TCP/IP
  • 15.
    FIST Conference Febrero2004 @ SSOO emulados : • Linux • Windows (95/98/NT/2000/Me/XP) • Cisco IOS • Mac OS • Sega Dreamcast
  • 16.
    FIST Conference Febrero2004 @ Honeyd : • IP takeover • ratio de pérdida, latencia de comunicación • interfaz basada en línea de comandos y ficheros de configuración
  • 17.
    FIST Conference Febrero2004 @ Honeyd : segmento de red destino HONEYNET
  • 18.
    FIST Conference Febrero2004 @ Honeyd : máquinas virtuales sistema Linux • FTP, SMTP, POP3 sistema Windows • IIS router Cisco • telnet
  • 19.
    FIST Conference Febrero2004 @ Honeyd : direcciones IP LIBRES En nuestro ejemplo: 192.168.0.60 – 192.168.0.62
  • 20.
    FIST Conference Febrero2004 @ Arpd : captura de tráfico dirigido a las máquinas virtuales HONEYNET PETICIÓN ARP 192.168.0.60 RESPUESTA ARP
  • 21.
    FIST Conference Febrero2004 @ Arpd : sintáxis ./arpd –i eth0 192.168.0.60-192.168.0.62
  • 22.
    FIST Conference Febrero2004 @ honeyd.conf : máquina Linux create linux set linux personality "Linux 2.0.32-34" set linux default tcp action reset set linux default udp action reset add linux tcp port 110 "sh scripts/pop3.sh $ipsrc $ipdst $dport" add linux tcp port 25 "sh scripts/smtp.sh $ipsrc $ipdst $dport" add linux tcp port 21 "sh scripts/ftp.sh $ipsrc $ipdst $dport" set linux uptime 3284460 bind 80.58.63.61 linux
  • 23.
    FIST Conference Febrero2004 @ honeyd.conf : máquina Windows create windows set windows personality "Windows NT 4.0 Server SP5-SP6" set windows default tcp action reset set windows default udp action reset add windows tcp port 80 "perl /usr/local/share/honeyd/scripts/iis-0.95/iisemul8.pl" add windows tcp port 139 open add windows tcp port 137 open add windows udp port 137 open add windows udp port 135 open set windows uptime 3284460 bind 80.58.63.60 windows
  • 24.
    FIST Conference Febrero2004 @ honeyd.conf : router Cisco create router set router personality "Cisco IOS 11.3 - 12.0(11)" set router default tcp action reset set router default udp action reset add router tcp port 23 "/usr/bin/perl scripts/router-telnet.pl" set router uid 32767 gid 32767 set router uptime 1327650 bind 80.58.63.62 router
  • 25.
    FIST Conference Febrero2004 @ syslog.conf : redirección a servidor de logs remoto daemon.info,daemon.err,daemon.warn @servidor
  • 26.
    FIST Conference Febrero2004 @ Honeyd : sintáxis ./honeyd –i eth0 –p nmap.prints –x xprobe2.conf –f honeyd.conf 192.168.0.60-192.168.0.62
  • 27.
    FIST Conference Febrero2004 @ PING a los hosts virtuales
  • 28.
    FIST Conference Febrero2004 @ Detección de OS en equipo Cisco
  • 29.
    FIST Conference Febrero2004 @ Detección de OS en servidor Windows
  • 30.
    FIST Conference Febrero2004 @ Servicio POP3 virtual
  • 31.
    FIST Conference Febrero2004 @ Servicio Web virtual: página por defecto
  • 32.
    FIST Conference Febrero2004 @ Servicio Web virtual: página inexistente
  • 33.
    FIST Conference Febrero2004 @ Servicio FTP virtual
  • 34.
    FIST Conference Febrero2004 @ Telnet equipo Cisco virtual
  • 35.
    FIST Conference Febrero2004 @ Sustituimos echo por syslog ():
  • 36.
    FIST Conference Febrero2004 @ Honeyd : scripts adicionales • wuftpd • squid • ident • qpop • lpd • discard • syslogd • fingerd • telnetd • ldap • rpc • vnc • sendmail • servicios MS Exchange
  • 37.
    FIST Conference Febrero2004 @ smtp.sh : añadir un nuevo comando #!/bin/sh DATE=`date` host=`hostname` domain=`dnsdomainname` log=/tmp/honeyd/smtp-$1.log MAILFROM="err" EHELO="no" RCPTTO="err" echo "$DATE: SMTP started from $1 Port $2" >> $log echo -e "220 $host.$domain ESMTP Sendmail 8.12.2/8.12.2/SuSE Linux 0.6; $DATEr"
  • 38.
    FIST Conference Febrero2004 @ smtp.sh : añadir un nuevo comando while read incmd parm1 parm2 parm3 parm4 parm5 do # remove control-characters incmd=`echo $incmd | sed s/[[:cntrl:]]//g` parm1=`echo $parm1 | sed s/[[:cntrl:]]//g` parm2=`echo $parm2 | sed s/[[:cntrl:]]//g` parm3=`echo $parm3 | sed s/[[:cntrl:]]//g` parm4=`echo $parm4 | sed s/[[:cntrl:]]//g` parm5=`echo $parm5 | sed s/[[:cntrl:]]//g` # convert to upper-case incmd_nocase=`echo $incmd | gawk '{print toupper($0);}'`
  • 39.
    FIST Conference Febrero2004 @ smtp.sh : añadir un nuevo comando case $incmd_nocase in QUIT* ) echo "220 2.0.0 $host.$domain closing connection" exit 0 ;; RSET* ) echo "250 2.0.0 Reset state" ;; RAFA* ) echo “Hola Rafa!” ;; *) echo "500 5.5.1 Command unrecognized: "$incmd"" ;; esac
  • 40.
    FIST Conference Febrero2004 @ smtp.sh : añadir un nuevo comando
  • 41.
    FIST Conference Febrero2004 @ script IIS : cambiar la página web
  • 42.
    FIST Conference Febrero2004 @ Honeyd : emulación de redes
  • 43.
    FIST Conference Febrero2004 @ Honeyd : emulación de redes
  • 44.
    FIST Conference Febrero2004 @ herramienta de gestión: características • parsear mensajes honeyd • empaquetado y almacenaje de logs • cifrado de la comunicación • estadísticas del sistema
  • 45.
    FIST Conference Febrero2004 @ • ADMlogger http://aaron.marasco.com/linux.html • Logrep http://itefix.no/cgi-bin/itefix/logrep • Lire http://logreport.org/lire/
  • 46.
    FIST Conference Febrero2004 @ Sandbox: más seguridad • Sólo llamadas al sistemas “legítimas” (observación del funcionamiento “típico”) • Restriccíón de privilegios
  • 47.
    FIST Conference Febrero2004 @ • Auditorías de seguridad • e-commerce • redes de acceso • web • VPN • wireless • sistemas operativos • Diseño de sistemas de información seguros
  • 48.
    FIST Conference Febrero2004 @ ¡Muchas gracias!