Una solución de seguridad integral necesita una sensación de sutileza: no todo el código de máquina se clasifica fácilmente como malicioso. Como con la mayoría de las cosas en la vida, hay un área gris en la detección de malware que incluye herramientas de piratería, aplicaciones mal diseñadas o fácilmente explotables, o adware límite que proporciona pocos beneficios para el desafortunado usuario de la máquina que lo ejecuta.
Muchas aplicaciones que caen en esta área gris no causan daño directamente a un sistema o usuario, pero la mera presencia de estos archivos en una computadora puede debilitar la postura de seguridad general, lo que puede facilitar otros ataques. Algunas herramientas abren tomas de comunicación adicionales, proporcionan puertas traseras no deseadas, o hacen que sea más fácil para alguien con intenciones maliciosas descargar y ejecutar módulos de fuentes no confiables, o introducir nuevos errores de software explotables.
Muchas soluciones antivirus advierten a los usuarios cuando detectan archivos que se encuentran en esta área gris. A veces, su software de seguridad puede permitirle suprimir la detección si un administrador determina que el riesgo asociado es aceptable.
En esta publicación, estamos viendo un subconjunto más específico de herramientas dentro de esta área gris.
¿Qué son las herramientas de sombrero gris?
Las herramientas de sombreros grises son kits de software que a menudo utilizan los probadores de penetración y los equipos rojos para generar ataques con cargas útiles benignas, con el fin de probar la seguridad de la computadora y la red.
La mayoría de las herramientas de sombrero gris intentan ofuscar un determinado ejecutable, código de shell o carga de lenguaje de scripting con el propósito de evadir la detección por software antivirus.
Otras herramientas de sombrero gris pueden proporcionar código de biblioteca que contiene métodos comunes de explotación, registro de teclas, técnicas anti-depuración o código para detectar la presencia de un entorno limitado, entorno virtual o emulación de instrucciones.
Algunas herramientas simplemente ayudan a facilitar la comunicación a un servidor de comando y control, al proporcionar un marco para la comunicación cliente-servidor con un objetivo de ataque dado.
La mayoría de estos kits están disponibles gratuitamente y se publican en repositorios de control de fuentes de la comunidad como GitHub y SourceForge. Otros kits están disponibles en el mercado por un precio y se comercializan a los profesionales de ventas con el mismo uso previsto para realizar auditorías de seguridad. Estos tipos de herramientas a menudo incluyen descargos de responsabilidad sobre cómo el código solo debe ser utilizado para probar la seguridad de la computadora o la red, por alguien autorizado para realizar esa tarea por el propietario de la computadora o la red, y que los autores no se hacen responsables de los posibles usos ilegales de su creación.
Estas herramientas también son adoptadas por delincuentes
Por supuesto, no hay forma de evitar que los usuarios criminales, con intenciones nefastas, usen estos kits para producir o habilitar malware. Si bien una gran cantidad de malware mediocre puede usar estas herramientas de sombrero gris sin modificar, «listas para usar», los autores de malware más creativos a menudo modificarán aún más una herramienta de sombrero gris dada para intentar expandir aún más sus capacidades o hacer que sea más difícil para el software de seguridad detectar.
Estos tipos de usuarios generalmente tienen poco respeto por los diversos acuerdos de licencia, las leyes de propiedad intelectual o las solicitudes antes mencionadas del autor de no utilizar su software para fines ilegales. Su acuerdo de licencia termina aquí.
Nuestro objetivo es detener estas cargas útiles, así como lo hacemos con el malware
Es bastante importante que las soluciones de seguridad informática protejan los sistemas de los ataques que facilitan estas herramientas, ya que se utilizan en muchos ataques. También es cada vez más importante para los productos de seguridad no solo identificar los ataques específicos empleados por el kit de herramientas original, sino también desarrollar una detección más completa que pueda identificar genéricamente los métodos o técnicas utilizados en la cadena de ataque. De esa manera, un analista puede construir una forma de detectar las variaciones de los métodos que siguen inevitablemente, una vez que los delincuentes comienzan a usar una herramienta de sombrero gris dada.
Herramientas centrales de sombrero gris
En nuestros esfuerzos por rastrear el uso de las herramientas de sombreros grises, descubrimos que la mayoría de las herramientas de sombreros grises emplean una de las pocas herramientas básicas para generar el código inicial, la carga útil o el componente que luego sería procesado por una herramienta secundaria. Esto crea una cadena de dependencia en la que la herramienta A es un requisito previo para la herramienta B.
Algunas herramientas de sombreros grises instalan un conjunto completo de otras herramientas de sombreros grises con el fin de encadenar varios métodos juntos o superponer diferentes tipos de ofuscación de código. Estos componentes prerrequisitos comunes que llamamos herramientas centrales .
El siguiente cuadro muestra las tres herramientas principales más populares que seguimos en 2019 y el porcentaje de detecciones de herramientas principales en entornos de clientes que contienen elementos de firma generados o inspirados por esa herramienta.
Metasploit
De las herramientas principales, varios componentes que se originaron como parte del marco Metasploit son, con mucho, la herramienta más común en la caja de herramientas de sombrero gris, utilizada en el 73% de los incidentes en los que detectamos e interceptamos el uso de cualquier tipo de gris herramienta de sombrero durante una infección. Quizás sería mejor caracterizarlos como herramientas inspiradas en Metasploit, ya que los números de las herramientas centrales también incluyen muestras que contienen una carga útil de la herramienta central o se conectan a un servidor C2 de la herramienta central. No todas las cosas que identificamos como parte de Metasploit Framework son Metasploit ‘vainilla’, algunas solo contienen componentes de Metasplot.
Algunas de las razones de su popularidad son:
- Está disponible gratuitamente y preinstalado en las distribuciones de Kali Linux.
- Contiene un componente similar a SDK (MSFVenom) al que pueden llamar otras herramientas para facilitar la generación de shellcode personalizado.
- Contiene un componente modular de Meterpeter que se puede empaquetar en otras herramientas y permite a los atacantes utilizar Metaspoit como servidor C2.
Golpe de cobalto
Cobalt Strike es la tercera herramienta principal más popular con muchas características similares a Metasploit. Vemos que los componentes de Cobalt también se usan en el malware del mundo real, pero debido a que no es de código abierto y se vende solo a la comunidad de prueba de lápiz directamente, puede ser más difícil para los editores de herramientas de sombrero gris emplear sus componentes en trabajos derivados.
Sí vemos los componentes de Cobalt utilizados en los ataques del mundo real. Algunos ejemplos de esto incluyen el ransomware MegaCortex que contiene una baliza que se utiliza para conectarse de nuevo a un servidor Cobalt Strike con un shell inverso.
Estos tipos de conexiones de carcasa inversa a la máquina víctima son comunes con muchas herramientas de sombrero gris. Los atacantes utilizan la capacidad de la herramienta para acceder de forma remota a un sistema en situaciones en las que el objetivo reside detrás de las puertas de enlace y firewalls NAT (que, para ser justos, es la mayoría de ellos).
Esta conexión también se puede establecer utilizando solo un pequeño bloque de shellcode (a menudo de menos de 100 bytes de tamaño).
El ransomware Snatch es otro ejemplo real de malware que utiliza un componente de herramienta de sombrero gris en un ataque malicioso. Al igual que MegaCortex, Snatch también usa Cobalt Strike para facilitar una conexión de shell inversa al sistema de destino. Una vez que la conexión de shell inversa se ha conectado nuevamente a un oyente de Cobalt Strike, el atacante puede usar Cobalt Strike para controlar de forma remota el sistema infectado.
Imperio PowerShell
Consideramos que PowerShell Empire es una herramienta central debido a que es la fuente de muchas técnicas maliciosas de secuencias de comandos de PowerShell utilizadas en otras herramientas de sombreros grises.
PowerShell Empire no se usa necesariamente de la misma manera que muchas de las otras herramientas. El marco de ataque contiene una gran colección de métodos de plantilla que se copian y usan en otras herramientas. Aunque PowerShell Empire puede no haber sido el origen inicial de todas las fuentes de script que contiene, aún lo consideramos una herramienta central debido a su popularidad en las comunidades.
Etapa secundaria y herramientas de sombrero gris menos populares
Muchas herramientas de sombreros grises usan cargas útiles u oyentes de las herramientas centrales anteriores. La siguiente tabla incluye detecciones para herramientas de sombreros grises de etapa secundaria también.
Las herramientas de etapa secundaria a menudo incorporan shellcode u otros componentes generados por una de las herramientas principales, pero agregarán otras capas de ofuscación o funcionalidad.
Es importante tener en cuenta que, en algunos casos, los atacantes usan más de una herramienta.Esto puede causar algunas imprecisiones en nuestro seguimiento, ya que solo asociamos la muestra con las características del kit que se utilizaron en la última capa de procesamiento en la cadena de compilación.
Los siguientes cuadros muestran las herramientas principales y las detecciones de herramientas de etapa secundaria que hemos visto en todo 2019.
A menudo es difícil determinar qué porcentaje de las detecciones son auditorías de seguridad internas en lugar de un ataque malicioso en estos números. Cuando observamos las detecciones a lo largo del tiempo, vemos que las auditorías se llevan a cabo muy cerca, con las mismas herramientas y en la misma red o entorno del cliente.
A menudo, los picos significativos en las detecciones pueden ser indicativos de que los evaluadores de penetración realizan auditorías. Pero eso puede variar entre los juegos de herramientas. Algunos son más populares en la comunidad de autoría de malware, mientras que otros son más populares entre los equipos rojos
Avanzando
Comprender el uso de la herramienta gorro gris en las comunidades de prueba de penetración y las adaptaciones de estas herramientas como se usan en malware nos ayuda a comprender mejor las tendencias en el panorama de amenazas.
También nos ayuda a predecir mejor qué nuevos métodos y cargas útiles probablemente serán populares en el futuro.
En 2020, esperamos que el uso de las técnicas de evasión de PowerShell siga siendo popular, así como el uso de WMI y otros métodos no convencionales para lograr la persistencia. También esperamos ver métodos nuevos y mejorados para codificar cargas útiles de código de shell, así como intentos de evadir la detección en memoria de los diversos agentes de devolución de llamada C2.
Expresiones de gratitud
El autor desea agradecer a sus colegas investigadores Andrew O’Donnell y Gabor Szappanos por sus contribuciones a esta investigación.