Em julho de 2025, o IBM X-Force descobriu novo malware atribuído ao agente da ameaça Hive0154, alinhado à China. Isso inclui uma variante atualizada do Toneshell que evita detecções e oferece suporte a várias novas funcionalidades, bem como um novo worm USB chamado SnakeDisk , descoberto em meados de agosto. O worm é executado apenas em dispositivos com endereços IP baseados na Tailândia e instala o backdoor Yokai, descoberto pela Netskope em dezembro de 2024.
O Hive0154 é um agente da ameaça bem estabelecido e alinhado à China, com um grande arsenal de malware, técnicas consistentes e atividades bem documentadas nos últimos anos. O grupo é constituído por vários subgrupos e realiza ciberataques contra organizações públicas e privadas, incluindo centros de pesquisa, grupos políticos, agências governamentais e indivíduos. A observação do X-Force sobre o uso de múltiplos carregadores de malware personalizados, backdoors e famílias de worms USB pelo grupo demonstra seus recursos avançados de desenvolvimento. A atividade do Hive0154 se sobrepõe a agentes da ameaça relatados publicamente como Mustang Panda, Stately Taurus, Camaro Dragon, Twill Typhoon, Polaris e Earth Preta.
Ao longo de 2025, o X-Force observou diversos arquivos maliciosos carregados no VirusTotal a partir de Singapura e da Tailândia:
Nome do arquivo | DLL malicioso | Servidor C2 | Data |
Meeting Venue Request Information.zip | Carregador injetando shellcode de Pubload | 188.208.141[.] | 21 de maio |
Hotel Booking Request.7z | Toneshell8 | 146.70.29[.] | 03 de julho |
Cyber_Safety_ | Toneshell8 | 146.70.29[.] | 30 de julho |
TNLA နှင့် အခြားတော်လှန်ရေးအင်အားစုများ.rar (translated Myanmar: "TNLA and other revolutionary forces") | Toneshell8 | 146.70.29[.] | 30 de julho |
Scan(08-02-205).zip | Toneshell8 | 146.70.29[.] | 05 de agosto |
Notes.rar | Carregador injetando shellcode de Pubload | 188.208.141[.] | 21 de agosto |
CallNotes.zip | Carregador injetando shellcode Toneshell7 | 146.70.29[.] | 04 de setembro |
Observou-se que o Hive0154 utilizava um novo carregador para injetar reflexivamente o Pubload ou o Toneshell7, bem como para implementar diretamente a variante mais ofuscada do Toneshell8. A variante mais recente do Pubload sofreu pequenas alterações e agora oferece suporte a servidores C2 iscas e download de cargas úteis de shellcode via HTTP POST, além de TCP bruto que imita o tráfego TLS.
O arquivo "CallNotes.zip" descoberto em setembro foi baixado da Box Cloud Storage por meio de um link de um PDF que se passava pelo Ministério das Relações Exteriores de Mianmar:
Em meados de agosto, o X-Force também descobriu o SnakeDisk, um novo worm USB que apresenta sobreposição com variantes anteriores do Tonedisk. O worm só é executado apenas em dispositivos localizados na Tailândia, conforme determinado pelo endereço de IP público. O SnakeDisk distribui o backdoor Yokai, que foi publicamente vinculado a várias outras campanhas direcionadas à Tailândia pela Netskope em dezembro de 2024.
Considerando o histórico de uso do backdoor Yokai contra a Tailândia, a descoberta do mais recente worm USB parece coincidir com os recentes eventos geopolíticos envolvendo o país:
Tradicionalmente, a República Popular da China tem sido uma benfeitora do Camboja, fornecendo armas e investindo bilhões em projetos de infraestrutura. Eventos geopolíticos recentes podem ter impulsionado o Hive0154 a iniciar operações contra a Tailândia. A implementação do worm USB SnakeDisk, configurado para ser executado apenas em máquinas baseadas na Tailândia, parece sugerir que o Hive0154 pode estar tentando penetrar em sistemas de air-gap, frequentemente empregados em redes governamentais.
O X-Force observou pela primeira vez o Toneshell versão 8 em março de 2025. Seu comportamento é muito semelhante à versão anterior 7, mas contém pequenas atualizações para evitar a detecção estática e dificultar a análise. A mudança mais visível é a inclusão de código lixo nas funções do malware. Esses trechos de código lixo implementam o seguinte comportamento:
Essas três amostras de código podem ser encontrados, por exemplo, na função que resolve todas as APIs:
Os desenvolvedores do Toneshell8 também optaram por substituir o Pseudo Random Number Generator (PRNG) por uma implementação personalizada do Linear Congruential Generator (LCG) usando constantes diferentes, por exemplo:
Os PRNGs são usados no Toneshell para gerar um ID de vítima, chaves de criptografia de tráfego C2 e verificação de autenticidade do beacon C2. A qualidade das implementações nas amostras do Toneshell8 varia bastante. O gerador acima, por exemplo, é usado pelas 4 amostras listadas acima e produz apenas 11 estados diferentes para a maioria das seeds.
Por fim, os códigos de resposta fixos enviados ao servidor C2, que notificam os operadores sobre o status de determinados comandos, agora são ofuscados por meio de cálculos a partir de diferentes inteiros fixos na amostra.
Em julho, o X-Force descobriu uma nova variante do Toneshell, que chamaremos de Toneshell9. Ela contém atualizações significativas e não havia nenhuma detecção no VirusTotal no momento em que este artigo foi escrito (318a1ebc0692d1d012d20d306d6634b196cc387b1f4bc38f97dd437f117c7e20).
A nova variante do Toneshell foi observada pela primeira vez em arquivos RAR infectados por trojans que continham o software "USB Safely Remove". A estrutura de código parece ter sido baseada em uma variante bipartida de dezembro de 2024, que contém a configuração C2 idêntica.
Semelhante às variantes anteriores, o Toneshell9 é executado como uma DLL de carregamento lateral. O arquivo RAR transformado malicioso contém um arquivo BAT, chamando um executável legítimo " USBSRService.exe " com um argumento de linha de comando "-embedding". Assim que a DLL do Toneshell "EasyFuncs.dll" é carregada na memória e a exportação FS_RegActiveX é executada, ela começa resolvendo um primeiro conjunto de APIs necessárias para a inicialização. Depois de analisar o argumento de linha de comando "-embedding", o Toneshell inicia seu executável pai em um novo processo com o argumento "EvtSys". O último argumento aciona o comportamento principal da DLL maliciosa.
O Toneshell começa inicializando um novo objeto cliente com os seguintes valores:
Em seguida, passa a resolver o restante de suas APIs necessárias através de uma função de hash personalizada e armazena os ponteiros de função em uma estrutura separada. Em seguida, ele cria um novo evento "Windows External Module", que atua como um mutex, evitando que várias instâncias sejam executadas na mesma máquina.
O Toneshell9 está repleto de vários trechos de código lixo, que recupera o número atual de ticks da CPU, armazena o resultado como uma string e a desaloca novamente.
Para gerenciar e armazenar comunicação C2, servidores proxy, beacons e cargas úteis na memória, o Toneshell instancia um grande objeto de 129 KB:
Ao contrário das variantes anteriores, o Toneshell9 enumera os hives do registro HKEY_LOCAL_MACHINE, HKEY_CURRENT_USER and HKEY_USERS\\.DEFAULT para procurar servidores proxy configurados localmente.
Se um servidor for encontrado, tanto o protocolo da URL (http, https, ftpou socks) quanto a URL completa são armazenados como strings em uma lista de objetos.
Em seguida, o ToneShell armazena seu domínio de servidor C2 e endereço IP em um vetor de strings. O mesmo IP e porta codificados são armazenados diretamente em um array de estrututuras SOCKADDR_IN. O malware então percorre as cadeias de caracteres do servidor C2, resolvendo o endereço IP para cada uma delas e adicionando-o ao mesmo array de estruturas SOCKADDR_IN.
Conforme observado nas variantes anteriores, o Toneshell passa a descartar um arquivo contendo um GUID de vítima aleatório de 16 bytes gerado por meio da função Windows _rand():
O GUID também é armazenado em uma estrutura junto com o caminho do arquivo e o nome NetBIOS da vítima.
Os dados acima são usados para construir um objeto beacon na memória. Notavelmente, o Toneshell9 realiza cálculos sobre a diferença na contagem de ticks da CPU antes e depois do comportamento principal de inicialização detalhado acima. Esse valor é normalizado e provavelmente usado para detectar anomalias no tempo de execução que podem indicar um atraso na execução da área de testes ou na depuração.
A chave XOR de 0x300 bytes é gerada por meio da _rand() e usada para criptografar os 101 bytes de dados, começando no deslocamento 0x300. Os dados acima estão agrupados em um pacote de dados de aplicação TLS 1.2 falso, com o seguinte formato:
Durante o loop principal, o Toneshell9 executa uma função para estabelecer uma conexão de socket com seu servidor C2. Ele começa com uma tentativa de conexão por meio da primeira estrutura SOCKADDR_IN. Caso isso falhe, o malware tenta estabelecer uma conexão de socket através de qualquer um dos servidores proxy coletados do registro. A tentativa é feita para cada uma das strings de endereço C2, ou seja, o endereço IP e o domínio da amostra analisada acima.
Após resolver o endereço IP do servidor proxy e conectar-se por meio de um socket TCP, ele primeiro define os tempos limite de envio e recebimento para 1 minuto. Em seguida, envia a seguinte solicitação de conexão:
Se o servidor proxy retornar um código de status 2xx, a conexão foi estabelecida com sucesso e está pronta para o tunelamento TCP bruto. Para verificar a conexão com seu servidor C2, a Toneshell9 utiliza um protocolo de handshake curto, transmitindo também o IP e a porta do servidor no processo. Se o handshake for bem-sucedido, o identificador do socket é armazenado na estrutura C2_CONNECTION e os tempos limite do socket são definidos para 2 minutos. Em seguida, o Toneshell envia o primeiro beacon de anúncio pelo socket.
O sistema espera uma resposta semelhante do servidor, que, com exceção dos primeiros 5 bytes, está criptografada com a chave XOR transmitida anteriormente:
Usando um proxy já configurado em um dispositivo infectado, o Toneshell pode se misturar efetivamente a outros tráfegos de rede. Ambientes empresariais maiores frequentemente impõem filtragem de saída, permitindo apenas o tráfego através de gateways confiáveis, o que bloquearia a comunicação direta com C2. O recurso adicional do Toneshell de contornar essa filtragem permite que ele opere em ambientes de rede bem protegidos.
Ao receber a primeira resposta C2, o Toneshell inicia uma nova thread que envia sinais de resposta semelhantes a batimentos cardíacos a cada 30 segundos, com o código de resposta 0x1 e um valor shell_id aleatório. Os beacons de resposta têm um formato muito semelhante:
O Toneshell9 é compatível com os seguintes códigos de comando:
Código | Descrição |
2 | Ignora este beacon e aguarda o próximo. |
3 | Cria um novo shell reverso e o atribui ao shell_id. |
4 | Escreve uma string de comando no shell reverso identificado pelo shell_id |
5 | Fecha o shell reverso identificado pelo shell_id |
Semelhante às variantes anteriores, um shell reverso é configurado usando pipes anônimos conectados aos handles stdin e stdout de um novo processo cmd.exe. O Toneshell9 oferece suporte a dois shells reversos ativos em paralelo e usa a estrutura abaixo para gerenciar a conexão de um shell:
Para cada shell reverso, uma nova thread é criada para verificar regularmente novos dados do pipeline stdout e enviá-los de volta ao servidor C2 em um beacon com código de resposta 0x4. Os operadores Toneshell podem escrever dados de string no pipeline usando o shell_id correto e executar comandos arbitrários na máquina. Ao fechar um shell reverso, o processo conhost.exe identificado pelo parent_pid também é encerrado na máquina.
Em agosto de 2025, o X-Force descobriu um worm USB até então desconhecido, que foi atribuído ao Hive0154. A DLL de 32 bits foi carregada no VirusTotal como "01.dat" da Tailândia e exibe funcionalidades semelhantes às do Toneshell9. Ambos são executados por meio de carregamento lateral de DLL, com todas as exportações, exceto o DllEntryPoint e o ponto de entrada do malware, apontando para a mesma função, que retorna imediatamente. Ambos também apresentam funcionalidades de resolução de API quase idênticos, o que é consistente com quase todos os malwares relacionados ao Toneshell. Semelhante ao exemplo Toneshell9, o SnakeDisk também lê um argumento de linha de comando para selecionar um dos dois caminhos de execução possíveis:
Para executar a funcionalidade de infecção USB, o SnakeDisk requer um arquivo de configuração, que ele procura no diretório atual do executável principal. Todos os arquivos encontrados nesse diretório, a menos que tenham o nome " System Volume Information", serão adicionados a uma lista de possíveis arquivos de configuração. O Tonedisk passa a abrir e ler cada arquivo, testando as seguintes condições para verificar o arquivo antes de prosseguir com a descriptografia.
O SnakeDisk prossegue descriptografando os dados usando um provável algoritmo XOR bifásico personalizado e uma chave de 320 bytes armazenada em um cabeçalho de 330 bytes.
Por fim, o malware analisa 18 valores de string que definem a configuração do malware. O X-Force não conseguiu recuperar um arquivo de configuração; no entanto, a análise do SnakeDisk revelou os seguintes propósitos prováveis dos valores.
Campo de configuração | Propósito |
version | Versão de malware usada para determinar se um cliente já infectado deve ser infectado novamente com uma variante atualizada. |
mutx | String mutex. |
psd | Não usado na amostra analisada. Possivelmente equivalente local a "usd" - todos os valores "u*" são nomes de arquivos/diretórios no USB após a preparação maliciosa. |
urd | Possivelmente "diretório raiz USB". Nome do diretório criado no USB que contém subdiretórios. |
uud | Possivelmente "diretório de usuários USB". Nome do diretório em <urd> que contém os arquivos originais dos usuários do USB. |
usd | Possivelmente "diretório de preparação USB". Nome do diretório em <urd> que armazena vários componentes maliciosos do SnakeDisk. |
pnex | Possivelmente "nome do executável pai". Nome do arquivo existente no diretório atual do SnakeDisk durante a execução. |
pndl | Possivelmente "nome da DLL pai". Nome do arquivo existente no diretório atual do SnakeDisk durante a execução. |
pnen | Possivelmente "nome criptografado do pai". Nome do arquivo existente no diretório atual do SnakeDisk durante a execução. |
pnendl | Possivelmente "nome da DLL criptografada pai". Nome do arquivo existente no diretório atual do SnakeDisk durante a execução. |
unex | Possivelmente "nome do executável USB". Nome de arquivo de um arquivo copiado de <pnex> para o USB. |
undl | Possivelmente "nome do USB DLL". Nome de arquivo de um arquivo copiado de <pndl> para o USB. |
unen | Possivelmente "nome do USB criptografado". Nome de arquivo de um arquivo copiado de <pnen> para o USB. |
unendl | Possivelmente "DLL criptografada do nome do USB". Nome de arquivo de um arquivo copiado de <pnendl> para o USB. |
unendl_org | Nome do arquivo (provavelmente um arquivo DLL) copiado de <pnendl> para o diretório raiz do USB e e ocultado por meio de atributos de arquivo. |
unconf | Nome do arquivo de configuração do SnakeDisk descartado no USB. |
regkey | Potencialmente relacionado a um mecanismo de persistência de registro. Não usado na amostra analisada. |
schkey | Potencialmente relacionado a um mecanismo de persistência de tarefa agendada. Não usado na amostra analisada. |
Depois de ler com sucesso o arquivo de configuração, o SnakeDisk tentará confirmar se ele está sendo executado atualmente em uma máquina baseada na Tailândia. Ele envia uma solicitação HTTP GET para http://ipinfo[.]io/json e verifica se o campo "país" corresponde a "THA" ou "TH". Se isso for verdade, a execução continua.
É importante destacar que a execução também continuará se ocorrer um erro ao resolver APIs ou durante a comunicação de rede.
O SnakeDisk então garante que ele seja executado apenas em uma única instância, tentando abrir um mutex "Global\\<mutx config value>". Se o mutex já existir, o malware será encerrado; caso contrário, ele criará o mutex via CreateMutexW.
Para infectar qualquer unidade USB já conectada, o SnakeDisk começa a percorrer todas as letras de unidade possíveis de A a Z. Ele abre um handle para o volume físico, como "\\.\A:" e envia o código de controle de IO IOCTL_STORAGE_GET_HOTPLUG_INFO (0x2D0C14) para o dispositivo. Se o dispositivo for um dispositivo de hotplug de acordo com a estrutura STORAGE_HOTPLUG_INFO retornada, ele iniciará uma nova thread para infectar essa unidade.
Após percorrer todas as letras de unidade, o SnakeDisk aguarda 5 segundos e então registra uma nova classe de janela "TestClassName" e cria uma janela correspondente "TestWindowName". Para recuperar mensagens do sistema operacional, a função cria um loop do Windows Message usando GetMessageW e envia as mensagens para o procedimento de janela do malware via TranslateMessage e DispatchMessageW. Ele só sai do loop ao receber uma mensagem WM_CAP_PAL_OPEN (0x450). A classe de janela maliciosa faz referência a um procedimento personalizado que escuta a mensagem WM_DEVICECHANGE (0x219) e, especificamente, os eventos DBT_DEVICEARRIVAL (0x8000) e DBT_DEVICEREMOVECOMPLETE (0x8004).
Se uma mensagem desse tipo for recebida, por exemplo, quando um dispositivo USB é conectado ao computador infectado, a função usará o campo "dbcv_unitmask" da estrutura DEV_BROADCAST_VOLUME para determinar a letra da unidade do dispositivo correspondente. Para dispositivos recém-conectados, uma nova thread é iniciada para infectar a unidade. Se o SnakeDisk detectar a remoção de um dispositivo, ele inicia uma thread para descarregar e executar sua carga útil incorporada, iniciando o mesmo fluxo de execução que ocorreria caso a DLL do SnakeDisk fosse executada com o argumento de linha de comando "-hope".
O processo para infectar um dispositivo USB detectado começa com a busca de um arquivo de configuração existente na unidade para determinar se ela já foi infectada. Ele tenta descriptografar e analisar uma configuração de qualquer arquivo com a extensão .dat ou .cd . Se uma configuração for analisada, o malware compara o número da versão da unidade já infectada com a versão de sua própria configuração e só infectará novamente as unidades com versões mais antigas do SnakeDisk.
Em seguida, o SnakeDisk inicia outra thread para migrar os arquivos existentes no USB para um novo subdiretório. Ao ocultar os arquivos que o usuário espera encontrar em seu dispositivo USB, o malware aumenta a probabilidade de a vítima acreditar que o USB ainda não foi aberto e clicar acidentalmente no executável malicioso em uma nova máquina com o mesmo nome do dispositivo. Após a execução, o programa malicioso copia de volta os arquivos do usuário para evitar suspeitas. O caminho que contém os dados do usuário em um dispositivo infectado é criado a partir de valores de configuração como:
O malware pode usar dois mecanismos diferentes para as operações; cada um executado em sua respectiva thread. O primeiro usa SHFIleOperationW para migrar cada arquivo e, durante cada operação, também lê 32 bytes de um arquivo "C:\\Windows\\Tmp\\msd.log", que são gravados em um arquivo "C:\\ProgramData\\app.log" antes de excluir o último. O propósito desse comportamento não está claro.
Enquanto a thread está em execução, o malware verifica regularmente a conclusão bem-sucedida por 30 segundos antes de iniciar uma segunda thread. A segunda thread usa robocopy para migrar os arquivos e executa o seguinte comando em um novo processo:
Ambas as movimentações de arquivos excluem os arquivos maliciosos do SnakeDisk e o arquivo "System Volume Information", que deve permanecer no diretório raiz do disco USB. Depois de executar o comando acima, o mesmo comando é iniciado novamente com duas flags adicionais "/IS" e "/XO", para incluir os mesmos arquivos e excluir arquivos do diretório de origem mais antigos que o destino.
Depois de mover os arquivos já existentes no USB, o SnakeDisk continua copiando suas próprias cargas úteis do diretório atual para a unidade USB. Os seguintes arquivos, conforme especificado na configuração, são copiados via CopyFileW, cada um em uma nova thread:
O nome do arquivo EXE na raiz da unidade USB é definido com o nome do volume do dispositivo USB ou apenas "USB.exe" se estiver vazio. O SnakeDisk também define os atributos SYSTEM e HIDDEN no arquivo copiado para "<drive_letter>:\<unendl_org>". Todos os diretórios no USB também carregam esses atributos, ocultando efetivamente tudo, exceto o executável. Embora o X-Force não tenha recuperado nenhum dos outros arquivos, worms USB anteriores usaram a mesma técnica para fazer com que as vítimas clicassem no executável, o que carregava lateralmente uma DLL para iniciar a infecção. O nome do arquivo dessa DLL maliciosa provavelmente está armazenado no valor de configuração "unendl_org". Por fim, o SnakeDisk grava sua configuração em um novo arquivo no USB com o nome do valor "unconf".
A thread SnakeDisk responsável por descarregar e executar sua carga útil incorporada é lançada quando uma remoção de dispositivo USB é detectada, ou no início da execução do SnakeDisk via argumento de linha de comando "-hope".
Primeiro, a thread lê um arquivo de marcador "vm.ini" em seu diretório e compara o conteúdo com seu próprio caminho atual. Esse arquivo também é gravado após o descarregamento e a execução bem-sucedidos das cargas úteis e indica se a vítima já foi infectada pela carga útil incorporada do SnakeDisk. Se os caminhos coincidirem, nenhuma carga útil será descarregada e a thread será encerrada.
Após a primeira verificação, o SnakeDisk começa a descarregar uma série de cargas úteis para o diretório "C:\Users\Public". Cada arquivo é construído na memória a partir de valores imediatos em grandes funções entre 0,6 e 3,3 MB.
As cargas são descriptografadas por meio de uma operação XOR simples antes de serem descartadas como arquivos em:
Esses arquivos são concatenados em grupos de três para produzir as duas cargas úteis finais por meio dos seguintes comandos:
O nome de arquivo EXE é criado a partir de 10 letras maiúsculas e números aleatórios. Após a concatenação, os arquivos são excluídos.
Finalmente, o executável é iniciado em um novo processo com um argumento de linha de comando codificado:
Como era de se esperar, o EXE (bb5bb82e5caf7d4dbbe878b75b23f793a5f3c5ca6dba70d8be447e8c004d26ce) é um executável legítimo e assinado(acwebbrowser.exe) que faz o carregamento lateral da libcef.dll maliciosa durante a execução.
A carga útil da DLL foi identificada como o backdoor Yokai, reportado em dezembro de 2024 pela Netskope. Após a execução, o malware primeiro verifica o argumento "-project-mod" e, em seguida, estabelece persistência por meio de uma tarefa agendada se o usuário não for membro do grupo de administradores:
Ele passa a criar um novo mutex "k1tpddvivh74fo1et725okr1c1" e inicializa uma estrutura de configuração interna. A variante instalada pelo SnakeDisk contém a string de versão "1.0.0" e se comunica com um servidor C2 codificado por meio de requisições HTTP POST:
Conforme descrito na análise da Netskope, o Yokai é usado para criar um shell reverso por meio de canais anônimos, permitindo que os operadores executem comandos arbitrários na máquina infectada.
Curiosamente, o Yokai mostra sobreposições com outras famílias de backdoor atribuídas ao Hive0154, como Pubload/Pubshell e Toneshell. Embora essas famílias sejam claramente malware distintos, elas seguem, em linhas gerais, a mesma estrutura e usam técnicas semelhantes para estabelecer um shell reverso com o servidor C2.
A análise do X-Force também revelou muitas sobreposições entre o SnakeDisk e o Tonedisk. Ao longo dos anos, várias famílias de worms USB foram associadas ao Hive0154. Variantes fortemente relacionadas à família Toneshell em suas implementações são rastreadas pelo X-Force, como Tonedisk. Até o momento, foram identificadas três versões principais do Tonedisk (A, B e C). Cada uma das versões do Tonedisk é um pacote de diferentes componentes maliciosos que compõem a funcionalidade completa do worm USB. Esses componentes incluem ativadores, carregadores, disseminadores, arquivos criptografados, instaladores e backdoors.
O SnakeDisk se sobrepõe especificamente à variante ToneDisk A, que também foi relatada em meados de 2023 pelo Checkpoint como WispRider. Os mecanismos de propagação USB, o hash da API e os arquivos de configuração de ambos os malwares apresentam diversas semelhanças, que estão de acordo com a conhecida tendência dos subclusters do Hive0154 de compartilhar e reutilizar malwares.
O X-Force acompanha a atividade neste relatório sob o cluster Hive0154, que se sobrepõe parcialmente com atividades publicadas como Mustang Panda, Stately Taurus, Camaro Dragon, Twill Typhoon, Polaris, TEMP.Hex, and Earth Preta. Esse grupo parece manter um ecossistema de malware consideravelmente grande, com sobreposições frequentes tanto no código malicioso quanto nas técnicas usadas durante os ataques e no direcionamento. No âmbito do cluster maior, o X-Force separa pelo menos três subclusters de atividade com baixa confiança, com cada cluster associado a uma das cepas centrais de malware PlugX, ToneShell e Pubload. Notavelmente, cada cepa de malware é associada a um framework de worm USB diferente e a uma ou mais variantes de malware carregador relacionadas, que mudam com mais frequência. O mesmo carregador pode ser usado para diferentes cargas, como Toneshell ou Pubload, dentro do mesmo período de tempo. No entanto, é importante observar que o cluster de atividades não sinaliza automaticamente que elas estão operando como subgrupos separados.
A atividade associada ao uso do SnakeDisk e do backdoor Yokai possivelmente indica um subcluster adicional do Hive0154. Atualmente, parece estar direcionado para a Tailândia, como evidenciado pelas verificações de geolocalização de IP nos relatórios da SnakeDisk e da Netskope.
O Hive0154 continua sendo um agente da ameaça altamente capaz, com vários subclusters ativos e ciclos de desenvolvimento frequentes. O X-Force avalia com confiança que grupos alinhados à China, como o Hive0154, continuarão a refinar seu grande arsenal de malware e terão como alvo organizações públicas e privadas em todo o mundo. O malware discutido no relatório acima provavelmente ainda está em fase inicial de desenvolvimento, permitindo que os defensores adotem mecanismos de detecção antes de seu uso generalizado. As entidades com risco de espionagem pelo Hive0154 devem permanecer em um estado mais elevado de segurança defensiva e vigilantes em relação às técnicas mencionadas neste relatório, além de revisar as seguintes recomendações:
Indicador | Tipo de indicador | Contexto |
f8b28cae687bd55a148d363d58f1 | SHA256 | Arquivo malicioso preparado para entregar o Toneshell8 |
8132beeb25ce7baed0b561922d26 | SHA256 | Arquivo malicioso preparado para entregar o Toneshell8 |
d1466dca25e28f0b7fae71d5c2abc0 | SHA256 | Arquivo malicioso preparado para entregar o Toneshell8 |
1272a0853651069ed4dc505007e85 | SHA256 | Arquivo malicioso preparado para entregar o Toneshell8 |
b8c31b8d8af9e6eae15f30019e39c | SHA256 | Arquivo malicioso preparado para entregar o Toneshell7 |
7087e84f69c47910fd39c3869a70 | SHA256 | Arquivo malicioso preparado para entregar o Pubload |
38fcd10100f1bfd75f8dc0883b0c | SHA256 | Arquivo malicioso preparado para entregar o Pubload |
69cb87b2d8ee50f46dae791b5a0 | SHA256 | PDF contendo URL de download para arquivo malicioso |
564a03763879aaed4da8a8c1d60 | SHA256 | Carregador injetando Toneshell7 |
e4bb60d899699fd84126f9fa0df | SHA256 | Carregador injetando Pubload |
c2d1ff85e9bb8feb14fd015dceee1 | SHA256 | Carregador injetando Pubload |
188.208.141[.]196 | IPv4 | Servidor C2 do Pubload |
bdbc936ddc9234385317c4ee83 | SHA256 | Backdoor do Toneshell8 |
f0fec3b271b83e23ed7965198f3b | SHA256 | Backdoor do Toneshell8 |
e7b29611c789a6225aebbc9fee37 | SHA256 | Backdoor do Toneshell8 |
9ca5b2cbc3677a5967c448d9d21 | SHA256 | Backdoor do Toneshell8 |
146.70.29[.]229 | IPv4 | Servidor ToneShell7/ToneShell8 C2 |
318a1ebc0692d1d012d20d306 | SHA256 | Backdoor Toneshell9 |
0d632a8f6dd69566ad98db56 | SHA256 | Arquivo malicioso preparado para entregar Toneshell9 |
39e7bbcceddd16f6c4f2fc2335a | SHA256 | Arquivo malicioso preparado para entregar Toneshell9 |
05eb6a06b404b6340960d7a6 | SHA256 | Carregador contendo o fork do Toneshell que serviu de base para o ToneShell9 |
123.253.34[.]44 | IPv4 | Servidor C2 do Toneshell9 |
www.slickvpn[.]com | Domínio | Servidor C2 do Toneshell9 |
dd694aaf44731da313e4594d | SHA256 | Worm USB SnakeDisk |
bb5bb82e5caf7d4dbbe878b7 | SHA256 | Carga útil EXE benigna do SnakeDisk usada para o carregamento lateral de vulnerabilidades Yokai |
35bec1d8699d29c27b66e564 | SHA256 | DLL do backdoor Yokai |
http://118.174.183[.]89/kptinfo | URL | Servidor Yokai C2 |
IBM X-Force Premier Threat Intelligence agora está integrado ao OpenCTI pela Filigran, fornecendo inteligência de ameaças praticável sobre essa atividade de ameaças e outras. Acesse insights sobre agentes de ameaças, malware e riscos do setor. Instale o X-Force OpenCTI Connector para aprimorar a detecção e a resposta, reforçando sua cibersegurança com a experiência do IBM X-Force. Obtenha hoje mesmo uma avaliação de 30 dias do X-Force Premier Threat Intelligence!