Na segunda parte da série “Advento da Extração de Configuração”, pesquisadores de segurança desvendaram o QuasarRAT, um trojan de acesso remoto (RAT) .NET amplamente implantado, revelando técnicas sofisticadas para extrair sua configuração criptografada de amostras binárias limpas e ofuscadas.
A análise demonstra uma metodologia reproduzível usando Jupyter Notebook, pythonnet e dnSpy, fornecendo aos profissionais de segurança cibernética ferramentas práticas para combater essa ameaça persistente.
QuasarRAT, inicialmente lançado em 2014 sob o nome xRAT, representa um desafio significativo no cenário da segurança cibernética.
Publicado no GitHub como uma ferramenta de administração remota do Windows aparentemente legítima, o RAT de código aberto tem sido sistematicamente transformado em arma por cibercriminosos e também por atores do Estado-nação.
A apresentação abrangente da JPCERT no Botconf 2020 documentou a evolução do malware, catalogando inúmeras variantes e suas capacidades em expansão em múltiplas campanhas de ataque.
Implementado em C# no Estrutura .NETa acessibilidade do QuasarRAT o tornou um favorito entre os agentes de ameaças.
O malware oferece suporte a uma ampla gama de funções de administração remota, incluindo reconhecimento do sistema, manipulação de arquivos, visualização remota da área de trabalho, registro de teclas e execução arbitrária de comandos.
Embora estas capacidades sirvam teoricamente a propósitos administrativos legítimos, os investigadores observaram o QuasarRAT implantado em operações de espionagem cibernética, campanhas de vigilância não autorizadas e invasões orquestradas tanto por agentes de ameaças independentes como por grupos alinhados pelo Estado.
Arquitetura Técnica
A metodologia de extração de configuração depende de um ambiente de análise sofisticado que combina múltiplas ferramentas especializadas.
Em sua base, a estrutura emprega dnlib, uma biblioteca .NET de código aberto projetada para inspeção profunda e modificação de assemblies .NET.
Esta biblioteca expõe metadados, tipos, métodos, atributos e instruções de linguagem intermediária (IL) de forma programática, permitindo análise granular de malware.
O ambiente de análise integra pythonnet como uma ponte crítica, permitindo Código Python para invocar APIs do dnlib perfeitamente.
Essa combinação permite aos pesquisadores descompilar funções individuais, percorrer estruturas de montagem, incluindo namespaces, classes e métodos, e extrair tipos personalizados, entradas de metadados e strings incorporadas.
Toda a configuração foi conteinerizada com Docker, garantindo portabilidade e reprodutibilidade em diferentes ambientes de análise.
IL, também conhecido como Microsoft IL (MSIL) ou Common IL (CIL), opera como um bytecode intermediário baseado em pilha.
A arquitetura da máquina de pilha significa que as instruções colocam valores em uma pilha enquanto outras operações colocam valores para processamento.
Cada instrução IL consiste em um opcode (a operação como ldstr, stloc ou call) e um operando opcional que fornece dados adicionais como strings, referências de classe, números inteiros ou destinos de ramificação.
Para amostras QuasarRAT não ofuscadas compiladas com DEBUG desabilitado, a estratégia de extração tem como alvo o namespace Config dentro da classe Settings.
Esta classe contém chaves de configuração críticas, incluindo versão, hosts, atraso de reconexão, parâmetros de instalação, chaves de criptografiae certificados de servidor. A configuração reside em campos estáticos inicializados pelo construtor estático da classe (método .cctor).
O processo de extração começa localizando o namespace e a classe de destino por meio da travessia iterativa dos tipos do módulo.
Uma vez identificado, o extrator analisa as instruções IL do construtor estático, procurando por operações emparelhadas onde ldstr carrega uma string literal imediatamente seguida por uma instrução referenciando o campo de classe correspondente.
Essa abordagem de correspondência de padrões recupera com êxito valores de configuração de texto simples de amostras limpas.
A estratégia de extração avançada aproveita os mecanismos de descriptografia em tempo de execução do QuasarRAT. A análise do código-fonte revela que o malware usa AES-256 no modo CBC, com derivação de chave realizada via PBKDF2.
O módulo de criptografia Aes256 utiliza a implementação de sistema padrão do AES, com a chave de criptografia armazenada como um membro da classe e inicializada no construtor estático.
Fundamental para essa abordagem é identificar a classe Aes256 verificando instanciações de System.Security.Cryptography.AesCryptoServiceProvider.
No .NET IL, os campos estáticos são inicializados pelo construtor estático da classe, conhecido como.cctor(permanecendo comoClassConsTOR).
O valor salt, armazenado como uma matriz de bytes estática privada, é recuperado resolvendo o token de metadados carregado por meio da instrução ldtoken no construtor estático.
A análise de referência cruzada aponta então o método Settings Initialize como o único chamador da rotina de descriptografia.
Implicações e aplicações futuras
Essa abordagem sistemática para extração de configuração demonstra a viabilidade da análise automatizada de malware baseado em .NET.
Embora especificamente adaptado ao QuasarRAT, o fluxo de trabalho modular que enfatiza a travessia de namespace, resolução de referência cruzada e comparação de opcode se adapta prontamente a outras ameaças .NET que empregam padrões de inicialização e APIs de criptografia semelhantes.
O código completo do extrator QuasarRAT foi publicado no repositório Sekoia.io Community Git, fornecendo à comunidade de segurança cibernética ferramentas práticas para inteligência de ameaças e resposta a incidentes.
Ao combinar ambientes de laboratório reproduzíveis com um conhecimento profundo da linguagem intermediária .NET, os profissionais de segurança podem localizar sistematicamente classes críticas, recuperar parâmetros criptográficos e montar extratores totalmente automatizados capazes de coletar configurações de comando e controle.
Embora esta metodologia não cubra universalmente amostras compactadas ou variantes do QuasarRAT substituindo cifras alternativas, ela fornece resultados precisos para a maioria dos cenários de implantação do mundo real.
Siga-nos emGoogle Notícias,LinkedIneXpara obter atualizações instantâneas e definir GBH como fonte preferencial emGoogle.
