miércoles, 29 de mayo de 2019

Detectando un meterpreter con las reglas Yara

Ya vimos hace unos días lo que eran las reglas Yara y cómo aplicar algunas de ellas para detectar malware. Eso lo vimos con un ejemplo muy casero e inventado, pero el poder que tienen aplicar reglas Yara, es mucho y nos puede ayudar bastante.



Antes de escribir este post, vi que, el post al que voy a hacer referencia tiene ya casi 2 años -el tiempo vuela-. El post al que me refiero es al de Cómo hackear Windows 7 con el típico meterpreter reverse_tcp.

Este ataque, aunque bastante de sencillo, ya no sólo de hacer, también de prevenir, nos os imagináis lo efectivo que puede llegar a ser. Eso sí, tendremos que conocer muy bien cada caso.

Estudio de cada caso.

Lo primero que tenemos que hacer es conocer muy bien cada tipo de ataque para así realizar reglas Yara lo más precisas posible.


Tenemos, como vemos, un payload que será el que utilizaremos para obtener la sesión meterpreter. Lo creamos como ya sabemos con msfvenom. Pero claro, de momento no podríamos aplicar ninguna regla, puesto que no sabemos mucho de este payload-al menos de momento. Es obligatorio entonces, por lo menos, mirar sus metadatos, donde veremos que se repite, hasta en 2 ocasiones, el ab.exe. Ya tenemos nuestra regla.


En este caso es especial y distinto a lo que vimos en el anterior artículo. Y es distinto porque esta vez tenemos ab.exe que se repite 2 veces, por lo que diremos en la regla Yara precisamente eso, que la condición es que se repita 2 veces.


Lanzamos nuestro Yara y nos lo detecta sin problema. Habríamos neutralizado un ataque (si es que no se ha abierto en un Windows antes).

Pero lo podemos completar aún más. Si sabéis un poco cómo funciona este payload, sabréis que utiliza una serie de Payloads ¿Cómo sabemos esto? Muy sencillo, lo miramos en su código fuente.


Añadimos por tanto esas DLLs a nuestras reglas Yara y en la condición le decimos que, además de los metadatos, encuentre todas las DLLs que le hemos pasado. Sencillo.


Volvemos a lanzar Yara y vemos que también nos lo detecta, pero os podéis preguntar ¿Por qué escogemos esas DLLs y no otra parte de su código?

Recordad que para las reglas, tendremos que añadir algo que sea muy concreto de cada caso que estemos tratando, por lo que un printf o algo por el estilo no no es útil, tiene que ser algo que sea inequívoco de este malware o, en este caso, payload.

Lo que hemos visto hoy, tiene muchas más implicaciones de lo que podéis pensar en un principio, pero eso será algo que vayamos viendo en otros artículos.

¿Hackeamos el Mundo?

No hay comentarios:

Publicar un comentario

Related Posts Plugin for WordPress, Blogger...

Entrada destacada

El server me sabe a poco.

Soy un fanático del Rock y de Debian . (Creo que voy a inventar Rockbian, que suena bien y todo xD) Llevaba tiempo queriendo unir estos 2 c...