Jugar a la ofensiva en la defensiva de nuestros datos digitales

Hace tiempo escuché una conferencia sobre seguridad informática de un muy buen amigo, en la que comenzaba explicando los principios del judo. El judo es un arte marcial que busca aprovechar la fuerza del contario para defenderse e inclusive atacarlo. Aunque suene descabellado, este concepto es posible aplicarlo al área de seguridad informática. Una serie de herramientas se han diseñado bajo este principio, con el objetivo de confundir al atacante y, en algunos casos, responder al ataque.

Existen diferentes personajes en el área de seguridad informática. Podemos mencionar a hackers, crackers, script-kiddies y otros. Lo cierto es que al final quedan sólo dos tipos:  los que defienden y los que atacan. Para mucha gente es más interesante el rol de los que definen un ataque, que el papel que juegan los se defienden de uno. En varias organizaciones la estrategia de defensa se resume en definir reglas para el firewall, pagar la licencia de antivirus y administrar la instalación de parches. Sin embargo es posible hacer más interesante la defensa de los activos informáticos si involucramos técnicas de ataque dentro de la estrategia de defensa.

Uno de los servicios que es mas revisado por la gente que lleva a cabo pruebas de penetración es el de web. Estos servicios son escaneados usando software conocido con el nombre de web scanners. A principio de este año John Strand, uno de los participantes en el podcast de Pauldotcom, implementó un script en Phyton que afecta el desempeño de este tipo de herramientas y en algunos casos llega a “tirar” la herramienta. El script, de nombre SpiderTrap, se pone escuchar en el puerto 80, y muestra cuatro ligas de enlace web. Si se lleva a cabo un refresh de la página, el script genera de forma aleatoria otras cuatro ligas, por cada liga seleccionada, se generan otras cuatro ligas aleatorias adicionales. Lo anterior provoca que los scanners generen grandes cantidades de peticiones, llegando a llenar el buffer de la aplicación y, por consiguiente,  a provocar una corrupción de memoria.

Una semana después Ben Jackson desarrolló una aplicación en PHP de nombre weblabyrith, basándose en la misma idea. El autor describe su herramienta como una aplicación que crea una masa de páginas web falsas que confunden a los scanners de vulnerabilidades. El objetivo de la herramienta es retardar y mantener ocupados a scanners maliciosos, para que detectores de intrusos los puedan detectar y responder al ataque antes de que algún daño se provoque. Existe la posibilidad de definir archivos de texto plano que contengan firmas del detector de intrusos usado dentro de la organización. Cuando este archivo se lea por parte del scanner, las firmas circularán en la red y el escaneo será detectado.

Las herramientas anteriores se pueden complementar con una par más de estrategias. La primera de ellas consiste en definir números bajos como parte del rango de direcciones del que forman parte los servidores. Esto provocará un retardo en el recorrido de todas las direcciones a escanear. Por otro lado, también es posible definir ligas dentro de los servidores que redirijan a los atacantes a servidores instalados con el objetivo de analizar del ataque, i.e honeypots.

Otra forma de contraatacar fue propuesta por Val Smith. Uno de los vectores de ataques que está teniendo éxito es el incluir macros malignos en documentos de Office. El atacante envía el documento infectado al usuario y, al abrirlo se lleva a cabo el ataque. La idea es utilizar esta vector de ataque como parte de la estrategia de defensa. En el servidor web se dejan documentos Office para que el atacante los recupere.  Los documentos cuentan con macros que servirán para dar un seguimiento al documento y en algunos casos conocer la dirección IP del sistema que bajó el documento.

BeEF (Browser Explotation Framework) es el nombre de un framework usado para atacar exploradores web. En particular busca vulnerabilidades de tipo XSS en los navegadores. Otra estrategia de defensa consiste en utilizar esta herramienta dentro del servidor con el objetivo de detener el navegador usado por el atacante.

Este tipo de estrategias no son 100% infranqueables, pero sí nos permitirán diferenciar un verdadero pentest de aquel en el que sólo se corren herramientas y no analizan ni miran el sitio web. Algunas personas que se dicen expertos en pruebas de penetración, lo que hacen es correr el scanner en la noche, irse a dormir (o a otro lugar) y al día siguiente ver que regresó el escaneo. Después le ponen un formato bonito, de preferencia con diagramas de pastel, y lo presentan como un reporte de pentest.

Las estrategias de defensa evolucionan y suena interesante implementar estrategias más reactivas. Sin embargo, hay que tomar en cuenta los posibles falsos positivos y las consecuencias legales de responder a un escaneo con un ataque. No cabe duda, que esto le pone más sabor a la labor de defensa.

Fuente: b:Secure

0 comentarios:

Publicar un comentario