Incident Response, Security and Forensics"

.

domingo, 2 de agosto de 2009

Alta interacción - Redes Trampa

Hola lectores,

Hoy vamos a ver algún diseño de Honeynet de alta interacción.

Para ello vamos a utilizar lo siguiente:

  • Una máquina con Windows XP sin Service Pack ninguno y sin actualizar, si lo que queremos es que entren al sistema, en caso contrario un Windows XP totalmente securizado y con una aplicación web vulnerable, en mi caso suelo utilizar DotNEtNUKe en sus primeras versiones.
  • Un detector de intrusos en la máquina victima (Snort) que recolectará los eventos de los ataques
  • Un gestor de logs que recupere esos eventos y los mánde a un sistema centralizado, para ello empleamos OSSEC y un servidor Linux que los almacene.

Quiero reseñar que Yago Jesús de SecurityBydefault utilizo en la Campus Party el programa 'obfuscator' no os perdaís esa entrada en el blog, ya que es muy interesante, al igual que Eduardo que en su blog nos habla en estas entradas sobre honeynets.

¡¡EMPEZAMOS!!

Lo principal es tener configurada en la máquina victima la detección y envío.

1.- SNORT (DETECCION DE INTRUSOS)

En la máquina victima descargamos e instalamos SNORT (hay que descargarse también Winpcap).

Snort es un sniffer de paquetes y un detector de intrusos basado en red. Es un software muy flexible que ofrece capacidades de almacenamiento de sus logs tanto en archivos de texto como en bases de datos como lo es Microsoft SQL y MYSQL. Implementa un motor de detección de ataques y barrido de puertos que permite registrar, alertar y responder ante cualquier anomalía previamente definida.

Este IDS implementa un lenguaje de creación de reglas flexible, potente y sencillo. Durante su instalación ya nos provee de cientos de filtros o reglas para puertas traseras, denegación de servicios, etc...

Una vez instalado el programa podemos dejarlo 'correr' en modo 'servicio' (demonio en Linux), de esta forma:

c:\>snort.exe /INSTALL /SERVICE
Los parámetros que voy a emplear son:

c.\>snort.exe -v -i2 -l c:\snort\log\ -c c:\snort\etc\snort.conf

Que viene a decir:

Se lanza snort en modo de muestra por pantalla (-v) , que escucha por la tarjeta de red 1 (-i1), que guarda los logs que se generan (-l) y que lee el fichero de configuración snort.conf (-c)

En pantalla ilustrativa vemos como se lanza snort y como detecta un escaneo de NMAP.



2.- OSSEC (GESTOR DE EVENTOS)

Ossec es un proyecto 'open source' de gestión de Logs, que monitoriza una máquina, y que detecta las anomalías que puedan producirse en el sistema. Para hacer esto usa sobre todo una herramienta para la detección de rootkits, otra para revisar la integridad de ficheros y ejecutables del sistema, y por último un potente sistema para analizar logs.

En cuanto a la arquitectura del sistema, usa básicamente un modelo de cliente-servidor, con lo que tendremos una servidor centralizado que se encarga de recibir y actuar en base a la información que reciba de los agentes que, en definitiva, son las máquinas que están siendo monitorizadas y atacadas. La forma de actuar del servidor es, por una parte, enviando notificaciones, y por otro lado, si así se configura, generando reglas firewall que se ejecutarán en los propios agentes.

Su instalación es sobre Linux, siendo muy sencilla (utiliza asistentes basado en preguntas y respuestas), quizás el principal requisito es la necesidad de un compilador como GCC

Una vez instalado el servidor, necesitamos instalar el Agente

La instalación cliente es un ejecutable Windows que vamos a instalar en la máquina victima, es tan sencillo que no requiere explicación, tan solo poner la IP del servidor de Logs, puerto y eso si, clave privada que identifica al agente con el servidor. Para ello vamos a emplear el comando que nos proporciona el servidor para la creación de agentes. Entre las diversas opciones vemos que es capaz de crear la clave que posteriormente podremos copiar en el agente.

Una vez este configurada estas opciones, tan solo nos queda reiniciar el servidor OSSEC y ya estamos dispuestos a recibir los logs de los ataques que se produzcan

3.- SISTEMA VULNERABLE

Como indicaba anteriormente, voy a poner un sistema que realmente atraiga a los malos, para ello empleo DotNetNuke en sus primeras versiones, que contienen XSS y SQL Injection, es decir un entorno preparado y 'precocinado'. Esta versión con un poco de habilidad permite el acceso por SQL Inyection al sistema.

En el caso de que consigan una Shell (cmd.exe) también se llevarán una sorpresa, dado que instalaremos un programa 'espía' que monitorize todas las acciones llevadas a cabo, desde consola o con entorno gráfico, para ello hemos selecionado 'Golden eye' que ya hable en anteriores post y que me lo encontre en el análisis de una máquina.

Este programa funciona en modo silencioso, es trasparente a los antivirus y perfecto para nuestra trampa.





Ahora con todo esto, solo queda esperar y aprender...

1 comentarios:

Esperamos ansiosos los resultados ;)

Cuanto tiempo tardaron en hacerse con la máquina? :P