O Turla, um conhecido ator de ameaças, visa as suas vítimas com Ameaças Persistentes Avançadas (APTs). Analisar um exemplo sofisticado deste malware com MetaDefender Sandbox dá-nos uma compreensão aprofundada da metodologia utilizada para dissecar e compreender estas ameaças, o que é essencial para os profissionais de cibersegurança que pretendem defender-se contra elas.
Este malware é o KopiLuwak, uma ferramenta de reconhecimento baseada em JavaScript, amplamente utilizada para a caraterização de vítimas e comunicação C2. As suas técnicas de ofuscação e o design relativamente simples da backdoor permitem-lhe funcionar discretamente e evitar a deteção.
Perfil do ator da ameaça
O Turla, um grupo de ameaça de ciberespionagem com suspeitas de ligações ao Serviço Federal de Segurança (FSB) da Rússia, tem operado ativamente desde, pelo menos, 2004. Ao longo dos anos, o Turla comprometeu com sucesso vítimas em mais de 50 países, infiltrando-se em diversos sectores, como o governo, embaixadas, forças armadas, educação, investigação e empresas farmacêuticas.
O grupo apresenta um modus operandi sofisticado, empregando frequentemente tácticas como a utilização de watering holes e campanhas de spear phishing. Apesar da sua notoriedade, a atividade do Turla aumentou nos últimos anos, evidenciando a resiliência e a adaptabilidade do grupo no cenário em constante evolução das ciberameaças.
Síntese de amostras
A amostra em análise é um documento do Microsoft Word que, após um exame inicial do seu conteúdo incorporado (por exemplo, com o oletools de Didier Steven), contém uma variedade de artefactos suspeitos, tais como
Macro com as palavras-chave AutoOpen e AutoClose, indicando a execução automatizada do VBA.
- "mailform.js" juntamente com "WScript.Shell", indicando que o JavaScript incorporado (JS) está presente e será executado.
- Um objeto incorporado que finge ser um ficheiro JPEG, incluindo uma cadeia suspeita muito longa (código JS encriptado).
Emulação multicamada
Embora nesta altura uma análise manual exigisse a aplicação de mensagens avançadas de desencriptação/código (por exemplo, utilizando o Binary Refinery, reformatando o código para facilitar a leitura ou renomeando as variáveis para maior clareza), podemos contar com a tecnologia avançada de emulação sandbox em MetaDefender Sandbox para efetuar todos estes passos automaticamente.
Vamos mudar para o separador "Dados de emulação" no lado esquerdo do relatório:
Olhando para alguns dos eventos do emulador, podemos ver claramente toda a cadeia de ataque a desenrolar-se:
Mas isso não é tudo: o novo código JS também é altamente ofuscado. Se dermos uma olhada no evento Shell, ele foi executado com "NPEfpRZ4aqnh1YuGwQd0" como parâmetro. Esse parâmetro é uma chave RC4 usada na próxima iteração de decodificação
Na etapa seguinte, o mailform.js descodifica o payload JS final armazenado como uma cadeia longa Base64. Esta cadeia é descodificada em Base64, depois desencriptada utilizando RC4 com a chave (mencionada acima) passada como parâmetro e, finalmente, executada utilizando a função eval(). Note-se que este código JS está apenas na memória, mas o MetaDefender Sandbox continuará com todos os restantes protocolos de deteção.
O código JS totalmente desencriptado mostra a funcionalidade do malware como uma backdoor básica, capaz de executar comandos a partir de um servidor C2 remoto. Como última descoberta, antes de se ligar ao servidor C2, constrói um perfil de vítima, ganha persistência e depois exfiltra dados utilizando pedidos HTTP para o servidor C2.
Extração de COI
A subpágina "Indicator of Compromise" (Indicador de Compromisso) agrega todos os IOCs extraídos de qualquer etapa da análise automatizada, apresentando os principais URLs C2 por baixo da Origem "VBA emulation" (Emulação VBA):
Sempre que vemos um nome de família de malware conhecido como parte de uma etiqueta AV, uma regra YARA ou o detectamos através de, por exemplo, um ficheiro de configuração descodificado, MetaDefender Sandbox gera automaticamente a etiqueta adequada e propaga-a para a página de destino de nível superior do relatório:
Embora nem sempre seja garantidamente exato, é um indicador importante para ajudar na triagem e efetuar uma atribuição exacta.
Conclusão
Esta análise técnica de uma amostra de malware Turla APT sublinha a profundidade e sofisticação das ciberameaças modernas e a forma como o MetaDefender Sandbox poupa imenso tempo ao desofuscar automaticamente várias camadas de encriptação até chegar a IOCs valiosos. Esta é uma amostra interessante que mostra como o nosso sistema de emulação se pode adaptar eficazmente à natureza polimórfica das técnicas de ofuscação utilizadas durante as campanhas in-the-wild de agentes de ameaças sofisticados.
Indicadores de compromisso (IOCs)
Documento MS Word
Sha256: 2299ff9c7e5995333691f3e68373ebbb036aa619acd61cbea6c5210490699bb6
Mailform.fs
Sha256: 4f8bc0c14dd95afeb5a14be0f392a66408d3039518543c3e1e666d973f2ba634
Servidores C2
hxxp[://]belcollegium[.]org/wp-admin/includes/class-wp-upload-plugins-list-table[.]php
hxxp[://]soligro[.]com/wp-includes/pomo/db[.]php