Uma nova exploração do Editor de Equações é comercial, pois os ataques maldoc usam o pico

Documentos RTF armados adotam o CVE-2018-0798, outra vulnerabilidade do Equation Editor

Por Gabor Szappanos

Há um ponto distinto de maturação no ciclo de vida de uma exploração do Office: o ponto em que ela se torna geralmente disponível para os grupos criminosos. Antes disso, a exploração afetou apenas algumas poucas vítimas selecionadas, de ataques direcionados. A partir daí, torna-se generalizada e ameaça a população geral de usuários.

Assim, a CVE-2018-0798, outra vulnerabilidade do Equation Editor, atingiu esse ponto de maturação em torno do final de junho de 2019.

Como o exploit funciona

Os atacantes usaram essa exploração em ataques direcionados que observamos nos últimos meses, permanecendo praticamente fora do radar. Uma descrição detalhada da vulnerabilidade e seu uso em ataques direcionados, publicados no início deste mês, explica os fundamentos.

Em algum momento, parece que alguém integrou a implementação de exploração que os atacantes usaram nos ataques direcionados a uma ferramenta mal-intencionada do criador de documentos do Office, com apenas pequenas alterações. Assim, isso prepara o terreno para uma adoção muito mais ampla da técnica de ataque.

As semelhanças são inconfundíveis: por exemplo, o gatilho de exploit é exatamente o mesmo, e o shellcode (responsável por descriptografar e executar a carga útil) é quase idêntico ao shellcode usado nos ataques direcionados. Embora o CVE-2018-0798 seja uma vulnerabilidade de estouro de buffer relativamente simples, há alguns fatores que dificultam o ajuste do próprio disparo de exploração, daí a implementação virtualmente idêntica.

O ataque usa o Editor de Equações para colocar o buffer mal-intencionado em várias transformações e, durante o processamento, o layout da memória será um pouco diferente do layout do arquivo, o que complica a análise (e ajustes). Além disso, o invasor controla apenas a palavra inferior do endereço de retorno na pilha. Essas complicações tornam menos provável que as implementações, pelos criminosos alterem significativamente o gatilho de exploração.

Análise técnica do payload RTF

Os arquivos RTF com armas que fazem parte desta campanha têm uma característica curiosa: alguns conteúdos indesejados perto do cabeçalho – conteúdo que se ajusta a um padrão normalmente visto em arquivos PDF. Assim, a presença deste conteúdo de dados de cabeçalho PDF pode ser uma tentativa de confundir analisadores de tipo de arquivo de documento em scanners antivírus.

Arquivo RTF Malicious com fragmentos de PDF

Ofuscação de chamadas da API do Windows

Um recurso interessante no shellcode é que ele não chama as funções da API do Windows diretamente a partir de si mesmo. Em vez disso, o shellcode corrige a função clearerr do msvcrt.dll com um código curto que invoca a função API desejada.

O código original do clearerr é assim:

clearerr antes do patch

Um código substitui isso, verificando primeiro se algum software de segurança já conectou a função da API (a presença de 0xE9 e 0xEB indica que a entrada original do manipulador da API foi corrigida, redirecionada para uma função de monitoramento). Se o patch for detectado, o shellcode irá ignorar os primeiros 5 bytes, o redirecionador, e saltará diretamente para o corpo da função, feito pela instrução JMP EAX.

clearerr após o patch

O resultado desse truque é que todas as chamadas da API do Windows que o shellcode usa parecerão ser iniciadas a partir do msvcrt.dll, o que torna uma atividade muito menos suspeita para o software de monitoramento de comportamento.

Payload e carga incorporada no RTF

A única mudança significativa nos casos de crimeware é a carga extraída. As amostras do APT eram independentes, e o arquivo RTF armazenava a carga final. Por outro lado, nos exemplos de crimeware, o payload é um trojan de downloader muito simples, que obtém a carga final de um URL codificado.

Em ambos os casos, o arquivo RTF contém uma carga útil incorporada. Houve algumas implementações diferentes nos casos APT. Na mais simples delas, o arquivo RTF embute a carga útil sem nenhuma criptografia, conforme ilustrado na figura a seguir, onde o marcador MZ do executável embutido fica claramente visível no conteúdo RTF.

O cabeçalho MZ característico da carga útil executável incorporada é claramente visível no RTF

Nos casos típicos, o código usa um algoritmo XOR de um byte, alterando a chave de criptografia a cada byte de dados. Da mesma forma, isso dificulta o reconhecimento do conteúdo incorporado, que a princípio parece com alguns dados aleatórios.

Conteúdo criptografado incorporado em RTF

Igualmente, o criador de crimeware escolheu uma implementação falsa (ainda mais conveniente) do último; mais detalhes na próxima seção.

O componente de download

O exploit CVE-2018-0798 aciona o código de shell que descriptografa a carga útil (algoritmo XOR de um byte, a chave é 0xFC) e o executa. Mais precisamente, o algoritmo de criptografia deve ser um algoritmo XOR byte-wise de chave de execução, mas a amostra APT que foi usada como um modelo para o construtor de crimeware usou uma implementação falsa desse algoritmo.

Além disso, em vez de alterar a chave para cada posição de arquivo, a chave só muda para os primeiros 4 bytes; para o resto do arquivo, será 0xFC. A figura a seguir mostra grandes blocos de bytes 0xCFC na carga útil incorporada, o que revela claramente a chave de criptografia.

O downloader criptografado com o URL nele

Assim, não deve ser uma coincidência que o criador de crimeware tenha escolhido essa implementação. É muito mais fácil corrigir somente a URL codificada no arquivo RTF com chave fixa, do que recodificar o EXE incorporado e recriar o arquivo RTF para cada amostra.

O programa faz o download do URL codificado, salva-o na pasta %APPDATA% e o executa.

O código ofusca ligeiramente os nomes de funções críticas da API do Windows, alterando o primeiro caractere do nome.

O mesmo executável do downloader está presente em todas as amostras recentes de crimeware; apenas a URL de download codificado é alterado. Esta é uma boa escolha para o fácil desenvolvimento do construtor.

Como são as mensagens de spam maliciosas

Observamos várias campanhas de distribuição de e-mail usando esses documentos do Office como armas. A carga útil identificada das campanhas de infecção eram todas as cargas de família de crimeware “suspeitas usuais”: Fareit, Lokibot, Formbook ou AzoruLT. O payload mais distribuído é o Fareit.

Igualmente, observamos que as campanhas de spam usam uma ampla seleção de tropos de engenharia social.

Mensagens temáticas de aviso de chegada de carga:

Da mesma forma, o rastreamento da Fedex foi particularmente popular:

E, claro, o spam de confirmação de pedido:

Os atacantes distribuíram o Lokibot usando uma mensagem com o tema “aviso de pagamento”:

E em mensagens que pretendiam conter uma consulta de produto:

Os atacantes usaram o e-mail “forneça a sua cotação de melhor preço” para distribuir o Formbook:

A vulnerabilidade afeta todas as versões do Equation Editor, mesmo aquelas com a correção para o CVE-2017-11882.

O patch para o exploit CVE-2018-0802 “corrige” permanentemente a vulnerabilidade, eliminando completamente o Equation Editor.

Desde o final de junho, começamos a observar um aumento no uso dessa vulnerabilidade em campanhas de phishing. Desde então, observamos cerca de 200 novos documentos RTF maliciosos usando essa exploração. Esses documentos são muito semelhantes entre si. Isso e o grande número de amostras indicaram que uma ferramenta de construção que gera os arquivos .doc com armas provavelmente está em circulação. Podemos esperar que o uso dessa exploração aumente, pelo menos no futuro próximo.

Temos as seguintes detecções que fornecem cobertura genérica para as amostras conhecidas:

Exp / 20180798-A

Troj / RtfExp-FB

Troj / RtfExp-EY

Indicadores de Compromisso

Os hashes de arquivo das amostras analisadas neste relatório estão no SophosLabs Github.

Traduzido do original em: https://news.sophos.com/en-us/2019/07/18/a-new-equation-editor-exploit-goes-commercial-as-maldoc-attacks-using-it-spike/?cmp=30727

Precisa de ajuda com este tema?

A SN Informática é parceira Sophos desde 2014 e Sophos Platinum Partner. Implementamos e gerenciamos Firewall XGS, MDR 24/7 e Cibersegurança como Serviço para empresas de todo o Brasil.

Fale com um especialistaSiga a SN: YouTube · LinkedIn · Instagram

A SN Informática é especialista em cibersegurança corporativa desde 2001 e Sophos Platinum Partner. Nossos artigos trazem análises técnicas sobre Firewall XGS, MDR, XDR, ransomware e conformidade (LGPD, Provimento 213) para gestores de TI e CISOs.