Набор скриптов для защиты компьютеров от WannaCry

Статус
В этой теме нельзя размещать новые ответы.

mike 1

Активный пользователь
Сообщения
2,391
Симпатии
918
Баллы
383
#1
Шифровальщик WannaCry решительно внес корректировки в выходные дни планы работ ИТ и ИБ специалистов по всему миру. Ключевым вопросом после "что происходит" стал "как защититься от шифровальщика WannaCry". Об этом много написано, но остается вопрос - как защитить инфраструктуру компании и личные компьютеры пользователей от WannaCry быстро и эффективно. В моем понимании это означает автоматизировано. Далее опишу созданный для этих целей набор скриптов WannaCryDefender.


proxy.php?image=https%3A%2F%2F1.bp.blogspot.com%2F-2nIlKhFXok8%2FWRoSGHPUMeI%2FAAAAAAAAA2k%2FRQ5LD25c3oIboaxDS_tEJk8saS_7RYX8gCLcB%2Fs1600%2Fwannacrydefender.jpg&hash=2c321788ec1859ca78c3ade92d6f3e7c


Если убрать шелуху то защита узла от WannaCry сводится к 2 базовым задачам:

  1. Установка обновлений или экстренных патчей Microsoft И / ИЛИ
  2. Отключение протокола SMB 1

Если в инфраструктуре нет XP/2003 то достаточно на всех узлах отключить SMB 1. Но далее буду рассматривать сложный вариант инфраструктуры, с зоопарком операционных систем и отсутствием надежных систем централизованного контроля узлов.
Получается такой набор задач:

proxy.php?image=https%3A%2F%2F2.bp.blogspot.com%2F-nADH4SaQ83Q%2FWRnsfpQ8PPI%2FAAAAAAAAA2Y%2FRaixihFHYq4-jlwlxDU41uXMktbPiuZhgCLcB%2Fs1600%2FOSControls.png&hash=20d851dd0c305ebed3ed4f3c692012ae

При установке патчей следует учитывать, что для каждой ОС патч свой. Кроме того, патчи для x86 и x64 версий различаются.

Алгоритм защиты

Исходя из описанной задачи алгоритм выглядит следующим образом:

  1. Определить версию ОС
  2. Определить разрядность ОС
  3. В зависимости от версии и разрядности ОС выбрать патч
  4. Проверить, установлен ли этот патч в ОС
  5. Если патч не установлен - установить.
  6. В зависимости от версии ОС отключить (или не отключать) SMB 1 тем или иным образом.
  7. Сохранить результаты работы программы
  8. Сохранить результаты установки патча в ОС (eventlog)

Реализация:

Получившийся набор скриптов состоит из:

  1. WannaCryDefender.bat - скрипт для запуска в корпоративном домене
  2. WannaCryDefenderLocal.bat - скрипт для запуска на автономных персональных компьютерах
  3. RunWannaCryDefender.ps1 - дополнительный скрипт для принудительного запуска на всех/части компьютерах домена
  4. EnableSMB1.bat - дополнительный скрипт для включения SMB 1, на случай проблем с принтерами и сетевыми папками
  5. Distr - каталог с патчами MS
  6. Logs - каталог с логами работы скрипта и Eventlog событий установки патчей

Запуск в доменной инфраструктуре

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

Через GPO настраивается запуск скрипта из сетевой папки на всех компьютерах при их включении.

Для срочного запуска скрипта на всех или части компьютеров используется RunWannaCryDefender.ps1, который берет все компьютеры из нужного юнита AD и запускает на них WannaCryDefender.bat через psexec.

Работу с серверными ОС рекомендую проводить хоть и с использованием скрипта в полу-ручном режиме, с постоянным тестированием работоспособности. Патчи MS от WannaCry, как показала практика, могут приводить к выходу серверных компонент из строя.

После первого запуска скрипта в домене в папке Logs появляются записи по каждому компьютеру об успешном отключении SMB 1 и файлы eventlog событий установки патчей. При повторном запуске скрипта в логах появляется информация о уже установленных на компьютере патчах.

Если остается ощущение что где то остались непропатченые компьютеры, то можно еще пройтись скриптом - сканером от RVision.

Запуск на автономных компьютерах

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

Из набора нужен только скрипт WannaCryDefenderLocal.bat и папка с дистрибутивами. Различия в скрипте от корпоративного только в том, что он сохраняет логи не на сетевую папку, а в свою корневую.
Для запуска на Win 10 папка с дистрибутивами не нужна вовсе, т.к. в данной реализации скрипт на Win 10 только отключает SMB 1.

Для облегчения использования скрипта пользователями сделана максимально простая инструкция: Инструкция по защите компьютера от атак вируса шифровальщика WannaCry

В конечном счете пользователю отправляется только ссылка на инструкцию, из которой уже он получает ссылку на скрипт.

Если речь идет о внешних компьютерах, подключающихся к корпоративной сети по VPN, то перед подключением пользователи предоставляют результаты работы скрипта (log файлы) как подтверждение защищенности своего компьютера от WannaCry.

Оригинальные патчи MS

Если ваша паранойя находится на правильном уровне то вы не будете использовать патчи, которые я разместил в комплекте с скриптами, а скачаете их с сайта MS. Сам бы так сделал. Вот тут есть подборка прямых ссылок. Обращаю внимание что патчи нужно переименовать по шаблону для правильной работы скрипта.

Скачать

Версия для доменной инфраструктуры (194 мб)
Версия для личных компьютеров пользователей (120 мб)
Версия без патчей (1 мб)

Буду рад если этот набор скриптов окажется полезен и убережет вас, ваши инфраструктуры и близких от технических потерь и плохого настроения.

Автор статьи: Николай Казанцев
Ссылка на первоисточник статьи: ИБ в СПб: Набор скриптов для защиты компьютеров от WannaCry
 

shestale

Ассоциация VN/VIP
Преподаватель
Сообщения
9,624
Симпатии
4,972
Баллы
663
#2
Попробовал батник из этого набора
который рекомендуется использовать для домашнего компа
В результате работы батника получил лог :Smile:
19.05.2017 19:03:52,62
----------
OS: "Microsoft Windows 7 Ultimate "
Action: SMB-V-2k8
[SC] OpenService: ошибка: 5:
Отказано в доступе.
[SC] OpenService: ошибка: 5:
Отказано в доступе.
[SC] OpenService: ошибка: 5:
Отказано в доступе.
Ошибка: Отказано в доступе.
Ошибка: Не удается найти указанный раздел или параметр в реестре.
Action: Patch7
 

shestale

Ассоциация VN/VIP
Преподаватель
Сообщения
9,624
Симпатии
4,972
Баллы
663
#4
Тьфу, точно запускал не от админа.
19.05.2017 21:33:46,86
----------
OS: "Microsoft Windows 7 Ultimate "
Action: SMB-V-2k8
[SC] ChangeServiceConfig: успех
[SC] ChangeServiceConfig: успех

SERVICE_NAME: mrxsmb10
TYPE : 2 FILE_SYSTEM_DRIVER
STATE : 1 STOPPED
WIN32_EXIT_CODE : 0 (0x0)
SERVICE_EXIT_CODE : 0 (0x0)
CHECKPOINT : 0x0
WAIT_HINT : 0x0
Операция успешно завершена.

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters
SMB1 REG_DWORD 0x0

Action: Patch7
 

SeeOn

Активный пользователь
Сообщения
345
Симпатии
67
Баллы
198
#6
Не лицензионным Виндовсам это поможет? Ибо обновления от Гейтса на не лицензии не ставятся.
 

regist

гоняюсь за туманом
Ассоциация VN/VIP
VIP
Разработчик
Сообщения
12,249
Симпатии
5,850
Баллы
918
#9
Ибо обновления от Гейтса на не лицензии не ставятся.
Бред.
Я был поставил один из патчей, винда отказалась включаться.
Тут другой вопрос, ЛС наверняка была не просто нелицензионная, а сборка от какого-то кулибина который вырезал там часть компонент. Работа такой сборки из без обновлений не гарантирована, а эти обновление некоторые такие сборки действительно валят (ибо пытаются обновить то, что из неё уже вырезано).
 

SeeOn

Активный пользователь
Сообщения
345
Симпатии
67
Баллы
198
#10
ЛС наверняка была не просто нелицензионная, а сборка от какого-то кулибина который вырезал там часть компонент
ОСь чистая с оригинального образа стоит. Так что не надо тут, сборки сам ненавижу!
 

regist

гоняюсь за туманом
Ассоциация VN/VIP
VIP
Разработчик
Сообщения
12,249
Симпатии
5,850
Баллы
918
#11
ОСь чистая с оригинального образа стоит.
Многократно проверено на таких ОС этот патч ставится без проблем. А вот, то что проблемы аналогичные вашей есть на некоторых сборках также проверено.
И при желание вы можете легко это проверить как экспериментально, так и просто распаковать обновление до отдельных файлов и убедиться, что никакой связи там с проверкой лицензии нету.
 

SeeOn

Активный пользователь
Сообщения
345
Симпатии
67
Баллы
198
#12
Многократно проверено на таких ОС этот патч ставится без проблем. А вот, то что проблемы аналогичные вашей есть на некоторых сборках также проверено.
И при желание вы можете легко это проверить как экспериментально, так и просто распаковать обновление до отдельных файлов и убедиться, что никакой связи там с проверкой лицензии нету.
Возможно проблема в другом. На этой машине отключено автоматическое обновление, и я не помню когда ОС обновлялась последний раз.
 

akok

Команда форума
Администратор
Сообщения
15,590
Симпатии
12,650
Баллы
2,203
#13
Возможно проблема в другом. На этой машине отключено автоматическое обновление, и я не помню когда ОС обновлялась последний раз.
Эта версия имеет право на жизнь, но давайте ка закругляться о варезе.
 
Статус
В этой теме нельзя размещать новые ответы.
Сверху Снизу