Приветствую коллегу энтузиаста безопасности! Сегодня я хочу познакомить вас с новым мною написанным средством безопасности ntlm_theft , которое теперь доступно на GitHub . Это инструмент, который генерирует несколько различных файлов (18 на момент написания), которые могут быть использованы злоумышленником, чтобы обманным путем заставить пользователей раскрыть свои хеши NetNTLMv2.
В этой статье я кратко расскажу о 4 типах взаимодействия, которые составляют атаки с раскрытием хэша, расскажу, почему я считаю, что этот инструмент был необходим, предоставлю вам несколько вариантов использования для его тестирования безопасности и расскажу о некоторых мерах по их устранению. виды атак.
NTLMv2 Hash Theft
Кража хешей NTLMv2 не является новой уязвимостью, она существует уже более 20 лет. Когда пользователь Windows пытается подключиться к SMB-серверу, если сервер запрашивает аутентификацию, клиент автоматически предоставит его, если специально не ограничен. Отправляемая аутентификация имеет вид хэша, который затем может быть взломан для выявления пароля пользователя, вошедшего в систему.
При проведении оценок безопасности большинство консультантов будут знакомы с этой проблемой безопасности из-за того, что Лоран Гаффи использовал инструмент Responder . Этот инструмент может заставить клиентов в локальной сети раскрывать свои хэши, используя отравления LLMNR, NBT-NS и MDNS.
Однако альтернативой раскрытию хеша через атаку по локальной сети является принудительное раскрытие хеша путем обмана пользователя при открытии документов. Это может быть фишинг по электронной почте, загрузка их в общий сетевой ресурс, отправка их через корпоративную программу чата, размещение их на веб-сервере и ряд других методов.
Введите: ntlm_theft
Итак, из того, что я видел до сих пор, эти атаки на основе документов раскрывают хэш после 4 различных типов взаимодействия с пользователем.
1. Пользователь просматривает папку с документом внутри.
2. Пользователь открывает документ.
3. Пользователь открывает документ и принимает всплывающее окно.
4. Пользователь нажимает на ссылку в приложении чата
На эту тему было написано множество отличных постов в блоге, в которых рассказывается о различных типах файлов и о том, как создавать их вручную. Тем не менее, они распространены на нескольких разных сайтах, в блогах и исследовательских работах. На самом деле, я мог даже пропустить несколько типов файлов, поэтому оставьте комментарий ниже или напишите мне в Твиттере после проверки ntlm_theft, и я сделаю все возможное, чтобы добавить еще больше атак на инструмент.
Итак, то, что я попытался сделать здесь, - это собрать их в единый блог и предоставить вам инструмент для быстрой генерации документов атаки. Это должно быть особенно полезно в Linux, где у вас может не быть доступа к Microsoft Office для создания некоторых документов.
Еще одно преимущество ntlm_theft заключается в том, что вы можете визуально увидеть все типы атак с использованием файлов краж NTLMv2, которые вы можете использовать, проверить, какие из них все еще работают, проверить их по AV и посмотреть, могут ли они обойти системы безопасности шлюза электронной почты.
В ntlm_theft есть 18 атак, которые я протестировал на полностью исправленную версию Windows 10, Microsoft Word, Microsoft Excel, Windows Media Player, Chrome, Internet Explorer, Microsoft Edge и Java, и все они по-прежнему работают, кроме четырех (SCF, Autorun.inf, desktop.ini и Zoom), которые по-прежнему включены для атак на старые операционные системы. Кроме того, Защитник Windows не помечает ни один из них, поскольку все они являются «законными» файлами.
Итак, для чего вы можете использовать ntlm_theft? Помимо очевидного ответа на фишинг, вы также можете использовать его для проверки своих антивирусных и почтовых шлюзов. Просто сгенерируйте документы, переместите их в свою систему и запустите AV-сканирование в папке, которую он создает. Либо отправьте каждое письмо по электронной почте через корпоративный почтовый шлюз и проверьте, какие из них помечены, а какие пропущены.
ntlm_theft поддерживает следующие типы файлов и специальные атаки:
- Перейдите к папке, содержащей
1. .url - через поле URL
2. .url - через поле ICONFILE
3. desktop.ini - через поле IconResource (не работает в последних Windows)
4. .scf - через поле ICONFILE (не работает в последних Windows )
5. autorun.inf через поле OPEN (не работает в последних версиях Windows) - Открыть документ
6. .xml - через внешнюю таблицу стилей Microsoft Word
7. .xml - через поле Microsoft Word includepicture
8. .htm - через Chrome & IE & Edge img src (только если открыт локально, не размещен)
9. .docx - через Поле Microsoft Word includepicture
10. .docx - через внешний шаблон Microsoft Word
11. .docx - через набор фреймов Microsoft Word webSettings
12. .xlsx - через внешнюю ячейку Microsoft Excel
13. .asx - через плейлист Windows Media Player (лучше, первичное открытие)
14. .m3u - через плейлист Windows Media Player (что еще хуже, Win10 сначала открывается в Groovy)
15. .jnlp - через внешний jar-
файл Java 16. .application - через любой браузер (должен быть загружен через браузер или не будет работать) - Открыть документ и принять всплывающее окно
17. .pdf - через Adobe Acrobat Reader - Нажмите ссылку в программе чата
18. .txt - отформатированная ссылка для вставки в Zoom чат
ntlm_theft может быть запущен с рядом различных опций. Вы всегда указываете IP-адрес SMB-сервера вашей коллекции и базовое имя для файлов, а затем выбираете «все» типы файлов, определенный тип файлов (например, .rtf) или только современные в настоящее время рабочие типы файлов. , Это можно увидеть в приведенных ниже примерах:
[I]# python3 ntlm_theft.py — generate all — ip 127.0.0.1 — filename board-meeting2020[/I]
[I]python3 ntlm_theft.py — generate rtf — server 192.168.0.24 — filename boardmeeting[/I]
python3 ntlm_theft.py — generate modern — server 192.168.0.24 — filename boardmeeting
Со временем я собираюсь обновить инструмент, так как эти атаки удалены из последней версии Windows, поэтому использование флага «modern» должно быть наиболее надежным по сравнению с современными версиями Windows.
На изображении ниже вы видите, как ntlm_theft генерирует документы, мы загружаем респондент на наш сервер «192.168.1.103», открываем файл .rtf на нашей виртуальной машине с windows 10 и начинаем получать хэши NTLMv2.
Cмягчение
Чтобы уменьшить риски фишинговых документов NTLM, я бы рекомендовал предпринять следующие 3 действия.
1) Заблокируйте порт 445 на внешнем брандмауэре. На самом деле никто не должен подключаться к SMB через Интернет.
2) Рассмотрим групповые политики, чтобы остановить весь исходящий smb-доступ, если это не требуется для конкретных хостов или рабочих станций.
3) Проанализируйте конкретные поля в этих документах, в которых хранятся IP-адреса, и создайте правила для шлюзов AV и электронной почты для обнаружения документов такого типа. Реально эти функции очень редки и редко используются в документах, используемых обычным пользователем.
Я просто хотел бы закончить быстро спасибо
Ссылка скрыта от гостей
,
Ссылка скрыта от гостей
,
Ссылка скрыта от гостей
, deepzec , rocketscientist911 и
Ссылка скрыта от гостей
для оригинальных статей и инструментов , на некоторых из этих атак. Я не смог бы создать этот инструмент без вашего общего знания.Большое спасибо за то, что вы нашли время прочитать этот пост, надеюсь, вы нашли его информативным и полезным, и я желаю вам удачи в тестировании безопасности NTLMv2!
Greenwolf/ntlm_theft
Источник:
Ссылка скрыта от гостей