jueves, marzo 27, 2008

Los IDS como instrumento de lucha contra los exploits y el malware

Parece prácticamente inexcusable que a estas alturas cualquier red que se precie proteger cuente con mecanismos de detección de intrusos.

De entre las múltiples opciones que poseen los administradores, hay un sistema de detección bastante popular. Se trata de Snort, un buen sistema de detección que además, es libre y gratuíto.

Una de las grandes ventajas de Snort es que admite la carga de firmas específicas para determinadas vulnerabilidades, factor interesante a tener en cuenta a la hora de minimizar el riesgo que proviene de la existencia de exploits masivos que puden atacar nuestra infraestructura.

Así por ejemplo, a raíz de la reciente publicación de MS06-042, sobre la que se habló extensamente ayer en una-al-día, han aparecido algunos exploits on the wild que pueden ser detenidos con ayuda de nuestro amigo Snort.

Para ello, basta con añadir firmas que permitan identificar estos exploits. Desde la firma más genérica, del tipo alert tcp any any -> any $RPC_PORTS (msg:"US-CERT MS06-040 Indicator"; content:"| 90 90 EB 04 2B 38 03 78 |"; classtype:malicious-activity; sid:1000003; rev:1;), a firmas más elaboradas, que incluyen información suficiente para identificar al vuelo los exploits conocidos para un determinado problema de seguridad.

Para entender la secuencia PCRE que sirve habitualmente como firma para un IDS como Snort, basta con acudir a una referencia Regular Expression Basic Syntax Reference, en la que se estandariza la sintaxis adecuada para codificar firmas adecuadamente. Estas PCRE son las llamadas Perl Compatible Regular Expressions, orientadas a ofrecer patrones de coincidencia (matching) en expresiones regulares.

Este tipo de firmas pueden ser consultadas y descargadas de servicios como Bleeding Edge Snort. Otro ejemplo interesante de firma sirve para contrarrestar el reciente troyano que se comunica vía túnel ICMP, y sobre el que habló Julio en nuestro blog del laboratorio

No hay comentarios: