Worm em JavaScript que se espalha por mídia removível e vira botnet de mineração e de ataque a WordPress
O Bondat circula desde 2013 e continua simples de propósito: um script JavaScript que troca os arquivos de um pendrive por atalhos, rouba dados básicos do computador e aguarda ordens de um servidor que já mandou minerar Monero no navegador e atacar sites WordPress por força bruta. Trate pendrive de origem incerta como suspeito, bloqueie os indicadores da seção 10 e recupere os arquivos escondidos sem abrir nenhum atalho.
O Bondat não é perigoso pela sofisticação, e sim pela combinação de dois fatores baratos: uma isca que depende só de o usuário abrir um atalho com cara de pasta ou de documento [1] [2], e um servidor de comando que pode trocar a carga a qualquer momento [2]. Quem enxerga nele apenas um vírus de pendrive subestima o risco: o mesmo computador já foi usado para minerar criptomoeda e para atacar sites de terceiros [2].
Este relatório perfila o JS/Bondat, uma família de worm escrita em JavaScript e executada pelo Windows Script Host (WSH), o interpretador de scripts nativo do Windows. A Microsoft publicou a primeira descrição da família em 3 de abril de 2013 [1], e a empresa chinesa 360 Total Security a descreve como uma ameaça gerenciada por console remoto, com origem no mesmo ano [2]. A família ainda produz amostras: uma submissão a sandbox pública de abril de 2020 mostra o worm completo, em execução e se comunicando com infraestrutura já conhecida desde 2018 [2] [3].
A infecção se espalha por mídia removível. O worm esconde as pastas e os arquivos do pendrive, cria atalhos com os mesmos nomes e ícones, e cada atalho executa o worm antes de abrir o conteúdo original [1] [2]. Instalado, ele grava uma cópia na pasta do usuário, cria persistência na pasta de inicialização, desliga ferramentas de segurança e de análise, e envia dados do computador a um servidor por HTTP [1] [3].
Avaliamos a severidade como média. O grau técnico é baixo e o dano direto de cada infecção é limitado. O que impede uma classificação menor é a persistência, a dificuldade de o usuário limpar o computador sozinho, e sobretudo o canal de comando que permitiu entregar mineração de Monero e uma botnet de força bruta contra WordPress sobre a mesma base infectada [2].
As recomendações estão em duas frentes. A seção 08 trata de caça, porque o worm se esconde atrás de uma cópia renomeada de um programa legítimo do Windows. A seção 09 trata de contenção, recuperação dos arquivos do pendrive e prevenção estrutural. A recuperação merece atenção própria, pois os arquivos do usuário não foram apagados, e formatar a mídia às pressas destrói justamente o que ainda é recuperável.
Não houve submissão a sandbox nem análise de amostra por esta equipe. Todo o conteúdo técnico é inteligência de fonte aberta, extraída das referências [1] a [7] e conferida contra o texto de cada uma. Não trate os indicadores abaixo como prova pericial de um incidente local. Eles servem para orientar caça e resposta, e cada achado precisa ser confirmado no seu próprio ambiente.
| Campo | Valor |
|---|---|
| Nome | JS/Bondat, nome da Microsoft: Worm:JS/Bondat [1] |
| Classe | Worm de mídia removível, com bot de comando remoto [1] [2] |
| Linguagem | JavaScript, executado pelo WSH (wscript.exe) [1] [3] |
| Plataforma | Windows [4] |
| Primeira descrição pública | 3 de abril de 2013, atualizada em 15 de setembro de 2017 [1] |
| Vetor de chegada | Mídia removível; também baixado por outro malware ou por sites maliciosos [1] [4] |
| Persistência | Atalho na pasta de inicialização, apontando para o script [1] [3] |
| Canal de C2 | HTTP POST com dados cifrados por RC4 e codificador próprio [1] |
| Atribuição | n/d |
Cada fornecedor dá um nome diferente à mesma família. Isso importa na caça, porque a consulta a um índice de ameaças com o nome errado devolve vazio [1] [4] [5]:
| Fornecedor | Nome |
|---|---|
| Microsoft | Worm:JS/Bondat, Worm:JS/Bondat.A!rfn |
| Trend Micro | Worm.JS.BONDAT.CC, WORM_BONDAT.H, JS_BONDAT.WSJ |
| ESET | JS/Bondat.A worm |
| Dr.Web | JS.Proslikefan.6 |
| Symantec | JS.Proslikefan.B |
| McAfee | JS/Autorun.worm.aacz |
| PT Security (na sandbox ANY.RUN) | Worm:JS/Bondat.D |
A Trend Micro nomeia como JS_BONDAT.GGRG uma amostra que a ESET e a IKARUS chamam de JS/Vjworm.B e Worm.JS.Vjworm, com tarefa agendada Skype, valor de registro P0NDJ17F38 e destino em dynu.com [7]. Os indicadores dessa amostra pertencem a outra família e não constam deste relatório. Misturá-los às listas do Bondat produziria alertas sem relação com o worm descrito aqui.
Três mecanismos legítimos do Windows sustentam o Bondat, e nenhum deles é uma falha de software.
wscript.exe executa arquivos .js, .jse, .vbs e .vbe com os privilégios do usuário, sem exigir instalação. Um worm escrito nesse formato é um arquivo de texto, o que dispensa compilação e dificulta a assinatura simples por hash, porque cada variante pode ser reescrita e ofuscada [2]..lnk guarda o destino que o Windows deve abrir, um ícone e um argumento. Como o ícone é escolhido por quem cria o atalho, é possível fazer um atalho parecer uma pasta ou um documento. O Bondat usa isso para que a vítima inicie o worm achando que abre os próprios arquivos [1] [2].O Bondat é classificado como worm porque se copia sozinho entre mídias, mas a execução no computador seguinte exige que alguém abra o atalho [2]. A Microsoft menciona também o recurso Autorun do Windows como via de propagação, e por isso orienta desativá-lo [1]. A consequência prática é que a principal defesa é comportamental: o usuário precisa saber que pasta que abre um programa antes de mostrar o conteúdo é sinal de infecção.
Os marcos abaixo vêm das fontes citadas. As datas de 2013 e 2017 são as da página da Microsoft, e não da primeira captura de uma amostra [1]:
| Data | Evento |
|---|---|
| 3 de abril de 2013 | A Microsoft publica a descrição de Worm:JS/Bondat [1]. |
| 15 de setembro de 2017 | A página da Microsoft recebe a última atualização [1]. |
| Fim de março de 2018 | Surto em que o worm recebe do servidor de controle o comando de minerar Monero [2]. |
| 13 de abril de 2018 | O servidor emite o programa da botnet contra WordPress [2]. |
| 11 de junho de 2018 | A 360 Total Security publica a análise e contabiliza ao menos 15.000 computadores afetados [2]. |
| 8 de outubro de 2018 | A Trend Micro recebe as primeiras amostras de Worm.JS.BONDAT.CC [4]. |
| 13 de abril de 2020 | Submissão de Bondat.js à ANY.RUN, com tráfego para infraestrutura de 2018 [3]. |
As fontes descrevem variantes que não coincidem em tudo. Não presuma que os artefatos de uma delas existam nas demais [1] [2] [3] [4]:
| Aspecto | Microsoft (2013 a 2017) [1] | 360 (2018) [2] | ANY.RUN (2020) [3] | Trend CC (2018) [4] |
|---|---|---|---|---|
| Pasta de instalação | Aleatória em %USERPROFILE% | n/d | AppData\Roaming\skujmyc | n/d |
| Persistência | Windows Explorer.lnk na inicialização | n/d | Start.lnk na inicialização | n/d |
| Isca na mídia | Atalhos no lugar de pastas e arquivos | Atalhos para drive.bat | n/d | Cópia .jse com extensão dupla |
| Executável auxiliar | Cinco cópias de wscript.exe | n/d | Um executável de nome aleatório | n/d |
| Destino do C2 | Cinco IPs e nove domínios | Dois IPs e dois domínios | Um IP e um domínio | n/d |
| Objetivo visível | Roubo de dados do host | Mineração e botnet | Roubo de dados do host | Troca da página inicial do navegador |
As células com n/d indicam que a fonte não descreve o aspecto, e não que ele esteja ausente na variante. Uma conclusão como "a variante de 2020 não usa drive.bat" não decorre da tabela. O que se pode afirmar é que o Bondat.js de 2020 e a descrição de 2018 compartilham o IP 95.153.31.18 e o domínio urchintelemetry.com [2] [3], o que liga as duas por infraestrutura.
Na variante descrita pela Microsoft, o worm executa estes passos ao ser aberto [1]:
.js de nome aleatório para uma pasta de nome aleatório em %USERPROFILE%, com nomes derivados do nome do computador, por exemplo %USERPROFILE%\badce\tvuwyx.js;wscript.exe na mesma pasta, com nomes montados por combinação de prefixos (amd, disk, ms, win), meios (host, update, proc) e sufixos (32, 64), como dllupdate64.exe e winprocess32.exe;Windows Explorer.lnk, com ícone de pasta, que executa uma dessas cópias de wscript.exe contra o .js;.js, .jse, .vbe e .vbs da pasta onde soltou o atalho.A sandbox ANY.RUN confirma o padrão geral em uma variante de 2020: o wscript.exe legítimo inicia o Bondat.js a partir da pasta temporária, o worm se copia como qslqm.js em AppData\Roaming\skujmyc, solta um executável de nome aleatório dqidfih.exe e um Start.lnk na inicialização, e chama cmd.exe e cacls.exe repetidas vezes para ajustar permissões [3]. Que o executável aleatório seja uma cópia renomeada do wscript.exe, como na descrição da Microsoft, é uma inferência desta equipe e não consta na página da sandbox.
O nome do arquivo muda a cada infecção, mas o conteúdo de uma cópia de wscript.exe não muda, e com ele o campo interno de nome original do executável. Um wscript.exe rodando de fora de System32 ou SysWOW64 é um sinal muito mais estável do que qualquer nome de arquivo do Bondat. A seção 08 constrói a caça sobre esse ponto.
O worm cria a pasta oculta <unidade>:\.Trashes e grava nela uma subpasta numerada com uma cópia de si mesmo, por exemplo E:\.Trashes\586\tvuwyx.js [1]. As pastas existentes na unidade são movidas para dentro de .Trashes e substituídas por atalhos com aparência de pasta. Abrir o atalho executa o worm e, em seguida, abre a pasta movida, para que nada pareça errado [1].
Os arquivos com as extensões abaixo também são movidos para .Trashes e substituídos por atalhos .lnk [1]:
| Categoria | Extensões |
|---|---|
| Aplicativos | .exe |
| Documentos | .doc, .docx, .pdf, .rtf, .txt |
| Áudio | .m4a, .mp3, .mp4, .ogg, .wav, .wma |
| Vídeo | .avi, .webm, .flv, .mov, .wmv, .mpeg, .mpg |
| Imagens | .gif, .jpeg, .jpg, .png |
Na descrição de 2018, os atalhos apontam para o lançador drive.bat e são criados para arquivos de tipos como doc e jpg, com os originais ocultos [2]. Outra variante grava na raiz de cada unidade removível uma cópia .jse cujo nome termina em .JPG seguido de espaços e da extensão real, de modo que a extensão final fique fora da área visível do Explorer [4].
O pendrive infectado parece vazio, ou cheio de atalhos, mas os arquivos originais estão em .Trashes [1]. Não formate a mídia nem aceite a sugestão do Windows de "reparar" a unidade antes de copiar o conteúdo. Formatar apaga a única cópia dos documentos da vítima. Siga o procedimento da seção 09.
O worm usa consultas WMI (Windows Management Instrumentation) para localizar e encerrar processos associados a segurança e a análise, em lista de cerca de quarenta nomes. Os exemplos citados pela Microsoft cobrem antivírus (avast, avg, mbam), monitoramento (procmon, procexp, tcpview, wireshark) e administração (regedit, msconfig, hijackthis, gmer) [1]. Se um desses processos estiver rodando de fora de um caminho que contenha "Windows" ou "Program", o worm exibe a mensagem "exception that could not be handled", que faz parecer que a própria ferramenta travou [1] [2].
A Microsoft também registra verificação de sandbox e de máquina virtual, com interrupção da execução caso uma seja detectada [1]. O script é ofuscado, o que desorienta o antivírus e aumenta o trabalho do analista [2]. No registro do usuário, em HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced, o worm define Hidden como 2 e ShowSuperHidden como 0, o que mantém ocultos os arquivos que ele esconde [1]. A sandbox ANY.RUN registra a mesma alteração [3].
Se o Process Monitor, o Regedit ou o gerenciador do antivírus exibem um erro e fecham logo após abrir, num computador que recebeu pendrive recentemente, não tente de novo da mesma pasta nem conclua que a ferramenta está com defeito. Esse comportamento é a assinatura documentada do worm [1]. Rode as ferramentas a partir de um ponto confiável, ou isole o computador e examine-o por fora.
A Microsoft descreve uma coleta inicial de dados do computador, enviada ao servidor por HTTP POST. Os dados são cifrados com RC4 e um codificador próprio antes do envio [1].
| Campo | Observação |
|---|---|
| Versão do malware | Identifica a variante instalada [1]. |
| Nome do usuário e do computador | Também usados para derivar nomes de arquivos locais [1]. |
| Identificador do produto Windows | Product ID do sistema [1]. |
| GUID da infecção | Identificador único gerado pelo worm [1]. |
| Idioma e versão do sistema operacional | Permite ao operador segmentar vítimas [1]. |
Os destinos que a Microsoft relata para essa coleta incluem os endereços 109.95.211.244, 148.251.192.195, 217.23.3.136, 91.200.85.69 e 91.200.85.79, e nove domínios listados na seção 10 [1]. Na sandbox de 2020, o worm enviou requisições POST a urchintelemetry.com (204.11.56.48) e a 95.153.31.18, ambos marcados como maliciosos, e uma requisição GET para www.microsoft.com, provável teste de conectividade [3].
Nomes como urchintelemetry.com, bellsyscdn.com, jtvcdn.com e ytvidstream.com parecem serviços legítimos de métricas, de rede de entrega de conteúdo ou de vídeo [1] [2] [3]. Uma revisão manual de logs de proxy que procure apenas "domínios estranhos" os deixa passar. Compare o tráfego contra a lista da seção 10 em vez de julgar o nome.
A 360 Total Security descreve o Bondat como "gerenciado de forma central", executando instruções vindas do console do operador [2]. Esse é o ponto que separa o worm de um simples vírus de pendrive: a carga não está fixa no script, e sim no servidor.
Os registros públicos mostram três usos do canal de comando, em épocas diferentes. A fonte primária das duas últimas é a 360 Total Security [2], e a primeira é a Trend Micro [4].
As variantes mais antigas monetizavam a infecção alterando a página inicial dos navegadores das vítimas [2]. A variante Worm.JS.BONDAT.CC altera a página inicial do Internet Explorer para um endereço de busca com a expressão fiverdolly 31195, onde o último número coincide com o tamanho do arquivo em bytes. O domínio de destino está parcialmente ocultado na página do fornecedor [4].
No surto de março de 2018, o worm abriu uma janela de navegador invisível apontada para hxxps[://]xmrmsft[.]com/hive.html, página que embute um script de mineração baseado no Coinhive [2]. A 360 destaca a diferença para um minerador comum: nada é instalado em disco, o ganho por máquina é menor e a atividade é mais difícil de notar. O NHS England Digital, em alerta de 2018, descreve o mesmo comportamento [5].
Em 13 de abril de 2018, logo após o surto, o servidor entregou aos computadores infectados um programa para atacar sites WordPress. O fluxo descrito é este [2]:
hxxp[://]5[.]8[.]52[.]136/setup.php;admin e senhas fracas;hxxp[://]5[.]8[.]52[.]136/put.php;hxxp[://]5[.]8[.]52[.]136/php.zip e gera um backdoor em PHP, que também serve para continuar a força bruta.Nessa fase, o prejuízo extrapola o dono da máquina: o tráfego de força bruta sai do endereço IP da vítima, e a organização que cedeu o computador passa a constar como origem de ataques a terceiros [2]. Quem encontrar um alerta de abuso ou de força bruta partindo de uma estação, e não de um servidor, deve considerar a hipótese de botnet antes de procurar um usuário mal-intencionado.
A 360 relata ainda que o worm encerra processos de antivírus e mostra um erro falso de aplicativo, para que o usuário atribua a queda à própria ferramenta [2]. A mesma fonte afirma que o formato de script do backdoor ajuda a escapar da detecção, afirmação que esta equipe não verificou.
A caça vai do mais barato e abrangente para o mais caro e específico. As duas primeiras vias não exigem acesso ao computador suspeito.
A consulta KQL, as regras Sigma e o procedimento de listagem das seções 8.2 a 8.4 foram escritos por esta equipe a partir dos indicadores e do comportamento descritos nas fontes, e não de execução de amostra. Nenhum foi validado contra tráfego real ou contra um worm em execução. Trate cada um como ponto de partida a ajustar e medir no seu ambiente antes de ativar alerta.
Procure conexões de estações de trabalho para os domínios e endereços da seção 10. O padrão característico é HTTP POST sem navegador legítimo por trás, com destino a endereço IP fixo ou a domínio de nome genérico de telemetria [1] [3].
let dominios = dynamic(["bellsyscdn.com","urchintelemetry.com","cdn.httpowered.com",
"conectar.gma-telecom.com","jtvcdn.com","mail.futbolglobo.net",
"static.myquickweb.net","www.webhebio.com","www2.httpoptions.com",
"www2.mshttpconnect.com","ytvidstream.com","xmrmsft.com"]);
let ips = dynamic(["95.153.31.18","95.153.31.22","5.8.52.136","204.11.56.48",
"109.95.211.244","148.251.192.195","217.23.3.136","91.200.85.69","91.200.85.79"]);
DeviceNetworkEvents
| where RemoteIP in (ips) or RemoteUrl has_any (dominios)
| summarize Eventos=count(), Primeiro=min(Timestamp), Ultimo=max(Timestamp)
by DeviceName, InitiatingProcessFileName, RemoteIP, RemoteUrl
| order by Eventos desc
A regra abaixo apoia-se na observação da seção 5.1: a cópia renomeada preserva o nome original do executável gravado nos metadados. Ela serve para qualquer renomeação de wscript.exe, e por isso também alerta sobre outras famílias que usem a mesma técnica.
title: Copia de wscript.exe executando fora de System32
id: 7c3a91e4-2b58-4d06-a1f7-5e90d3c8b412
status: experimental
description: >
O Bondat grava copias renomeadas de wscript.exe em pasta do usuario
(por exemplo dllupdate64.exe) e as usa para rodar o proprio script.
Um processo cujo nome original e wscript.exe, mas que roda fora dos
diretorios do sistema, merece triagem.
references:
- https://www.microsoft.com/en-us/wdsi/threats/malware-encyclopedia-description?Name=Worm%3AJS%2FBondat
author: CiberLab, Ciencia Embarcada
date: 2026/10/15
tags:
- attack.defense-evasion
- attack.t1036.003
logsource:
category: process_creation
product: windows
detection:
selecao:
OriginalFileName: 'wscript.exe'
legitimo:
Image|endswith:
- '\System32\wscript.exe'
- '\SysWOW64\wscript.exe'
condition: selecao and not legitimo
falsepositives:
- Copia portatil de wscript.exe usada por ferramenta de administracao
level: high
title: Atalho suspeito na inicializacao ou script dentro de .Trashes
id: b5e208d9-6f14-47a3-8c2e-9a1d4f7e0c63
status: experimental
description: >
O Bondat grava um atalho na pasta de inicializacao (Windows Explorer.lnk
ou Start.lnk, conforme a variante) e esconde copias de si mesmo em pasta
.Trashes numerada na raiz de unidades removiveis.
references:
- https://www.microsoft.com/en-us/wdsi/threats/malware-encyclopedia-description?Name=Worm%3AJS%2FBondat
- https://any.run/report/af0da1a9b2b669f6b51cbbcd3c5dd2a0000de0af84b3de79e4094980d63b8cd5/fc8b93f1-f11a-4d6c-bf08-fb25104439ce
author: CiberLab, Ciencia Embarcada
date: 2026/10/15
tags:
- attack.persistence
- attack.t1547.001
logsource:
category: file_event
product: windows
detection:
inicializacao:
TargetFilename|contains: '\Start Menu\Programs\Startup\'
TargetFilename|endswith:
- '\Windows Explorer.lnk'
- '\Start.lnk'
trashes:
TargetFilename|contains: '\.Trashes\'
TargetFilename|endswith: '.js'
condition: inicializacao or trashes
falsepositives:
- Aplicativo legitimo que grave atalho chamado Start.lnk na inicializacao
level: medium
Em um computador de triagem, nunca no que será usado para o trabalho diário, liste o conteúdo oculto de cada unidade sem abrir nenhum atalho. Uma pasta .Trashes na raiz de uma unidade Windows já é motivo de suspeita, porque esse nome vem de outro sistema operacional e não é criado pelo Windows.
# lista, sem abrir nada, o conteudo escondido de pastas .Trashes
Get-PSDrive -PSProvider FileSystem | ForEach-Object {
$p = Join-Path $_.Root '.Trashes'
if (Test-Path -LiteralPath $p) {
Get-ChildItem -LiteralPath $p -Force -Recurse -ErrorAction SilentlyContinue |
Select-Object FullName, Length, Attributes
}
}
# confere os valores de ocultacao alterados pelo worm
Get-ItemProperty 'HKCU:\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced' |
Select-Object Hidden, ShowSuperHidden
Os valores Hidden igual a 2 e ShowSuperHidden igual a 0 também podem resultar de configuração legítima ou de outra ferramenta [1]. Não classifique o computador como infectado por esse achado isolado. Combine-o com uma pasta .Trashes, uma cópia de wscript.exe fora do sistema ou tráfego para a seção 10.
wscript.exe que estiverem fora do sistema.A partir de um computador limpo e sem abrir nenhum atalho, copie o conteúdo de .Trashes para outro local, deixando para trás scripts e atalhos. Depois disso, formate a mídia:
:: F: e a unidade infectada; D:\recuperado e uma pasta num disco confiavel
dir /a F:\.Trashes
robocopy F:\.Trashes D:\recuperado /E /XF *.js *.jse *.lnk *.bat
O comando acima exclui scripts e atalhos, mas o .Trashes também guarda aplicativos .exe do próprio usuário [1], que podem ou não ser legítimos. Não execute nada recuperado antes de verificá-lo com antivírus atualizado. Os arquivos .js e .bat legítimos do usuário ficam de fora da cópia e precisam ser recuperados à mão, depois de verificados.
| Controle | Aplicação |
|---|---|
| Autorun desativado | Confirme a desativação do Autorun por política de grupo, conforme orientação da Microsoft [1]. A medida não elimina a isca por atalho, mas remove uma via de execução automática. |
| Mídia removível controlada | Restrinja o uso de pendrives à lista de dispositivos necessários, ou exija verificação antes da leitura. É o controle que corta o vetor principal. |
| WSH desativado onde não é necessário | Impeça que usuários comuns executem .js, .jse, .vbs e .vbe com o wscript.exe, por política de controle de aplicativos ou associação de arquivos. Sem WSH, o worm não roda. |
| Extensões sempre visíveis | Exiba extensões de arquivo para todos os usuários, para que .JPG seguido de espaços e .jse não passe por imagem [4]. |
| Filtragem de saída | Estações não precisam falar com endereço IP arbitrário pela porta 80. Um proxy obrigatório com bloqueio de destino sem reputação interrompe o canal de C2. |
| Treinamento específico | Ensine a regra simples: uma pasta que abre um programa ou que mostra o conteúdo só depois de um instante é sinal de infecção. |
A botnet da seção 7.3 testa a conta admin com senhas fracas [2]. Renomeie ou remova a conta admin, exija senha forte e autenticação em dois fatores para administradores, limite as tentativas de login por endereço, e revise os usuários administrativos criados sem explicação.
As técnicas abaixo foram conferidas uma a uma em attack.mitre.org, e os nomes reproduzem o oficial de cada página [6]. A primeira tabela cobre do acesso à persistência e à evasão:
| Técnica | Nome | Relação com o caso |
|---|---|---|
| T1091 | Replication Through Removable Media | Cópia do worm para unidades removíveis, com atalhos no lugar dos arquivos. |
| T1204.002 | User Execution: Malicious File | A vítima abre o atalho que executa o worm. |
| T1059.007 | Command and Scripting Interpreter: JavaScript | Worm escrito em JavaScript e executado pelo WSH. |
| T1059.001 | Command and Scripting Interpreter: PowerShell | Script que baixa o programa da botnet contra WordPress [2]. |
| T1047 | Windows Management Instrumentation | Consultas WMI para localizar e encerrar processos de segurança. |
| T1547.001 | Boot or Logon Autostart Execution: Registry Run Keys / Startup Folder | Atalho na pasta de inicialização. |
| T1036.003 | Masquerading: Rename Legitimate Utilities | Cópias renomeadas do wscript.exe. |
| T1564.001 | Hide Artifacts: Hidden Files and Directories | Pasta .Trashes oculta e alteração das opções de exibição do Explorer. |
| T1222.001 | File and Directory Permissions Modification: Windows Permissions | Chamadas ao cacls.exe e concessão de controle total ao grupo Users. |
| T1497.001 | Virtualization/Sandbox Evasion: System Checks | Verificação de sandbox e de máquina virtual antes de agir. |
| T1027 | Obfuscated Files or Information | Script ofuscado para confundir antivírus e analistas. |
A segunda tabela cobre descoberta, comando e controle e impacto:
| Técnica | Nome | Relação com o caso |
|---|---|---|
| T1082 | System Information Discovery | Coleta de versão do sistema, idioma, nome do computador e Product ID. |
| T1071.001 | Application Layer Protocol: Web Protocols | Comunicação com o servidor por HTTP POST. |
| T1573.001 | Encrypted Channel: Symmetric Cryptography | Dados cifrados com RC4 antes do envio. |
| T1041 | Exfiltration Over C2 Channel | Dados do computador enviados pelo mesmo canal de comando. |
| T1105 | Ingress Tool Transfer | Download do programa da botnet e do ambiente PHP. |
| T1496.001 | Resource Hijacking: Compute Hijacking | Mineração de Monero no navegador da vítima. |
| T1110.001 | Brute Force: Password Guessing | Tentativas de login com a conta admin e senhas fracas em WordPress. |
O encerramento de antivírus e de ferramentas de análise [1] [2] tem técnica própria na matriz, mas o identificador não pôde ser conferido na página oficial durante a elaboração, porque a consulta devolveu conteúdo vazio. Em vez de reproduzi-lo de memória, esta tabela o deixa de fora. Quem mantém a matriz do SOC deve mapear esse comportamento em Defense Evasion, após conferir o identificador atual em attack.mitre.org.
Todos os indicadores abaixo vêm das fontes citadas, porque não houve análise local. Domínios, endereços e URLs aparecem desarmados de propósito e não devem ser transformados em link clicável. Primeiro estão os que vieram de análise de sandbox ou de fornecedor sobre amostras, depois os que vieram de relato de campanha.
| Tipo | Indicador | Severidade | Contexto e ação |
|---|---|---|---|
| Domínio | urchintelemetry[.]com | Alta | C2 em 2018 e 2020, IP 204.11.56.48 [2] [3]. Bloquear e alertar |
| IPv4 | 95[.]153[.]31[.]18 | Alta | C2 em 2018 e 2020, POST direto por IP [2] [3]. Bloquear e alertar |
| IPv4 | 204[.]11[.]56[.]48 | Alta | Endereço de urchintelemetry[.]com na sandbox [3]. Bloquear e alertar |
| IPv4 | 95[.]153[.]31[.]22 | Alta | C2 listado pela 360 [2]. Bloquear e alertar |
| Domínio | bellsyscdn[.]com | Alta | C2 listado pela 360 [2]. Bloquear e alertar |
| IPv4 | 5[.]8[.]52[.]136 | Alta | Serve a botnet contra WordPress [2]. Bloquear e alertar |
| URL | hxxp[://]5[.]8[.]52[.]136/setup.php | Alta | Download do programa da botnet [2]. Caça retroativa |
| URL | hxxp[://]5[.]8[.]52[.]136/put.php | Alta | Recebe credenciais obtidas por força bruta [2]. Caça retroativa |
| URL | hxxp[://]5[.]8[.]52[.]136/php.zip | Média | Ambiente PHP baixado pela botnet [2]. Caça retroativa |
| URL | hxxp[://]5[.]8[.]52[.]136/get.zip | Média | Listada pela 360 sem explicação [2]. Caça retroativa |
| URL | hxxps[://]xmrmsft[.]com/hive.html | Média | Página de mineração baseada em Coinhive [2]. Bloquear |
| IPv4 | 109[.]95[.]211[.]244, 148[.]251[.]192[.]195, 217[.]23[.]3[.]136, 91[.]200[.]85[.]69, 91[.]200[.]85[.]79 | Média | Destinos da coleta de dados em variante da Microsoft [1]. Bloquear e monitorar |
| Domínio | cdn[.]httpowered[.]com, conectar[.]gma-telecom[.]com, jtvcdn[.]com, mail[.]futbolglobo[.]net, static[.]myquickweb[.]net, www[.]webhebio[.]com, www2[.]httpoptions[.]com, www2[.]mshttpconnect[.]com, ytvidstream[.]com | Média | Destinos da coleta em variante da Microsoft [1]. Bloquear e monitorar |
| Tipo | Indicador | Severidade | Contexto e ação |
|---|---|---|---|
| Pasta | <unidade>:\.Trashes\<número>\<nome>.js | Crítica | Cópia do worm em mídia removível [1]. Tratar como infecção |
| Arquivo | %STARTUP%\Windows Explorer.lnk | Crítica | Persistência, ícone de pasta [1]. Tratar como infecção |
| Arquivo | %STARTUP%\Start.lnk | Alta | Persistência na variante de 2020 [3]. Nome genérico, confirmar o destino |
| Pasta | %USERPROFILE%\<aleatório>\<aleatório>.js | Alta | Instalação da variante da Microsoft, ex.: badce\tvuwyx.js [1]. Caça retroativa |
| Pasta | %APPDATA%\skujmyc\ | Alta | Instalação da amostra de 2020, nome aleatório por infecção [3]. Caça retroativa |
| Arquivo | dllupdate64.exe, winprocess32.exe e variações de prefixo, meio e sufixo | Alta | Cópias renomeadas de wscript.exe [1]. Caçar pelo nome original, seção 8.2 |
| Arquivo | drive.bat | Média | Lançador dos atalhos na descrição da 360 [2]. Caça retroativa |
| Arquivo | <nome>.JPG<espaços>.jse | Média | Cópia com extensão dupla da variante da Trend Micro [4]. Caça retroativa |
| Registro | HKCU\...\Explorer\Advanced, Hidden = 2, ShowSuperHidden = 0 | Contexto | Alteração da exibição de ocultos [1] [3]. Apoio à triagem, ver nota da seção 8.4 |
| Mensagem | exception that could not be handled | Contexto | Erro falso exibido ao encerrar ferramenta [1]. Apoio à triagem |
| Artefato | Hash | Ação |
|---|---|---|
| Bondat.js, SHA-256 | af0da1a9b2b669f6b51cbbcd3c5dd2a0000de0af84b3de79e4094980d63b8cd5 | Caça retroativa |
| Bondat.js, SHA-1 | 7e82fbcc0cf59d3f808780c9fc36d520478dbc52 | Caça retroativa |
| Bondat.js, MD5 | 5bc8cdd73f03eec42423ea1d9c8aea5c | Caça retroativa |
| dqidfih.exe, SHA-256 | 047f3c5a7ab0ea05f35b2ca8037bf62dd4228786d07707064dbd0d46569305d0 | Caça retroativa |
| Start.lnk, SHA-256 | 18cef72934211e99e0fd3e39f5ac0cf756d9a239cdf56b132ca7b13067e65db7 | Caça retroativa |
| rotvli, SHA-256 | 47e006d04fbeb82f6aac5f9e9c8d753437ce7e859822711020ca70eb5a86e456 | Caça retroativa |
O Bondat é um script de texto que se reescreve a cada infecção, com nomes de arquivo e pasta aleatórios [1]. O hash de uma cópia não casa com o de outra, e uma varredura que dependa só dos valores acima encontrará quase nada. Os hashes servem para confirmar essa amostra em consulta a plataformas e em acervos de incidentes. Para caçar a família, use o comportamento das seções 8.1 a 8.3 e a lista de rede da seção 10.1.
OriginalFileName pressupõe que a cópia renomeada preserve os metadados do wscript.exe, o que é coerente com uma cópia byte a byte, mas não foi confirmado por nenhuma fonte..Trashes, da interferência em ferramentas, da coleta de dados, dos destinos de C2 e das chaves de registro.
https://www.microsoft.com/en-us/wdsi/threats/malware-encyclopedia-description?Name=Worm%3AJS%2FBondat
.jse, a alteração da página inicial do Internet Explorer, o tamanho do arquivo e as etapas de remoção.
https://www.trendmicro.com/vinfo/us/threat-encyclopedia/malware/worm.js.bondat.cc
JS/Bondat, relatório técnico de análise de artefato. Versão 1.0, emitida em 15 de outubro de 2026.
CiberLab, uma iniciativa do Ciência Embarcada.
Classificado TLP:CLEAR: distribuição livre, sem restrição de compartilhamento.