Отключение smb v1 или как защититься от wannacrypt

Обновлено 25.11.2022

протокол smb v1

Добрый день уважаемые читатели, в прошлый раз я вам подробно рассказал, как защититься от шифровальщика, если он уже попал к вам на компьютер, сегодня же я хочу рассмотреть вопрос, как не дать ему к вам попасть из вне, мы разберем отключение smb v1 или как защититься от wannacrypt и вируса petya. Уверен, что описанный тут материал окажется для вас весьма полезным и актуальным, так как разновидностей данной заразы, будет еще очень много в будущем.

Что такое протокол SMB v1

Прежде, чем начать перекрывать кислород для вирусов шифровальщиков, я хочу вас познакомить с источником, через который они лезут и называется он протокол Server Message Block (SMB).

Server Message Block - это сетевой протокол, работающий на прикладном уровне модели OSI, для доступа к сетевым ресурсам, принтерам, папкам, для взаимодействия процессов. Наверняка многие из вас знают, такое понятие как UNC пути, вида \\server\share, когда вы обращаетесь к сетевой папке или принтеру, так например, сервер печати Windows, расшаривает их.

Ранее SMB протокол работал и NetBIOS прослойкой, где использовал порты UDP 137-138 и TCP 137, 139, но это было до появления 2000-го Windows, где порт поменяли на 445, он так же применяется и для входа компьютеров в домен Active Directory. Самая первая версию данного протокола, имела название "Common Internet File System" (CIFS ), ее придумали еще в далеких 90-х, я тогда еще пешком под стол ходил. Протокол долго не развивался и приобрел вторую версию, лишь в 2006 году с выходом провальной Windows Vista. Windows 8 уже принесла нам SMB 3.0.

Каждая новая версия реализации протокола, привносила новые возможности, и это логично, необходимо было увеличивать скорость передачи данных, так как локальные сети, уже превращались в гигабитные и очень часто стали появляться твердотельные накопители. Новые версии по старинке, поддерживали предыдущие, для обратной совместимости операционных систем и устройств, это и является Ахиллесовой пятой у него, через который лезут wannacrypt и petya.

Ниже вы можете посмотреть, эволюцию протокола SMB v1 с выходом новых операционных систем.

описание протокола smb v1

Для чего отключать smb v1

Расскажу небольшую предысторию о появлении вирусов wannacrypt и petya. В начале 2017 года, одна хакерская команда, смогла взломать службу АНБ и похитить у нее данные, о всевозможных лазейках в компьютерных системах, благодаря которым можно получать удаленный доступ к нужному компьютеру и следить за жертвой, получая о ней все данные. Среди этих дыр безопасности, были лазейки для:

Хакеры попытались продать все сворованное, но в итоге покупателей не нашли, не долго думая они выложили все это в сеть, тут и понеслось, другие хакеры и группы, быстро все это дело понахватали и создали свои вирусы, их очень много, но вот за май и июнь 2017 года, мир выучил названия двух, petya и wannacry (wannacrypt). Оба они используют старую уязвимость в протоколе smb v1, являющийся частью операционных систем Windos XP, вплоть до Windows 10, но у десятки все лучше, там по умолчанию работает версия SMB 3.1.1, поэтому она пока спит спокойно.

Вот посмотрите как выглядит экран блокировки после вируса petya. У пострадавшего компьютера просят 300 долларов в биткоинах, ни в коем случае не отправляйте деньги, вы ничего не получите, так как изначально данная зараза не включала в себя разблокировку.

экран блокировки petya

А вот как выглядит экран после заражения wannacrypt. Как и в случае с Петей, все данные зашифрованы и уже являются цифровым мусором.

экран wannacrypt

Что нужно чтобы не стать жертвой шифровальщиков

Давайте я приведу небольшой чек лист, который вам поможет сделать вашу систему более защищенной:

  1. Своевременно устанавливайте обновления в системе, так как это основная проблема большинства пораженных компьютеров
  2. Не устанавливайте не проверенный софт
  3. Посещайте только проверенные веб ресурсы
  4. Закройте лишние порты на фаэрволе
  5. Не открывайте электронные письма от неизвестных людей.

Как проверить можно ли заразить ваш компьютер

Как я и писал выше, жертвами становятся те компьютеры у кого работает протокол smb v1, который требует отключения. Ниже я вам предоставлю утилиту, с помощью которой вы сможете проверить удовлетворяет ли ваш или другой компьютер в сети, требованиям по безопасности.

KB обновления защищающие от wannacrypt  и Petya

Вот подробный список KB для разных операционных систем Windows:

Windows XP

  • https://blogs.technet.microsoft.com/msrc/2017/05/12/customer-guidance-for-wannacrypt-attacks/

Windows Vista и Windows Server 2008

  • KB4012598 - 32 бита - http://catalog.update.microsoft.com/v7/site/Search.aspx?q=KB4012598
  • KB4012598 - 64 бита - http://catalog.update.microsoft.com/v7/site/Search.aspx?q=KB4012598

Windows 7

  • KB4012212 - 32 бита - http://catalog.update.microsoft.com/v7/site/Search.aspx?q=KB4012212
  • KB4012215 - 32 бита - http://catalog.update.microsoft.com/v7/site/Search.aspx?q=KB4012215
  • KB4012212 - 64 бита - http://catalog.update.microsoft.com/v7/site/Search.aspx?q=KB4012212
  • KB4012215 - 64 бита - http://catalog.update.microsoft.com/v7/site/Search.aspx?q=KB4012215

Windows Server 2008 R2

  • KB4012212 - http://catalog.update.microsoft.com/v7/site/Search.aspx?q=KB4012212
  • KB4012215 - http://catalog.update.microsoft.com/v7/site/Search.aspx?q=KB4012215

Windows 8.1

  • KB4012213 - 32 бита - http://catalog.update.microsoft.com/v7/site/Search.aspx?q=KB4012213
  • KB4012216 - 32 бита - http://catalog.update.microsoft.com/v7/site/Search.aspx?q=KB4012216
  • KB4012213 - 64 бита - http://catalog.update.microsoft.com/v7/site/Search.aspx?q=KB4012213
  • KB4012216 - 64 бита - http://catalog.update.microsoft.com/v7/site/Search.aspx?q=KB4012216

Windows Server 2012 R2

  • KB4012214 - http://catalog.update.microsoft.com/v7/site/Search.aspx?q=KB4012214
  • KB4012217 - http://catalog.update.microsoft.com/v7/site/Search.aspx?q=KB4012217
  • KB4012213 - http://catalog.update.microsoft.com/v7/site/Search.aspx?q=KB4012213
  • KB4012216 - http://catalog.update.microsoft.com/v7/site/Search.aspx?q=KB4012216

Windows 10

  • KB4012606 -32 бита - http://catalog.update.microsoft.com/v7/site/Search.aspx?q=KB4012606
  • KB4012606 -64 бита - http://catalog.update.microsoft.com/v7/site/Search.aspx?q=KB4012606
  • Windows 10 1511 - KB4013198 - 32 бита - http://catalog.update.microsoft.com/v7/site/Search.aspx?q=KB4013198
  • Windows 10 1511 - KB4013198 - 64 бита - http://catalog.update.microsoft.com/v7/site/Search.aspx?q=KB4013198
  • Windows 10 1607 - KB4013429 - 32 бита - http://catalog.update.microsoft.com/v7/site/Search.aspx?q=KB4013429
  • Windows 10 1607 - KB4013429 - 64 бита - http://catalog.update.microsoft.com/v7/site/Search.aspx?q=KB4013429

Windows Server 2016

  • KB4013429 - http://catalog.update.microsoft.com/v7/site/Search.aspx?q=KB4013429

Теперь зная нужные KB мы легко можем проверить, где не хватает обновлений и включен протокол smb v1. Ниже я вам предоставлю два метода поиска бреши.

  • Утилита SecurityChecker.v2
  • Power shell

Утилита SecurityChecker.v2

Данная утилита может показать, где включен smb v1 и 2.0, а так же проверить компьютер или компьютеры локальной сети на наличие нужного обновления.

В открывшейся программе, вам необходимо нажать кнопку "Add" и добавить компьютер или компьютеры, требующие проверки. Через кнопку KB вы можете подгрузить файл находящийся в корне утилиты с нужными KB для проверки, после чего нажимаете "Check". По результату проверки, вы увидите, стоит ли вам выполнить отключение smb v1 или же нет. На моем примере, вы видите, что и первая и вторая версии включены.

Проверка SecurityChecker.v2

Проверить протокол smb v1 можно и через powershell. Открываем его от имени администратора и вводим такую команду:

get-hotfix -ComputerName имя вашего компьютера -Id нужная kb

powershell проверка smb v1

Если у вас есть UNC соединения к вашему компьютеру, то вы можете посмотреть их версии командой

Get-SmbConnection

Get-SmbConnection

Как отключить smb v1

Я вам хочу рассказать о методах деактивирующих протокол SMB старой версии:

  • Через компоненты Windows
  • Через PowerShell
  • Через реестр Windows
  • Через групповую политику
  • Оставить и установить обновления
  • Через команду sc.exe config

Отключаем smb v1 через компоненты системы

Данный метод подойдет для любой не серверной версии Windows, начиная с Wista и заканчивая Windows 10.Вам необходимо открыть панель управления Windows. Нажимаете одновременно Win+R и в открывшемся окне вводите control panel, это такой универсальный метод, отработает в любой винде.

универсальный метод открыть панель управления

Находим пункт "Программы и компоненты"

программы и компоненты

Нажимаем "Включение и отключение компонентов Windows" именно тут, мы уберем доступ для wannacrypt  и petya

wannacrypt защита

Снимаем галку "Поддержка общего доступа к файлам SMB 1.0/CIFS"

выключаем smb v1 CIFS

Начнется удаление компонента.

как защитить компьютер от вируса petya

Все, теперь потребуется перезагрузка.

удалили smb v1 CIFS

Теперь если со старого компьютера, по типу Windpws XP вы попытаетесь попасть на UNC шару, вы увидите ошибку

сетевое имя более не доступно

Если же вам необходимо сохранить его функциональность и быть защищенным, то устанавливаем нужные KB.

Установка KB против wannacrypt и petya

Выше вы найдете список исправлений для протокола smb v1, скачиваете их из центра обновлений.Это будут файлы формата msu.

скачивание обновлений для защиты от wannacrypt

Производите установку KB.

установка KB4012212

Вот так выглядит процесс установки KB.

процесс установки KB

Вам потребуется произвести перезагрузку системы. теперь, когда все обновления у вас установлены вам не страшны вирусы wannacrypt  и petya.

сообщение о перезагрузке

Отключаем smb v1 через powershell

Данный метод подойдет для серверной операционной системы Windows Server 2012 R2 и Windos 8.1, выполните вот такую команду:

Set-SmbServerConfiguration -EnableSMB1Protocol $false

После ее выполнения smb v1 будет выключен.

powershell выключение smb v1

Для отключения SMB версии 2 и 3 выполните:

Set-SmbServerConfiguration -EnableSMB2Protocol $false

Если захотите включить, то поменяйте $false на $true.

Теперь для Windows 7 и Windows 2008 R2, выполните следующее:

  • Чтобы отключить протокол SMB версии 1 на SMB-сервере, выполните следующий командлет:
    Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters" SMB1 -Type DWORD -Value 0 -Force
  • Чтобы отключить протоколы SMB версии 2 и 3 на SMB-сервере, выполните следующий командлет:
    Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters" SMB2 -Type DWORD -Value 0 -Force
  • Чтобы включить протокол SMB версии 1 на SMB-сервере, выполните следующий командлет:
    Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters" SMB1 -Type DWORD -Value 1 -Force
  • Чтобы включить протоколы SMB версии 2 и 3 на SMB-сервере, выполните следующий командлет:
    Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters" SMB2 -Type DWORD -Value 1 -Force

Отключаем smb v1 через реестр

Перед тем как править реестр Windows я советую вам сделать резервную копию, так на всякий случай. Открываем реестр, делается это через нажатие кнопок Win+R и ввода команды regedit.

открываем реестр Windows

Находим ветку:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\ Services\LanmanServer\Parameters

Тут будет параметр SMB1 , по умолчанию там стоит 1, значит включено, меняем его на 0 и закрываем, после перезагрузки все будет выключено. Wannacrypt вас теперь не побеспокоит.

отключаем smb v1 через реестр

Если нужно отключить SMB2, то находим ветку и меняем там параметр SMB2, так же на ноль.

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\ Services\LanmanServer\Parameters

Отключить через DISM

Откройте командную стоку от имени администратора и введите команду:

dism /online /norestart /disable-feature /featurename:SMB1Protocol

Как видите еще один метод защититься от wannacrypt.

как защититься от wannacrypt

Отключение через sc.exe config

Начиная с Windows 7 вы можете выполнить внутри системы вот такие команды через cmd запущенного от имени администратора:

  • Чтобы отключить протокол SMB версии 1 на SMB-клиенте, выполните следующие команды:
    sc.exe config lanmanworkstation depend= bowser/mrxsmb20/nsi
    sc.exe config mrxsmb10 start= disabled
  • Чтобы включить протокол SMB версии 1 на SMB-клиенте, выполните следующие команды:
    sc.exe config lanmanworkstation depend= bowser/mrxsmb10/mrxsmb20/nsi 
    sc.exe config mrxsmb10 start= auto
  • Чтобы отключить протоколы SMB версии 2 и 3 на SMB-клиенте, выполните следующие команды:
    sc.exe config lanmanworkstation depend= bowser/mrxsmb10/nsi 
    sc.exe config mrxsmb20 start= disabled
  • Чтобы включить протоколы SMB версии 2 и 3 на SMB-клиенте, выполните следующие команды:
    sc.exe config lanmanworkstation depend= bowser/mrxsmb10/mrxsmb20/nsi 
    sc.exe config mrxsmb20 start= auto

sc.exe config

Как защититься от wannacrypt в Active Directory

Когда речь идет о домене Active Directory, то у системного администратора сразу это ассоциируется с групповыми политиками. Давайте посмотрим как GPO поможет нам в массовом отключении smb v1. По сути групповая политика это изменение ключей реестра на клиентах. Открываем редактор и создаем новую политику, прилинковываем ее к нужному организационному подразделению и изменяем.

Политика для серверных ОС

Нас будет интересовать объект "Конфигурация компьютера - Настройка - Конфигурация Windows - Реестр", создаем элемент реестра.

Как защититься от wannacrypt в Active Directory

  • Действие: Создать
  • Куст: HKEY_LOCAL_MACHINE
  • Путь к разделу: SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters
  • Имя параметра: SMB1
  • Тип значения: REG_DWORD.
  • Значение: 0

создаем элемент реестра

Политика для клиентских ОС

Для отключения поддержки SMB v1 на клиентах понадобится изменить значение двух параметров. Сначала отключим службу протокола SMB v1:

  • путь: HKLM:\SYSTEM\CurrentControlSet\services\mrxsmb10;
  • параметр: REG_DWORD c именем Start;
  • значение: 4.

отключение SMB на клиенте

Потом поправим зависимость службы LanmanWorkstation, чтоб она не зависела от SMB v1:

отключение SMB на клиенте-2

  • путь: HKLM:\SYSTEM\CurrentControlSet\Services\LanmanWorkstation;
  • параметр: REG_MULTI_SZ с именем DependOnService;
  • значение: три строки – Bowser, MRxSmb20 и NSI.

Клиентским компьютерам осталось только перезагрузиться и все будет отключено

Учтите, что выключив smb v1, вы защититесь конечно от wannacrypt  и petya, но будьте осторожны, если у вас в локальной сети остались старые компьютеры, они не смогут связаться с контроллерами домена и не смогут пройти аутентификацию, так как не умеют работать по SMB 2

Автор - Сёмин Иван

15 Responses to Отключение smb v1 или как защититься от wannacrypt

  1. Владислав:

    Здравствуйте Иван
    При выполнении рекомендаций по отключению SMB V1 и внесении изменений в парамтры:
    путь: HKLM:\SYSTEM\CurrentControlSet\Services\LanmanWorkstation;
    параметр: REG_MULTI_SZ с именем DependOnService;
    значение: три строки – Bowser, MRxSmb20 и NSI.
    и
    Путь к разделу: SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters
    Имя параметра: SMB1
    Тип значения: REG_DWORD.
    Значение: 0
    Программа SecurityChecker уведомляет об успешном отключении SMB V1, но если изменить параметр по отключению mrxsmb10 тогда пропадает доступность к шарам и обзору сети как между клиентами в рабочей группе например между Window 7, так и в домене между Win7 и Win2008R2.
    Есть ли необходимость в изменении данного параметра или есть военная хитрость как это исправить???
    Заранее благодарен за совет!

  2. Иван Семин:

    А у вас контроллеры на какой ОС крутятся? Windows 7 по умолчанию использует SMB 2 и первый ни как не должен ее беспокоить и еще вопрос файловые шары не чем сделаны?

  3. Владислав:

    1 Стенд две машины под Win7X64
    Эксперимент номер 1 с расшареными папками:
    Применены параметры на обоих
    HKLM:\SYSTEM\CurrentControlSet\Services\LanmanWorkstation
    DependOnService — Bowser, MRxSmb20 и NSI
    и
    SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters
    SMB1 — REG_DWORD — 0
    Видимость ПК в обозревателе есть, доступ к шарам есть, SecurityChecker информирует о отключенном SMB V1

    Эксперимент номер 2:
    Применены параметры на обоих
    HKLM:\SYSTEM\CurrentControlSet\Services\LanmanWorkstation
    DependOnService — Bowser, MRxSmb20 и NSI
    HKLM:\SYSTEM\CurrentControlSet\services\mrxsmb10
    REG_DWORD — Start — 4
    Пк в обозревателе не доступны, доступ к шарам нет. Служба рабочая станция отключена, зависимая брауер ПК не работает по причине зависимости от первой. SecurityChecker информирует о включенном SMB V1

    2 Стенд контроллер Win2008R2, клиенты Win7, папки расшаренны на контроллере с выданными правами на доступ:
    Сервер применено
    SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters
    SMB1 — REG_DWORD — 0
    Клиент применено
    HKLM:\SYSTEM\CurrentControlSet\Services\LanmanWorkstation
    DependOnService — Bowser, MRxSmb20 и NSI
    есть доступ к шарам
    В случае применения параметра на клиентах доступ к шарам отваливается
    HKLM:\SYSTEM\CurrentControlSet\services\mrxsmb10
    REG_DWORD — Start — 4.

    Есть ли смысл в отдельном применении изменений разделяя на серверные ос и клиентские или лучше одновременно применить как на сервере так и на клиенте?
    HKLM:\SYSTEM\CurrentControlSet\Services\LanmanWorkstation
    SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters

    Благодарю за помощь!

  4. Иван Семин:

    Я бы разделил политики, у меня лично они разделены в AD по OU. Вообще W7 и выше, все должно использовать smb2.0 и отключение первой версии не должно влиять, а уровни леса и домена у вас какие?

  5. Владислав:

    Уровень леса и домена выставлены на максимум Win2008R2

  6. Владислав:

    Проблемы начинаются при применении только этого параметра
    HKLM:\SYSTEM\CurrentControlSet\services\mrxsmb10
    REG_DWORD — Start — 4
    Без него все работает хорошо

  7. Иван Семин:

    Попробую на выходных создать стенд с 7 и 2008 R2, у меня просто в парке уже все на 10 и 2012 R2

  8. тоже Иван:

    Start = 4 — это отключена служба.
    Ставь =2 — и все что выше xp будет работать

  9. Иван Семин:

    Спасибо, за свой опыт.

  10. Владислав:

    Доброй ночи коллеги! Спасибо за совет и помощь!

  11. Иван Семин:

    Всегда рады стараться.

  12. Сергей:

    Ребят, ни один из способов не работает. То в реестре нет SMB, то в ком строке пишет ошибка 1059. Что делать?

  13. Андрей:

    Вообще странно при отключений в групповой политики
    путь: HKLM:\SYSTEM\CurrentControlSet\services\mrxsmb10;
    параметр: REG_DWORD c именем Start;
    значение: 4.
    И
    путь: HKLM:\SYSTEM\CurrentControlSet\Services\LanmanWorkstation;
    параметр: REG_MULTI_SZ с именем DependOnService;
    значение: три строки – Bowser, MRxSmb20 и NSI.

    Ничего не происходит то есть на машинах которые введены в домен программа показывает smb1 on.

    Чуть выше у вас же написано

    По сути групповая политика это изменение ключей реестра на клиентах. Открываем редактор и создаем новую политику, прилинковываем ее к нужному организационному подразделению и изменяем.

    из ходя из этого я применил
    Действие: Создать
    Куст: HKEY_LOCAL_MACHINE
    Путь к разделу: SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters
    Имя параметра: SMB1
    Тип значения: REG_DWORD.
    Значение: 0

    Программа показала smb1 off

  14. Денис:

    Добрый день! Спасибо за материал, но можно немного растолковать что к чему? Я недопонял (
    1) Если на ПК или сервере стоит указанное обновление, но утилита показывает что включен и 1 и 2 версия SMB, этот ПК уязвим или нет? Или все таки лучше отключить 1-ю версию

    2) Когда мы на клиентском ПК отключаем SMB 1, как это повлияет на этот ПК? И Что будет если его отключить на серверном варианте. К примеру на файл сервере? Все кто обращается на файл сервер не получат туда доступ? Так же если отключить на контроллере домена?

    Спасибо!

  15. Иван Семин:

    Добрый день! Если у вас нет старых версий систем в локальной сети, то лучше вообще отказаться от данного протокола, Microsoft его уже не будет допиливать и поддерживать. Если обновления установили, то все ок, до следующей дыры. Если отключите на файловом сервере, то клиенты у которых нет версии 3, а только 1 и 2 не смогут обратиться по \\ пути.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *