sábado, 13 de octubre de 2012

HoneyPot EASY. Part IV.

Seguimos con la fabulosa seria de HoneyPot Easy  !!

HoneyPot Easy Parte I
HoneyPot Easy Parte II
HoneyPot Easy Parte III

Vamos a probar un despliegue, pollo, escenario o como te guste llamarlo con Honeyd, y todas las herramientas necesarias para la captura y análisis de tráfico de red.

Honeyd es un desarrollo originalmente basado en sistemas Unix/Linux GNU y muy popular y configurable.
Hay una versión portada a Windows, que es con la que vamos a trabajar. En la distribución Backtrack viene "de casa", pero me parece más interesante montarlo sobre windows, ya que creo que tengo más conocimientos del hardening de estos sistemas que sobre los Tux S.O´s. Además, quien no tiene por ahí un windows xp de evaluación de 180 días, o una licencia ...
HoneyD nos permite configurar cualquier servicio emulado, con los script´s existentes o facilitándonos la implementación de uno nuevo. Trabajo en todo el rango de puertos TCP.
Una de las ventajas de HoneyD sobre otras soluciones es que es capaz de emular cualquier IP atacada aunque no esté en uso. Imaginamos un entorno de red LAN de mascara 24 (255.255.255.0) con solo 100 hosts. El Honeypot es capaz de emular sistemas y servicios en todas las ip´s no usadas, contribuyendo al propósito del Honeypot en cuanto a "distraer" al atacante, y sobre todo, conseguir que el atacante efectue el ataque!!!
Según la ubicación o propósito del Honeypot, tenemos dos maneras de usar este concepto. Si instalamos el Honeypot en una DMZ, en la que no existe ningún equipo activo en ese segmento de red, enviaremos todo el trafico de red hacia el honeypot. Esto se denomina BlackHoling. Si por el contrario, queremos ubicar nuestro HoneyPot dentro de nuestro segmento de red de producción, tenemos que proporcionar a Honeyd una manera de saber que equipos están activos en la red, para permitir el tráfico legítimo hacia esos equipos, o si por el contrario se está realizando un ataque contra varias ip´s no activas, y no queremos dejar de escapar esta oportunidad para detectar tráfico, y queremos que honeyd responda. Se me ocurre que conociendo las técnicas de ARP Spoofin que usamos para ataques Man In The middle, podemos saber en todo momento que equipos están activos y discriminar el tráfico. Realizar esta tarea consume muchos más recursos que si usamos ARP proxy, es decir, el comando ARP -s identificando ip´s inactivas en la dirección MAC correcta del honeypot.
Depende usar una técnica u otra, dentro de un honeypot en un segmento de red en producción, creo que es si tienes más máquinas activas que inactivas. Si tienes 100 máquinas inactivas, mapearlas todas con la MAC del honeypot, pues es mas peñazo...
Otra de las funciones interesantes de Honeyd es que puede emular distintas implementaciones de sistemas operativos a nivel de pila TCP/IP a la vez, es decir, que a una petición FIN a un puerto, podemos hacer para un servicio emulado que responda, y para otro servicio que no responda... Cuantos sistemas operativos podemos emular? Mas de 400. Si queremos saber si existe la implementacion de algún S.O., podemos irnos al fichero nmap.prints para comprobar si Nmap "conoce" ese S.O.
Podemos dotar a Honeyd de algo más de interacción, usando los "subsistemas" que nos permiten instalar una aplicación concreta( un servidor apache? ) dentro de la red de nuestro honeypot.
Podemos instalar Honeyd solo con bajarnos la aplicación, ejecutar el fichero con los comandos y listo, pero vamos a ir un paso más alla, instalando todo el sistema de captura y análisis de red, dotando a Honeyd de un completo apoyo a la hora de estudiar las intrusiones, en todos los niveles de red, no solo en capa aplicación.
Descargamos e instalamos la última versión de WinPcap el driver de captura de red.
Descargamos e instalamos la última versión de CYGWIn,un conjunto de scripts para, como dicen en su web, dar un look más linuxero a los windows...
Nos descargamos e instalamos HoneyD la versión para windows. Descomprimimos el contenido del fichero en el raíz c: ( como le gusta a @1gbdeinformacion) que los usuarios guarden los ficheros xD.
Aunque la instalación viene con numerosos script´s de emulación de servicios, no está de mal pasarnos por contribuciones y descargarnos el "emulador" que nos apetezca.
Una vez instalados estos elementos, modificados el PATH de las variables del sistema y añadimos c:\cygwin\bin y c:\Honeyd  ( o el nombre que le hayas dado).
Antes de meternos de lleno en la configuración del honeypot, vamos a instalar un sistema de detección de intrusos, Snort, para ser más concretos. Queremos monitorizar de manera "sencilla" cuando nos escanean un puerto de la máquina honeypot, o cuando lanzan un ataque de denegación de servicio, un exploit cualquiera... No queremos quedarnos solo con los log´s de los servicios del honeyd.
Por qué usar un IDS si ya vamos a escuchar toda la red con WinPcap? Imaginaros un log de actividad de red, de un día entero. Vas a leer a pelo todas las tramas? las comunicaciones del servidor dhcp de la red? todos los intentos de usuario/contraseña, o solo te interesa analizar los buffer overflow attacks? Quieres saber mediante un correo electrónico cuando se está registrando actividad maliciosa en tu honeypot? Todo esto te lo proporciona un IDS. Seguimos con la instalación...
Cuando nos bajamos el fichero, no se si por "respeto" al mundo linux, pero tenemos que dar permisos de ejecución al fichero. Como podemos hacer esto? renombrando el fichero que nos descargamos a nombre.exe xD
Seguimos instalando aplicaciones, ahora es el turno del analizador de red Ethereal. Imagino que muchos preferís Wireshark, para gustos los colores.

En el siguiente post configuraremos unos cuantos servicios en honeyd, y configuraremos el resto de herramientas para la monitorizacion, loggin y alerta.
Se que estáis deseando ver comando y parámetros !!! estar atentos a próximas entregas.
Gracias por leerme.