MS17-010 (Eternal Blue) Анализ и воспроизведение уязвимостей
1. Знакомство с уязвимостью
Уязвимость EternalBlue относится к уязвимости безопасности в операционной системе Windows, вызванной инструментом, разработанным Агентством национальной безопасности США (АНБ). Этот инструмент называется «EternalBlue», и он использует уязвимости протокола SMB в операционных системах Windows.
После того как уязвимость была обнародована, хакеры быстро воспользовались ею для проведения крупномасштабных атак. В мае 2017 года от атаки Eternal Blue пострадали многие организации и учреждения по всему миру, в том числе Британская национальная служба здравоохранения (NHS), Telefonica и др. Убытки от этих атак огромны, включая потерю данных, паралич системы и т. д.
Чтобы устранить эту уязвимость, Microsoft выпустила серию исправлений безопасности, но поскольку многие пользователи не обновили свои системы вовремя, все еще существует много систем с уязвимостями. Кроме того, благодаря успеху атаки EternalBlue хакеры начали использовать и другие уязвимости, что сделало проблемы сетевой безопасности более актуальными.
Чтобы защитить свои системы и данные, пользователям необходимо принять ряд мер безопасности. Прежде всего, пользователи должны своевременно обновлять свои системы и программное обеспечение, чтобы обеспечить своевременное устранение уязвимостей в системе. Во-вторых, пользователям следует установить антивирусное программное обеспечение и брандмауэры для защиты своих систем от вредоносных программ. Кроме того, пользователям следует усилить защиту паролем, регулярно менять пароли и избегать использования слабых паролей.
Короче говоря, уязвимость Eternal Blue — это очень опасная уязвимость, и пользователям крайне важно защитить свои системы и данные. Только посредством непрерывного обучения и повышения осведомленности о безопасности мы сможем лучше защитить нашу собственную сетевую безопасность.
2. Принцип уязвимости:
1. Принцип атаки
Уязвимость Eternal Blue использует уязвимости удаленного выполнения кода в SMBv1 и NBT через TCP-порты 445 и 139, а также использует вредоносный код для сканирования и атаки хостов Windows, которые открывают порт обмена файлами 445. Пока хост пользователя включен и подключен к Интернету, хостом пользователя можно управлять с помощью этой уязвимости. Преступники могут внедрять программы-вымогатели, красть конфиденциальность пользователей, удаленно управлять троянами и другими вредоносными программами на своих компьютерах или серверах.
2. Затронутые версии:
В настоящее время известны затронутые версии Windows, среди которых: Windows NT, Windows 2000, Windows XP, Windows 2003, Windows Vista, Windows 7, Windows 8, Windows 2008, Windows 2008 R2 и Windows Server 2012 SP0.
3. Повторение уязвимостей
Среда воспроизводства:
Атакующая машина: Kali Linux 2021.2 (IP: 192.168.210.145)
Целевой дрон: Windows 7 (x64) (IP: 192.168.210.133)
Условия эксперимента: две машины могут пинговать друг друга, а на целевой машине (без патча) открыт порт 445, а брандмауэр закрыт!
Сканируйте хост (используйте собственный инструмент Кая nmap для обнаружения хоста)
Вы можете видеть, что хост с IP-адресом 192.168.210.133 открывает порт 445.
1. Откройте инструмент эксплойта msfconsole.
2. Используйте команду поиска для поиска модуля уязвимости ms17-010.
вспомогательный/сканер/smb/smb_ms17_010 — это вечный синий модуль сканирования, эксплойт/windows/smb/ms17_010_eternalblue — вечный синий модуль атаки.
Обычно при совместном использовании первый сначала сканирует, а затем атакует, если обнаружена уязвимость.
3. Используйте модуль с именем: вспомогательный/admin/smb/ms17_010_command для сканирования уязвимостей.
Использование: используйте имя модуля.
4. Используйте команду show options, чтобы просмотреть параметры, которые необходимо установить.
Как видите, вам необходимо настроить хост для сканирования, а значит, нужно проверить, на каком хосте есть уязвимости.
5. Установите, уязвим ли сканируемый хост, используйте команду: set rhosts IP для сканирования.
6. Выполните сканирование, используйте эксплойт или команду запуска для выполнения.
Если происходят вышеуказанные результаты, это означает, что существует уязвимость.
7. Используйте модуль атаки эксплойта/windows/smb/ms17_010_eternalblue для атаки.
Использование: используйте имя модуля.
8. Используйте параметры отображения, чтобы просмотреть параметры, которые необходимо установить.
Как видите, необходимо настроить RHOSTS и указать IP-адрес атаки.
9. Используйте команду set, чтобы установить метод использования: установите атакованный IP-адрес rhosts.
10. Чтобы выполнить атаку, используйте эксплойт или команду запуска для выполнения.
Когда появится указанное выше приглашение, это означает, что атака завершена!
11. Вводим help в консоли для просмотра команд атаки.
Выше представлено множество команд атаки, например:
1. `sysinfo`: отображает системную информацию целевого компьютера.
2. `getuid`: отображает уровень разрешений текущего пользователя.
3. `ps`: отображает все запущенные процессы на целевом компьютере.
4. `ls`: список файлов и каталогов на целевом компьютере.
5. `cd`: изменить текущий каталог на целевом компьютере.
6. «загрузка»: загрузка файлов на целевой компьютер.
7. `upload`: загрузить файлы на целевой компьютер.
8. `shell`: откройте терминал командной строки на целевом компьютере.
9. «Мигрировать»: перенести сеанс Meterpreter в другой процесс.
10. `hashdump`: получите хэш пароля на целевом компьютере.
11. `keyscan_start`: Записывать нажатия клавиш клавиатуры.
12. `keyscan_dump`: выводит записанные нажатия клавиш клавиатуры.
13. `скриншот`: Получите снимок экрана целевой машины.
14. `webcam_snap`: получите фотографии с камеры, подключенной к целевому компьютеру.
15. `portfwd`: установите правила переадресации портов.
Вышеупомянутые команды — это лишь некоторые часто используемые команды.Meterpreter поддерживает множество команд.Подробную информацию можно найти в официальной документации Meterpreter.
Официальный адрес документа Meterpreter:
Metasploit Unleashed — бесплатный онлайн-курс по этичному хакерству
12. Мы можем открыть камеру целевой машины и ввести команду webcam_stream.
После использования команды открытия камеры автоматически откроется браузер, и вы увидите подсказку выше:
IP-адрес назначения: 192.168.210.133
Время начала: 2023-05-1810:22.16+0800.
Статус: Играет
PS : Следует отметить, что у другой стороны должно быть оборудование камеры, в противном случае в команде появится сообщение об ошибке!
13. Мы также можем следить за экраном собеседника в режиме реального времени, введя команду: screenshare
Как видите, после вывода команды «поделиться экраном» браузер автоматически открывается для мониторинга.