Esta publicação aborda novas atividades descobertas e atribuídas ao grupo cibercriminoso FrostyNeighbor, que têm como alvo órgãos governamentais na Ucrânia. Segundo a nossa telemetria, o grupo vem realizando ciberoperações contínuas, atualizando e modificando regularmente seu conjunto de ferramentas, além de adaptar sua cadeia de comprometimento e suas técnicas de evasão para evitar a detecção, mirando vítimas localizadas no Leste Europeu.
Principais pontos deste post:
- O FrostyNeighbor é um grupo de ciberespionagem ativo há anos e aparentemente alinhado aos interesses de Belarus.
- O grupo tem como alvo principalmente órgãos governamentais, militares e estratégicos no Leste Europeu.
- A pesquisa realizada pela ESET documenta uma nova atividade observada a partir de março de 2026, evidenciando a evolução contínua de suas ferramentas e cadeias de comprometimento.
- O FrostyNeighbor utiliza validação das vítimas no lado do servidor antes de entregar o payload final.
- Recentemente, o grupo esteve envolvido em campanhas direcionadas a órgãos governamentais na Ucrânia.
Introdução
FrostyNeighbor, também conhecido como Ghostwriter, UNC1151, UAC-0057, TA445, PUSHCHA ou Storm-0257, é um grupo que supostamente opera a partir de Belarus. Segundo a empresa americana Mandiant, o grupo está ativo pelo menos desde 2016. A maior parte das operações do FrostyNeighbor tem como alvo países vizinhos de Belarus, embora uma pequena parcela das atividades também tenha sido observada em outros países europeus. O FrostyNeighbor conduz campanhas que utilizam spearphishing (phishing direcionado), disseminação de desinformação e tentativas de influenciar seus alvos, como nas operações atribuídas ao Ghostwriter, além de comprometer diferentes entidades governamentais e empresas privadas, com foco especial na Ucrânia, Polônia e Lituânia.
O grupo vem demonstrando uma evolução constante em suas táticas, técnicas e procedimentos (TTPs), utilizando ao longo do tempo um arsenal variado de malwares e mecanismos de entrega para atingir suas vítimas. Entre os principais desenvolvimentos está o uso de múltiplas variantes do downloader principal do grupo, chamado PicassoLoader pelo CERT-UA. Essas variantes foram desenvolvidas em .NET, PowerShell, JavaScript e C++. O nome PicassoLoader surgiu porque a ferramenta recupera um beacon do Cobalt Strike a partir de uma infraestrutura controlada pelo grupo cibercriminoso, disfarçado como uma imagem renderizável ou oculto de maneira sutil em arquivos associados à web, como CSS, JS ou SVG. O Cobalt Strike é um framework de pós exploração amplamente utilizado tanto por pentesters quanto por grupos maliciosos, e seu beacon funciona como um implante inicial que permite ao grupo assumir o controle total do computador comprometido.
Além disso, o grupo utiliza diversos documentos isca para comprometer seus alvos, incluindo arquivos CHM, XLS, PPT e DOC, além de explorar a vulnerabilidade do WinRAR CVE-2023-38831. O FrostyNeighbor também faz uso de serviços legítimos, como o Slack, para entrega de payloads, e do Canarytokens para rastreamento de vítimas, dificultando os esforços de detecção e atribuição.
Embora os ataques contra a Ucrânia aparentem estar concentrados em instituições militares, governamentais e do setor de defesa, a vitimologia observada na Polônia e na Lituânia é mais ampla, abrangendo setores como indústria e manufatura, saúde e farmacêutico, logística, além de diversas órgãos governamentais. Como este relatório se baseia exclusivamente em nossa telemetria, não é possível descartar a existência de outras campanhas direcionadas a instituições de países da mesma região.
O FrostyNeighbor também realizou campanhas de spearphishing voltadas a usuários de organizações polonesas, focando principalmente nos maiores provedores gratuitos de e-mail, como Interia Poczta e Onet Poczta. Essas campanhas utilizavam páginas de login falsas projetadas para roubar credenciais. Além disso, o CERT-PL informou que o grupo explorou a vulnerabilidade XSS CVE-2024-42009 no Roundcube, permitindo a execução de JavaScript ao abrir mensagens de e-mail maliciosas, com o objetivo de exfiltrar credenciais das vítimas. Isso demonstra o esforço contínuo do grupo tanto em operações de infecção por malware quanto na coleta de credenciais.
Publicações anteriores
As campanhas do FrostyNeighbor estão ativas há anos e, por isso, vêm sendo amplamente documentadas publicamente ao longo do tempo. Entre os registros mais relevantes estão os relatórios de julho de 2024, quando o CERT-UA informou um aumento das atividades atribuídas ao grupo, direcionadas a órgãos governamentais ucranianas. Em fevereiro de 2025, a SentinelOne documentou um crescimento das atividades voltadas ao governo da Ucrânia e a ativistas da oposição em Belarus, utilizando novas adaptações de payloads já observados anteriormente.
Já em agosto de 2025, a HarfangLab identificou novos conjuntos de atividades envolvendo arquivos maliciosos em cadeias de comprometimento específicas para atingir instituições ucranianas e polonesas. Por fim, em dezembro de 2025, a StrikeReady documentou uma nova técnica de antianálise baseada em CAPTCHAs dinâmicos que as vítimas precisavam resolver, executados por meio de uma macro VBA presente no documento isca.
Atividade recentemente descoberta
Desde março de 2026, detectamos novas atividades atribuídas ao FrostyNeighbor, utilizando links em arquivos PDF maliciosos enviados por meio de anexos de spearphishing para atacar órgãos governamentais na Ucrânia. A cadeia de comprometimento observada é a mais recente identificada até o momento, utilizando uma versão em JavaScript do PicassoLoader para entregar um payload do Cobalt Strike, como ilustrado na Figura 1.
O ataque começa com um arquivo PDF isca borrado chamado 53_7.03.2026_R.pdf mostrado na Figura 2, que se passa pela empresa ucraniana de telecomunicações Ukrtelecom. O documento contém uma mensagem que supostamente “garante a proteção confiável dos dados dos clientes” e inclui um botão de download com um link que direciona para um documento hospedado em um servidor de entrega controlado pelo grupo.
Se a vítima não estiver na localização geográfica esperada, o servidor entrega um arquivo PDF legítimo com o mesmo nome, 53_7.03.2026_R.pdf, relacionado a regulamentações da área de comunicações eletrônicas entre 2024 e 2026 da Comissão Nacional para a Regulação Estatal das Comunicações Eletrônicas, do Espectro de Radiofrequências e da Prestação de Serviços Postais da Ucrânia (nkek.gov.ua), conforme mostrado na Figura 3.
Por outro lado, se a vítima estiver utilizando um endereço IP da Ucrânia, o servidor entrega um arquivo RAR chamado 53_7. 03.2026_R.rar, contendo a primeira etapa do ataque, denominada 53_7. 03.2026_R.js. Trata se de um arquivo JavaScript que solta e exibe um PDF isca para a vítima. Ao mesmo tempo, o script também executa a segunda etapa do ataque: uma versão em JavaScript do downloader PicassoLoader, conhecido por ser utilizado pelo grupo. O script da primeira etapa foi desofuscado e refatorado para facilitar a leitura, com uma versão resumida apresentada na Figura 4.
Na primeira execução, o script decodifica e exibe para a vítima o mesmo PDF isca ilustrado na Figura 3, além de executar a si próprio utilizando a flag --update para acessar outra parte do código. As demais flags presentes no script não são utilizadas.
Durante a segunda execução, o script solta o downloader da segunda etapa, o PicassoLoader, incorporado ao código e codificado em base64 como %AppData%\WinDataScope\Update.js. Em seguida, ele baixa um modelo de tarefa agendada a partir de https://book-happy.needbinding[.]icu/wp-content/uploads/2023/10/1GreenAM.jpg, conforme ilustrado na Figura 5.
Apesar de solicitar uma imagem JPG, o servidor responde com conteúdo baseado em texto, utilizando os cabeçalhos Content-Type e Content-Disposition para indicar um arquivo XML anexado a partir do seu servidor de comando e controle (C&C), hospedado atrás da infraestrutura da Cloudflare:
Content-Type: application/xml
Server: cloudflare
Content-Disposition: attachment; filename="config.xml"
Para estabelecer persistência e ativar a primeira execução do PicassoLoader, o script substitui os valores dos marcadores de posição pelos dados extraídos do arquivo de resposta 1GreenAM.jpg:
- <StartBoundary></StartBoundary>,
- <Command>1</Command>,
- <Arguments>1</Arguments>.
A primeira etapa, 53_7.03.2026_R.js, também cria um arquivo REG em %AppData%\WinDataScope com o nome WinUpdate.reg. O conteúdo desse arquivo é posteriormente importado para o Registro do Windows pelo downloader PicassoLoader. O script do PicassoLoader foi desofuscado e refatorado para facilitar sua leitura, com uma versão resumida apresentada na Figura 6.
Quando executado, o PicassoLoader cria uma impressão digital da máquina da vítima coletando informações como nome de usuário, nome do computador, versão do sistema operacional, tempo de inicialização da máquina, horário atual e a lista de processos em execução com seus respectivos IDs de processo (PIDs). A cada 10 minutos, essa impressão digital do sistema comprometido é enviada ao servidor de comando e controle (C&C) por meio de uma requisição HTTP POST para https://book-happy.needbinding[.]icu/employment/documents-and-resources. Caso o conteúdo da resposta do servidor C&C tenha mais de 100 bytes, os dados recebidos são executados utilizando o método eval.
A decisão de entregar ou não um payload provavelmente é realizada manualmente pelos operadores da ameaça, com base nas informações coletadas para determinar se a vítima é de interesse. Caso seja considerada relevante, o servidor C&C responde com um dropper JavaScript de terceira etapa para o Cobalt Strike. Caso contrário, retorna uma resposta vazia. Esse script da terceira etapa foi desofuscado e refatorado para facilitar a leitura, com uma versão resumida apresentada na Figura 7.
Esse script começa copiando o executável legítimo rundll32.exe para %ProgramData%\ViberPC.exe, provavelmente como forma de contornar mecanismos de segurança ou regras de detecção.
Em seguida, um beacon do Cobalt Strike incorporado nessa etapa é decodificado em base64 e gravado no disco como %ProgramData%\ViberPC.dll. Por fim, a persistência é estabelecida por meio da criação e importação de um arquivo REG chamado ViberPC.reg. Esse arquivo registra, na chave de execução HKCU Run, um arquivo LNK chamado %ProgramData%\ViberPC.lnk, responsável por executar a cópia do rundll32.exe com o argumento de linha de comando %ProgramData%\ViberPC.dll, chamando a exportação DLL SettingTimeAPI.
O payload final é um beacon do Cobalt Strike que se comunica com o servidor de comando e controle (C&C) em https://nama-belakang.nebao[.]icu/statistics/discover.txt.
Grupo mantém evolução constante em campanhas de ciberespionagem
O FrostyNeighbor continua sendo um grupo de ameaças persistente e adaptável, demonstrando um alto nível de maturidade operacional por meio do uso de diversos documentos isca, variantes em constante evolução de downloaders e novos mecanismos de entrega. Essa nova cadeia de comprometimento identificada por nós reforça a disposição do grupo em atualizar e renovar continuamente seu arsenal, buscando evitar a detecção e comprometer seus alvos.
As campanhas do grupo seguem concentradas no Leste Europeu, com forte foco nos setores governamental, de defesa e em infraestruturas estratégicas, especialmente na Polônia, Lituânia e Ucrânia, segundo a telemetria da ESET.
O payload só é entregue após a validação da vítima no lado do servidor, combinando verificações automatizadas do user agent e do endereço IP solicitante com validações manuais realizadas pelos operadores da ameaça.
O monitoramento contínuo das operações do grupo, de sua infraestrutura e das mudanças em seu conjunto de ferramentas é essencial para detectar e mitigar futuras operações maliciosas.
Para qualquer dúvida sobre as pesquisas publicadas no WeLiveSecurity, entre em contato pelo e-mail threatintel@eset.com.
Indicadores de Comprometimento
Uma lista completa de indicadores de comprometimento (IoCs) e amostras pode ser encontrada no repositório GitHub da pesquisa.
Arquivos
| SHA‑1 | Filename | Detection | Description |
| 776A43E46C36A539C916 |
53_7.03.2026_R |
JS/TrojanDropper.Fr |
Lure RAR archive. |
| 8D1F2A6DF51C7783F2EA |
53_7.03.2026_R |
JS/TrojanDropper.Fr |
JavaScript dropper. |
| B65551D339AECE718EA1 |
Update.js | JS/TrojanDownloader |
JavaScript PicassoLoader downloader. |
| E15ABEE1CFDE8BE7D87C |
Update.js | JS/TrojanDropper.Fr |
Cobalt Strike dropper. |
| 43E30BE82D82B24A6496 |
ViberPC.dll | Win32/CobaltStrike. |
Cobalt Strike beacon. |
| 4F2C1856325372B9B776 |
53_7.03.2026_R |
PDF/TrojanDownloade |
Lure PDF document. |
| D89E5524E49199B1C3B6 |
Certificate.pdf | PDF/TrojanDownloade |
Lure PDF document. |
| 7E537D8E91668580A482 |
certificate.js | JS/TrojanDownloader |
JavaScript PicassoLoader downloader. |
| FA6882672AD365480098 |
certificate.js | JS/TrojanDownloader |
JavaScript PicassoLoader downloader. |
| 3FA7D1B13542F1A9EB05 |
Сетифікат_CAF.rar | JS/TrojanDropper.Fr |
Lure RAR archive. |
| 4E52C92709A918383E90 |
Сетифікат_CAF.js | JS/TrojanDropper.Fr |
JavaScript dropper. |
| 6FDED427A16D5314BA3E |
EdgeTaskMachine |
JS/TrojanDropper.Fr |
JavaScript PicassoLoader downloader. |
| 27FA11F6A1D653779974 |
EdgeSystemConfig |
Win32/CobaltStrike. |
Cobalt Strike beacon. |
Rede
| IP | Domain | Hosting provider | First seen | Details |
| N/A | attachment-storage-asset- |
N/A | 2026‑03‑10 | PicassoLoader C&C server. |
| N/A | book-happy.needbindin |
N/A | 2026‑03‑10 | PicassoLoader C&C server. |
| N/A | nama-belakang.nebao[.]icu | N/A | 2026‑03‑10 | Cobalt Strike C&C server. |
| N/A | easiestnewsfromourpointof |
N/A | 2026‑04‑14 | PicassoLoader C&C server. |
| N/A | mickeymousegamesdealer.al |
N/A | 2026‑03‑26 | PicassoLoader C&C server. |
| N/A | hinesafar.sardk[.]icu | N/A | 2026‑04‑14 | PicassoLoader C&C server. |
| N/A | shinesafar.sardk[.]icu | N/A | 2026‑04‑14 | PicassoLoader C&C server. |
| N/A | best-seller.lavanill |
N/A | 2026‑04‑14 | Cobalt Strike C&C server. |
Técnicas ATT&CK do MITRE
Esta tabela foi elaborada com base na versão 18 do framework MITRE ATT&CK.
| Tactic | ID | Name | Description |
| Resource Development | T1583 | Acquire Infrastructure | FrostyNeighbor acquires domain names and rents C&C servers. |
| T1608 | Stage Capabilities | FrostyNeighbor hosts the final payload on a C&C server. | |
| T1588.002 | Obtain Capabilities: Tool | FrostyNeighbor obtained a leaked version of Cobalt Strike to generate payloads. | |
| Initial Access | T1566.001 | Phishing: Spearphishing Attachment | FrostyNeighbor sends a weaponized lure document in email attachments. |
| Execution | T1204.002 | User Execution: Malicious File | FrostyNeighbor tricks its victims into opening or editing a document to gain code execution. |
| T1053.005 | Scheduled Task/Job: Scheduled Task | FrostyNeighbor uses scheduled tasks to achieve persistence. | |
| T1059 | Command and Scripting Interpreter | FrostyNeighbor uses scripting languages such as JavaScript, Visual Basic, and PowerShell. | |
| Persistence | T1060 | Registry Run Keys / Startup Folder | FrostyNeighbor uses the registry Run key and the Startup Folder to achieve persistence. |
| Defense Evasion | T1027 | Obfuscated Files or Information | FrostyNeighbor obfuscates scripts and compiled binaries. |
| T1027.009 | Obfuscated Files or Information: Embedded Payloads | FrostyNeighbor embeds next stages or payloads inside the initial lure document. | |
| T1036.005 | Masquerading: Match Legitimate Resource Name or Location | FrostyNeighbor drops malicious files using common Microsoft filenames and locations. | |
| Discovery | T1057 | Process Discovery | PicassoLoader collects the list of running processes. |
| T1082 | System Information Discovery | PicassoLoader collects system and user information. | |
| Command and Control | T1071.001 | Application Layer Protocol: Web Protocols | FrostyNeighbor uses HTTPS for C&C communication and payload delivery. |
| Exfiltration | T1041 | Exfiltration Over C2 Channel | FrostyNeighbor uses HTTPS with Cobalt Strike. |




