Краткое изложение археологии повторения уязвимостей Eternal Blue (ms17-010)
Краткое изложение археологии повторения уязвимостей Eternal Blue (ms17-010)

Введение в Вечный Синий

Вечный синий Синий) вспыхнул вечером 14 апреля 2017 года. Это протокол, использующий системы Windows. Уязвимость SMB, позволяющая получить высшие полномочия системы для управления скомпрометированным компьютером.

Даже 12 мая 2017 года преступники создали программу-вымогательwancry, модифицировав «Eternal Blue», в результате чего программа-вымогатель поразила широкий спектр стран мира, затронув даже школы, крупные предприятия, правительства и другие учреждения. Файлы можно восстановить только заплатив. высокий выкуп.

Однако вскоре после появления вирус был исправлен Microsoft.

Протокол SMB

SMB (полное имя — Сервер) Message Block) — блок сообщений сервера протокола, который представляет собой протокол клиент/сервер, запрос/ответ, через Протокол. SMB может обмениваться файлами между компьютерами、принтер、Ресурсы, такие как именованные каналы,Интернет-соседство на компьютере реализуется по протоколу SMB;

Протокол SMB работает на уровне приложений и сеансовом уровне.,Может использоваться по протоколу TCP/IP.,SMB использует порт TCP139 и порт TCP445.

Принцип малого и среднего бизнеса

Сначала клиент отправляет датаграмму запроса запрета SMB и перечисляет все версии протокола SMB, которые он поддерживает.

Сервер отвечает на запрос после получения сообщения запроса.,И укажите версию протокола SMB, которую вы хотите использовать. Если доступной версии протокола нет, возвращается 0XFFFFH.,Завершить общение.

После определения протокола клиентский процесс инициирует пользовательскую или общую аутентификацию на сервере. Этот процесс реализуется путем отправки пакета запроса SessionupX.

Клиент отправляет серверу имя пользователя и пароль или простой пароль, а затем сервер отправляет ответный пакет SessionupX, чтобы разрешить или запретить соединение.

Когда клиент и сервер завершат согласование и аутентификацию, он отправит дейтаграмму Tcon или TconX SMB и перечислит имя сетевого ресурса, к которому он хочет получить доступ, а затем отправит ответную дейтаграмму TconX, чтобы указать, принято ли соединение или нет. .

После подключения к соответствующему ресурсу клиент SMB может открыть файл через открытый SMB, прочитать файл через чтение SMB, записать файл через запись SMB и закрыть файл через закрытый SMB.

Принцип уязвимости

Уязвимость возникает в функции режима ядра srv!SrvOs2FeaListToNt в Windows SMB v1. При обработке преобразования FEA (File Extended Attributes) происходит переполнение буфера в большом невыгружаемом пуле (структура данных ядра, Large Non-Pages Kernel Pool). .

Функция srv!SrvOs2FeaListToNt вызовет srv!SrvOs2FeaListSizeToNt для расчета размера преобразованного lsit FEA перед преобразованием списка FEA в список NTFEA (Windows NT FEA).

Затем будут выполнены следующие операции:

  1. srv!SrvOs2FeaListSizeToNt рассчитает размер списка FEA и обновит размер списка FEA для преобразования.
  2. Из-за неправильного использования преобразования WORD расчетный размер конвертируемого списка ВЭД превышает реальный размер списка ВЭД.
  3. Поскольку исходный расчет общего размера был неверным, при преобразовании списка FEA в список NTFEA произошло переполнение буфера в невыгружаемом пуле.

Конкретные принципы можно найти в конце статьи: Анализ уязвимостей SMB АНБ Eternalblue — Блог 360 Core Security Technology

Уязвимости

EternalBlue — это уязвимость, которая возникает, когда служба Windows SMB обрабатывает запросы SMB v1. Эта уязвимость позволяет злоумышленнику выполнить произвольный код в целевой системе.

Благодаря уязвимости Eternal Blue компьютеры Windows с открытым портом обмена файлами 445 будут сканироваться без каких-либо действий со стороны пользователя, пока компьютер включен и подключен к Интернету, преступники могут внедрить программы-вымогатели, трояны дистанционного управления, машины для добычи виртуальной валюты. и другие вредоносные программы на компьютеры и серверы.

Повторение уязвимости

Экспериментальная среда

Язык кода:javascript
копировать
целевой хост ->  Win7:192.168.11.136
штурмовик->  Kali:192.168.11.130

полный процесс

Сканируйте целевой хост на наличие этой уязвимости.

Язык кода:javascript
копировать
nmap --script smb-vuln* IP-адрес целевого хоста

Провести атаку

Язык кода:javascript
копировать
Meterpreter — Metasploit Модуль расширения Metasploit Некоторые функции могут использоваться для более глубокого проникновения в целевую систему, например получение экрана, загрузка/скачивание файлов, создание постоянных бэкдоров и т. д.

эксплуатировать

Язык кода:javascript
копировать
Проверьте процесс дрона: ps

Следите за рабочим столом дрона: запустите vnc

Захват экрана дрона: скриншот

Получить оболочку целевой машины: оболочка

Командные операции можно выполнять в оболочке обычным образом: добавлять/удалять пользователей, менять пароли, управлять разрешениями и записывать файлы (оставляя бэкдоры). . .

Очистить логи (очистить следы): Clearev

Защита от уязвимостей

  • Отключить протокол SMB1
  • Откройте Центр обновления Windows или установите патч вручную.
  • Используйте брандмауэр, чтобы заблокировать подключения к порту 445, или используйте правила для входящего и исходящего трафика, чтобы заблокировать подключения к порту 445.
  • Не открывайте незнакомые файлы по своему желанию
  • Устанавливайте антивирусное ПО и своевременно обновляйте вирусные базы
Ссылки

[13]NSA Eternalblue SMB Анализ уязвимостей - 360 основной Безопасность Блог о технологиях:https://blogs.360.cn/post/nsa-eternalblue-smb.html#toc-772

[14]MS17-010: EternalBlue’s Buffer Overflow in SRV Driver (trendmicro.com):https://www.trendmicro.com/en_us/research/17/f/ms17-010-eternalblue.html

boy illustration
Неразрушающее увеличение изображений одним щелчком мыши, чтобы сделать их более четкими артефактами искусственного интеллекта, включая руководства по установке и использованию.
boy illustration
Копикодер: этот инструмент отлично работает с Cursor, Bolt и V0! Предоставьте более качественные подсказки для разработки интерфейса (создание навигационного веб-сайта с использованием искусственного интеллекта).
boy illustration
Новый бесплатный RooCline превосходит Cline v3.1? ! Быстрее, умнее и лучше вилка Cline! (Независимое программирование AI, порог 0)
boy illustration
Разработав более 10 проектов с помощью Cursor, я собрал 10 примеров и 60 подсказок.
boy illustration
Я потратил 72 часа на изучение курсорных агентов, и вот неоспоримые факты, которыми я должен поделиться!
boy illustration
Идеальная интеграция Cursor и DeepSeek API
boy illustration
DeepSeek V3 снижает затраты на обучение больших моделей
boy illustration
Артефакт, увеличивающий количество очков: на основе улучшения характеристик препятствия малым целям Yolov8 (SEAM, MultiSEAM).
boy illustration
DeepSeek V3 раскручивался уже три дня. Сегодня я попробовал самопровозглашенную модель «ChatGPT».
boy illustration
Open Devin — инженер-программист искусственного интеллекта с открытым исходным кодом, который меньше программирует и больше создает.
boy illustration
Эксклюзивное оригинальное улучшение YOLOv8: собственная разработка SPPF | SPPF сочетается с воспринимаемой большой сверткой ядра UniRepLK, а свертка с большим ядром + без расширения улучшает восприимчивое поле
boy illustration
Популярное и подробное объяснение DeepSeek-V3: от его появления до преимуществ и сравнения с GPT-4o.
boy illustration
9 основных словесных инструкций по доработке академических работ с помощью ChatGPT, эффективных и практичных, которые стоит собрать
boy illustration
Вызовите deepseek в vscode для реализации программирования с помощью искусственного интеллекта.
boy illustration
Познакомьтесь с принципами сверточных нейронных сетей (CNN) в одной статье (суперподробно)
boy illustration
50,3 тыс. звезд! Immich: автономное решение для резервного копирования фотографий и видео, которое экономит деньги и избавляет от беспокойства.
boy illustration
Cloud Native|Практика: установка Dashbaord для K8s, графика неплохая
boy illustration
Краткий обзор статьи — использование синтетических данных при обучении больших моделей и оптимизации производительности
boy illustration
MiniPerplx: новая поисковая система искусственного интеллекта с открытым исходным кодом, спонсируемая xAI и Vercel.
boy illustration
Конструкция сервиса Synology Drive сочетает проникновение в интрасеть и синхронизацию папок заметок Obsidian в облаке.
boy illustration
Центр конфигурации————Накос
boy illustration
Начинаем с нуля при разработке в облаке Copilot: начать разработку с минимальным использованием кода стало проще
boy illustration
[Серия Docker] Docker создает мультиплатформенные образы: практика архитектуры Arm64
boy illustration
Обновление новых возможностей coze | Я использовал coze для создания апплета помощника по исправлению домашних заданий по математике
boy illustration
Советы по развертыванию Nginx: практическое создание статических веб-сайтов на облачных серверах
boy illustration
Feiniu fnos использует Docker для развертывания личного блокнота Notepad
boy illustration
Сверточная нейронная сеть VGG реализует классификацию изображений Cifar10 — практический опыт Pytorch
boy illustration
Начало работы с EdgeonePages — новым недорогим решением для хостинга веб-сайтов
boy illustration
[Зона легкого облачного игрового сервера] Управление игровыми архивами
boy illustration
Развертывание SpringCloud-проекта на базе Docker и Docker-Compose