Introdução
As ameaças em constante evolução estão a acrescentar camadas de complexidade para ocultar a sua natureza maliciosa e iludir as soluções de segurança. Atualmente, os agentes de ameaças fornecem malware em várias camadas que pode passar despercebido, não mostrando qualquer comportamento malicioso até às fases finais da implementação.
O malware multi-camadas envolve várias fases, empregando técnicas de ofuscação e encriptação, e até tácticas adaptativas em que o comportamento e a funcionalidade do malware evoluem com base no sistema da vítima. Uma deteção e resposta eficazes a estas ameaças requerem uma compreensão abrangente do comportamento do malware, o que exige tempo e recursos significativos.
Para lidar com ataques a vários níveis, OPSWAT MetaDefender Sandbox segue uma abordagem holística que combina uma tecnologia única de análise de ameaças adaptativa baseada em emulação com capacidades avançadas de deteção e threat intelligence .
Combinação de análises estáticas e dinâmicas para derrotar malware sofisticado
O motor MetaDefender Sandbox está na vanguarda da deteção de ameaças, combinando na perfeição técnicas de análise estática e dinâmica para impedir até os ataques mais sofisticados.
- Deep Structure Analysis: uma avaliação inicial de ficheiros estáticos que fornece capacidades de deteção precoce para mais de 50 tipos de ficheiros suportados e extrai conteúdo ativo incorporado para análise posterior.
- Análise de conteúdo dinâmico: inspecciona e analisa o conteúdo e o contexto de e-mails, páginas Web e documentos para expor actividades maliciosas ocultas, incluindo URLs suspeitos. Esta é uma medida de proteção particularmente útil contra ataques de phishing.
- Adaptative Threat Analysis: análise dinâmica baseada em emulação que mantém o controlo sobre o fluxo de execução do malware, mesmo quando este é concebido para visar um ambiente específico. Suporta ficheiros Office, executáveis portáteis e os scripts mais comuns.
Note-se que todos os módulos se articulam entre si, assegurando um intercâmbio contínuo de análises e informações.
Todas estas tecnologias desempenham um papel crucial, fornecendo uma visão incomparável das diferentes camadas de ataques, adaptando-se em tempo real aos ambientes visados para avaliar com precisão o malware moderno e gerando um conjunto fiável de Indicadores de Compromisso (IOC) validados em relação ao MetaDefender Cloud, inteligência de ameaças actualizada e Tácticas, Técnicas e Procedimentos (TTP) relevantes.
Libertar o poder de MetaDefender's Advanced Threat Detection
O seguinte caso de utilização exemplifica a forma como vários módulos do motor de deteção de ameaças trabalham em conjunto para atingir o Cobalt Strike (CS), um simulador de malware avançado, e extrair informações altamente valiosas.
O CS é uma ferramenta comercial de acesso remoto concebida para executar ataques direccionados e emular as acções pós-exploração de agentes de ameaças avançadas. As versões pirateadas do CS são amplamente utilizadas pelos agentes de ameaças, permitindo-lhes implantar um agente na memória (beacon) no anfitrião vítima sem tocar no disco. O CS beacon suporta a comunicação comum e de controlo (C2) através de vários protocolos e uma grande variedade de funcionalidades, incluindo o aumento de privilégios, o despejo de credenciais, o movimento lateral e a exfiltração de dados.
O CS é entregue em inúmeras variedades, cada uma apresentando os seus próprios desafios de deteção e análise. MetaDefender Sandbox adapta-se a estes novos métodos de entrega para detetar malware altamente ofuscado e encriptado, dando-nos uma compreensão profunda da sua funcionalidade e extraindo IOC e TTPs de elevado valor.
Síntese de amostras
A amostra analisada é um ficheiro executável portátil (PE) compilado com o Pyinstaller que descarrega secretamente um Cobalt Strike stager PE a partir de um anfitrião malicioso. Em seguida, o PE de escalonamento desencripta o sinalizador CS incorporado e injecta-o na memória, iniciando a comunicação com C2.
Camada 1: PE compilado pelo Pyinstaller
O PyInstaller agrupa uma aplicação Python e todas as suas dependências num único pacote, permitindo ao utilizador executar a aplicação sem instalar um interpretador Python ou quaisquer módulos, o que é uma proposta atractiva para os criadores de malware.
Uma análise estática deste ficheiro apenas produzirá muito ruído inútil em vez de se concentrar no seu comportamento malicioso. MetaDefender Sandbox descompacta e extrai os ficheiros bytecode compilados (pyc) e os artefactos incorporados utilizados pelo código python original. Depois, descompila os ficheiros pyc para obter o código python original, o que nos permite detetar indicadores de ameaça e extrair IOCs de elevado valor.
O Pyinstaller precisa de um processo de descompactação específico que não é suportado nem pelos arquivadores de ficheiros mais comuns MetaDefender Sandbox inclui agora uma funcionalidade de descompactação de python incorporada, que também suporta outros compiladores python comuns como o Nuitka e o Py2exe.
Esta nova funcionalidade ajuda-nos a contornar esta primeira camada de empacotamento e continua com a análise dos ficheiros descompactados.
Camada 2: descompilar o código Python e descarregar o artefacto malicioso para análise
A descompilação dos ficheiros python mostra-nos que este malware descarrega um ficheiro PE (CS stager) a partir de um URL malicioso. Depois, executa o CS stager e remove-o do disco para eliminar potenciais IOCs. Além disso, aparece uma mensagem falsa do Windows para enganar o utilizador e fazê-lo acreditar que ocorreu um erro.
MetaDefender Sandbox extrai o URL malicioso e descarrega o stager para análise posterior.
Camada 3: Descodificação da configuração do Cobalt Strike
O PE descarregado (cs.exe) é um stager que desencripta um segundo ficheiro PE, que desencripta o beacon do CS e o injecta na memória. Existem muitas técnicas que o CS utiliza para esconder o beacon e dificultar a sua deteção. MetaDefender Sandbox é capaz de seguir estaticamente o seu fluxo de execução até chegar ao beacon CS e extrair a sua configuração.
O stager CS esconde um ficheiro PE encriptado por XOR na sua secção .data. Este segundo PE corresponde a um ficheiro DLL, identificável através do conhecido cabeçalho DLL (MZARUH) que é o início do stub do carregador reflexivo por defeito para o sinalizador CS. Isto significa que o PE inicial será responsável pela atribuição e cópia do carregador reflexivo DLL na memória, pela análise e resolução dos endereços das funções de importação e pela execução do ponto de entrada do DLL. Finalmente, o carregador reflexivo desencriptará e executará o sinalizador CS em memória.
A configuração do beacon CS é armazenada na DLL do carregador reflexivo encriptada com um único byte XOR. Note-se que a configuração CS começa sempre com o padrão de bytes "00 01 00 01 00 02", o que nos ajuda a identificá-la facilmente, mesmo quando encriptada por XOR de força bruta.
Conclusão
Esta análise técnica de um CS realça a complexidade e a profundidade das actuais ciberameaças e demonstra que o potente e avançado motor de ameaças do MetaDefender Sandbox analisa eficazmente ataques multi-camadas a uma velocidade notável.
A funcionalidade de descompactação e descompilação do Python permite uma análise mais profunda, essencial para revelar a verdadeira natureza do programa malicioso. Vimos como a descompactação desencadeou acções adicionais que levaram à deteção e extração da configuração do CS.
A extração da configuração do malware revela sempre IOCs valiosos e permite uma identificação precisa do malware. A nossa equipa dedicada de analistas de malware expande continuamente a gama de famílias de malware suportadas, garantindo uma cobertura abrangente e permitindo a deteção rápida de ameaças emergentes.
Indicadores de compromisso (IOCs)
PE compilado pelo Pyinstaller
Sha256: d5a5a87cbc499d39797bcba85232fd1eede2fd81f4d5a1147454324968185926
Estagiário Cobalt Strike
Sha256: d8674a668cb51fe0d8dc89740c03e95d1f659fb6cb66ec8c896e3b1af748662f
URL malicioso
hxxp[://]43[.]143[.]130[.]124:8000/cs[.]exe
Endereço IP do Cobalt Strike C2
43[.]143[.]130[.]124