Ataques sofisticados para disparar sinais de CobaltStrike
26 de Agosto de 2024

Uma onda de ataques iniciada em julho de 2024 se apoia em uma técnica menos comum chamada Injeção do Gerenciador de AppDomain, que pode armar qualquer aplicação Microsoft .NET em Windows.

Essa técnica existe desde 2017, e múltiplos aplicativos de conceito de prova foram divulgados ao longo dos anos.

No entanto, ela é tipicamente usada em engajamentos de red team e raramente observada em ataques maliciosos, com defensores não monitorando-a ativamente.

A divisão japonesa da NTT rastreou ataques que terminaram com a implantação de um beacon CobaltStrike que visava agências governamentais em Taiwan, o militar nas Filipinas e organizações de energia no Vietnã.

Táticas, técnicas e procedimentos, e sobreposições infraestruturais com relatórios recentes da AhnLab e outras fontes, sugerem que o grupo de ameaça patrocinado pelo estado chinês APT 41 está por trás dos ataques, embora esta atribuição tenha baixa confiança.

Semelhante ao side-loading de DLL padrão, a Injeção do Gerenciador de AppDomain também envolve o uso de arquivos DLL para alcançar objetivos maliciosos nos sistemas violados.

No entanto, a Injeção do Gerenciador de AppDomain aproveita a classe AppDomainManager do .NET Framework para injetar e executar código malicioso, tornando-a mais furtiva e versátil.

O atacante prepara um DLL malicioso que contém uma classe herdando da classe AppDomainManager e um arquivo de configuração (exe.config) que redireciona o carregamento de um assembly legítimo para o DLL malicioso.

O atacante só precisa colocar o DLL malicioso e o arquivo de configuração no mesmo diretório que o executável alvo, sem necessidade de combinar o nome de um DLL existente, como no side-loading de DLL.

Quando a aplicação .NET é executada, o DLL malicioso é carregado e seu código é executado dentro do contexto da aplicação legítima.

Ao contrário do side-loading de DLL, que pode ser mais facilmente detectado por softwares de segurança, a injeção do Gerenciador de AppDomain é mais difícil de detectar porque o comportamento malicioso parece vir de um arquivo executável legítimo e assinado.

Os ataques observados pela NTT começam com a entrega de um arquivo ZIP ao alvo que contém um arquivo MSC (Componente de Script da Microsoft) malicioso.

Quando o alvo abre o arquivo, código malicioso é executado imediatamente sem mais interações ou cliques do usuário, usando uma técnica chamada GrimResource, descrita em detalhes pela equipe de segurança da Elastic em junho.

GrimResource é uma técnica de ataque inovadora que explora uma vulnerabilidade de cross-site scripting (XSS) na biblioteca apds.dll do Windows para executar código arbitrário através do Console de Gerenciamento da Microsoft (MMC) usando arquivos MSC especialmente elaborados.

A técnica permite aos atacantes executar JavaScript malicioso, que por sua vez pode rodar código .NET usando o método DotNetToJScript.

O arquivo MSC nos últimos ataques vistos pela NTT cria um arquivo exe.config no mesmo diretório que um arquivo executável da Microsoft legítimo e assinado (por exemplo, oncesvc.exe).

Este arquivo de configuração redireciona o carregamento de certos assemblies para um DLL malicioso, que contém uma classe herdando da classe AppDomainManager do .NET Framework e é carregado no lugar do assembly legítimo.

Em última análise, este DLL executa código malicioso dentro do contexto do arquivo executável da Microsoft legítimo e assinado, evadindo completamente a detecção e burlando as medidas de segurança.

A etapa final do ataque é carregar um beacon CobaltStrike na máquina, que o atacante pode usar para realizar uma ampla gama de ações maliciosas, incluindo a introdução de payloads adicionais e movimento lateral.

Embora não seja certo que o APT41 seja responsável pelos ataques, a combinação das técnicas de Injeção do Gerenciador de AppDomain e GrimResource indica que os atacantes têm a expertise técnica para misturar técnicas novas e menos conhecidas em casos práticos.

Publicidade

Aprenda hacking e pentest na prática com esse curso gratuito

Passe por todas as principais fases de um pentest, utilizando cenários, domínios e técnicas reais utilizados no dia a dia de um hacker ético. Conte ainda com certificado e suporte, tudo 100% gratuito. Saiba mais...