Creación de reglas para detectar malware con Yara
Hoy vamos a centrarnos en la clasificación de códigos maliciosos
basándonos en distintas características que nos permiten identificar sus
capacidades más importantes, logrando así, simplificar el trabajo de un
equipo de seguridad o un analista de malware.
Para este cometido se puede utilizar YARA, una herramienta diseñada para identificar y clasificar malware mediante la creación de reglas que permiten detectar strings (cadenas de texto), secuencias de instrucciones, expresiones regulares y otros patrones existentes dentro de los archivos maliciosos. Por ejemplo, dependiendo del archivo bajo análisis es posible conocer si se encuentra empaquetado (identificar el packer) o no, si contiene información para conectarse a una determinada dirección URL o a un servidor IRC incluso hasta detectar distintas variantes de un código malicioso que se estén propagando como parte de un ataque dirigido.
El concepto muy importante a tener en cuenta para la clasificación e identificación de códigos maliciosos con esta herramienta se basa en la creación de reglas. Una regla en YARA está compuesta principalmente por strings y conditions. Un string es una variable que representa a una cadena de texto, una secuencia de bytes o hasta la utilización de expresiones regulares que brindan una gran flexibilidad para poder representar patrones existentes dentro de las amenazas bajo análisis. Por otro lado, las conditions permiten especificar qué combinación de strings deben estar presentes en el archivo para que se lo clasifique como tal. Por ejemplo, la siguiente regla nos permite identificar si un archivo malicioso contiene información para conectarse a un servidor IRC:
Como se puede observar en la imagen anterior, las strings definen algunos de los comandos más comunes de IRC que son usados por algunos códigos maliciosos para recibir las órdenes del botmaster. Una vez que se definen las cadenas la condición necesaria para detectar un archivo como IRC es que se cumplan cuatro de las strings $irc_*. Detectar este tipo de funcionalidades en un momento previo al análisis detallado de un código malicioso permite realizar una estrategia más efectiva al momento de profundizar sobre el código malicioso.
Para este cometido se puede utilizar YARA, una herramienta diseñada para identificar y clasificar malware mediante la creación de reglas que permiten detectar strings (cadenas de texto), secuencias de instrucciones, expresiones regulares y otros patrones existentes dentro de los archivos maliciosos. Por ejemplo, dependiendo del archivo bajo análisis es posible conocer si se encuentra empaquetado (identificar el packer) o no, si contiene información para conectarse a una determinada dirección URL o a un servidor IRC incluso hasta detectar distintas variantes de un código malicioso que se estén propagando como parte de un ataque dirigido.
El concepto muy importante a tener en cuenta para la clasificación e identificación de códigos maliciosos con esta herramienta se basa en la creación de reglas. Una regla en YARA está compuesta principalmente por strings y conditions. Un string es una variable que representa a una cadena de texto, una secuencia de bytes o hasta la utilización de expresiones regulares que brindan una gran flexibilidad para poder representar patrones existentes dentro de las amenazas bajo análisis. Por otro lado, las conditions permiten especificar qué combinación de strings deben estar presentes en el archivo para que se lo clasifique como tal. Por ejemplo, la siguiente regla nos permite identificar si un archivo malicioso contiene información para conectarse a un servidor IRC:
Como se puede observar en la imagen anterior, las strings definen algunos de los comandos más comunes de IRC que son usados por algunos códigos maliciosos para recibir las órdenes del botmaster. Una vez que se definen las cadenas la condición necesaria para detectar un archivo como IRC es que se cumplan cuatro de las strings $irc_*. Detectar este tipo de funcionalidades en un momento previo al análisis detallado de un código malicioso permite realizar una estrategia más efectiva al momento de profundizar sobre el código malicioso.
- Clasificación de malware con Yara
- Buscando imágenes geolocalizadas con Yara
- Fecha de compilación de ejecutables con Yara
- Algunas reglas de YARA útiles para identificar malware
Fuente: SeguInfo
Comentarios
Publicar un comentario
siempre es bueno, leer tus comentarios