Предохраняемся от пети с мишей. Боремся с вирусами и инфраструктурой, или отключение SMB v1

SMBv1 является устаревшим протоколом, который подвергается атакам вирусов вымогателей, например, WannaCry. Рассмотрим, как отключить протокол SMBv1 в Windows и полностью его заблокировать.

SMBv1 это устаревший протокол обмена файлами, которому уже приблизительно 30 лет. В связи с чем может быть использоваться различными видами вирусов, как калитка, предоставляющая доступ к нашему компьютеру. Нашумевшим подтверждением этому является вирус вымогатель WannaCry, который заразил десятки тысяч операционных систем, зашифровал на них файлы и требовал оплату за расшифровку данных.

Проблемы можно было избежать, если бы протокол был выключен на компьютере. И все-таки, стоит его отключить. Несмотря на то, что Майкрософт выпустил патчи для устранения уязвимости даже для старых систем, неизвестно что через некоторое время не появится еще одна итерация вируса WannaCry, который использует дырявый протокол SMBv1 иным образом. Рассмотрим, как полностью отключить протокол в Windows XP, 7, 8, 8.1 и 10?

Выключение SMBv1 в Windows 7, Server 2008, Server 2008 R2

Откройте меню Пуск, а затем с помощью поисковой системы найдите программу PowerShell. В списке результатов поиска кликните на нее правой кнопкой мыши и выберите «запуск от имени администратора».

В окне PowerShell введите следующую команду для отключения SMBv1:

Set-ItemProperty -Path «HKLM:\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters» SMB2 -Type DWORD -Value 0 -Force

После выполнения команды перезапустите Windows. Таким образом можно блокировать проникновение вирусов полностью отключив поддержку smbv1.

Выключение SMBv1 в Windows 8 и выше

Зайдите в Панель управления, а затем в «Программы – Удаление Программ». Откроется список программ, установленных в системе. В левом меню кликните на кнопку «Включение или отключение компонентов Windows».

Отобразится окно, в котором у нас появляется возможность управлять отдельными функциями Windows. Здесь нужно найти SMBv1 и отключить его.

Поддержка общего доступа к файлам SMB1.0/CIFS

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

Появится индикатор хода выключения функции. Затем нажмите на кнопку «Перезагрузка», чтобы завершить отключение через перезапуск компьютера. После перезагрузки протокол будет полностью отключен.

Дополнительная блокировка портов с помощью Брандмауэра

Если хотите обезопасить себя еще больше хорошей идеей является блокирование портов, которые использует SMBv1. Это 445 TCP и 137-139 UDP. Их можно легко отключить с помощью встроенного в систему Брандмауэра.

С помощью системного поиска в меню Пуск найдите инструмент «Брандмауэр Windows». В окне брандмауэра кликните правой кнопкой мыши на поле «Правила для входящих подключений» и выберите пункт «Новое правило».

Созданное правило будет блокировать порт 445. Теперь создайте правило для блокировки UDP-портов в диапазоне 137-139. Все сделайте точно также только тип укажите UDP, а поле «Определенные локальные порты» введите 137-139.

Таким образом, созданы два правила, которые блокируют соединение по портам и тем самым вирусные атаки, проникающие через этот протокол.

Последние масштабные вирусные атаки распространялись с использованием дыр и недостатков старого протокола SMB1. По одной из несущественных причин, операционная система Windows по-прежнему разрешает его работу по умолчанию. Эта старая версия протокола служит для совместного использования файлов в локальной сети. Его более новые версии 2 и 3 стали более защищенными и их стоит оставить включенными. Так, как вы используете новую операционную систему под номером 10 или предыдущую – 8 или даже уже устаревшую – 7, вы должны отключить этот протокол на вашем ПК.

Он включен только потому, что ещё некоторыми пользователями используются старые приложения, которые не были вовремя обновлены для работы с SMB2 или SMB3. Корпорация Майкрософт составила их список. Его, при необходимости, найдите и просмотрите в Интернете.

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

Вы готовы к внесению изменений? Тогда давайте продолжим.

SMB1

Откройте Панель управления, где перейдите в раздел “Программы” и выберите подраздел “Включение / отключение компонентов Windows”.

В списке найдите опцию “Поддержка общего доступа к файлам SMB 1.0/CIFS”, снимите с него отметку и нажмите кнопку “ОК”.

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

ДЛЯ WINDOWS 7

Здесь вам поможет редактирование системного реестра. Он является мощным инструментом системы и в случае внесения в него неправильных данных, может привести к нестабильной работе ОС. Используйте его с осторожностью, перед этим обязательно создайте резервную копию для отката.

Откройте редактор, для чего нажмите сочетание клавиш Win + R на клавиатуре и набрав “regedit” в поле для ввода. Далее пройдите по следующему пути:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters

создайте новый 32-битный параметр DWORD и присвойте ему имя “SMB1” со значением “0”. Перезагрузите систему.

Внимание! Эти способы действуют для отключения протокола только на одном ПК, но не во всей сети. Обратитесь к официальной документации Microsoft за интересующей вас информацией.

По-умолчанию в Windows 10 и в Windows Server 2016 все-еще включена поддержка SMB 1.0. В большинстве случаев он требуется только для обеспечения работы устаревших систем: , Windows Server 2003 и старше. В том случае, если в вашей сети не осталось таких клиентов, в новых версиях Windows желательно отключить протокол SMB 1.x, либо полностью удалить драйвер. Тем самым вы оградитесь от большого количества уязвимостей, которые свойственны этому устаревшему протоколу (о чем лишний раз свидетельствует ) , и все клиенты при доступе к SMB шарам будут использовать новые более производительные, безопасные и версии протокола SMB.

В одной из предыдущих статей мы приводили на стороне клиента и сервера. Согласно таблице, старые версии клиентов (XP, Server 2003 и некоторые устаревшие *nix клиенты) могут использовать для доступа к файловым ресурсам только протокол SMB 1.0. Если таких клиентов в сети не осталось, можно полностью отключить SMB 1.0 на стороне файловых серверов (в том числе контролерах домена AD) и клиентских станциях.

Аудит доступа к файловому серверу по SMB v1.0

Перед отключением и полным удалением драйвера SMB 1.0.на стороне файлового SMB сервера желательно убедится, что в сети не осталось устаревших клиентов, подключающихся к нему по SMB v1.0. Для этого, включим аудит доступа к файловому серверу по этому протоколу с помощью команды PowerShell:

Set-SmbServerConfiguration –AuditSmb1Access $true

Через некоторое время изучите события в журнале Applications and Services -> Microsoft -> Windows -> SMBServer -> Audi t на предмет доступа клиентов с помощью протокола SMB1.

Совет . Список событий из данного журнала можно вывести командой:

Get-WinEvent -LogName Microsoft-Windows-SMBServer/Audit

В нашем примере в журнале зафиксировался доступ с клиента 192.168.1.10 по протоколу SMB 1. Об этом свидетельствуют события с EventID 3000 от источника SMBServer и описанием:

SMB1 access
Client Address: 192.168.1.10
Guidance:
This event indicates that a client attempted to access the server using SMB1. To stop auditing SMB1 access, use the Windows PowerShell cmdlet Set-SmbServerConfiguration.

В данном случае, мы проигнорируем эту информацию, но нужно учитывать тот факт, что в дальнейшем данный клиент не сможет подключаться к данному SMB серверу.

Отключение SMB 1.0 на стороне сервера

Протокол SMB 1.0 может быть отключен как на стороне клиента, так и на стороне сервера. На стороне сервера протокол SMB 1.0 обеспечивает доступ к сетевым папкам SMB (файловым шарам) по сети, а на стороне клиента – нужен для подключения к таким ресурсам.

С помощью следующей команды PowerShell проверим включен ли протокол SMB1 на стороне сервера:

Как вы видите, значение переменной EnableSMB1Protocol = True.

Итак, отключим поддержку данного протокола:

Set-SmbServerConfiguration -EnableSMB1Protocol $false -Force

И с помощью командлета Get-SmbServerConfiguration убедимся, что протокол SMB1 теперь выключен.

Чтобы полностью удалить драйвер, обрабатывающий доступ клиентов по протоколу SMB v1, выполните следующую команду:

Disable-WindowsOptionalFeature -Online -FeatureName SMB1Protocol -Remove

Осталось перезагрузить систему и убедиться, что поддержка протокола SMB1 полностью отключена.

Get-WindowsOptionalFeature –Online -FeatureName SMB1Protocol

Отключение SMB 1.0 на стороне клиента

Отключив SMB 1.0 на стороне сервера, мы добились того, что клиенты не смогут подключаться к нему по этому протоколу. Однако, они могут использовать устаревший протокол для доступа к сторонним (в том числе внешним) ресурсам. Чтобы отключить поддержку SMB v1 на стороне клиента, выполните команды:

sc.exe config lanmanworkstation depend= bowser/mrxsmb20/nsi
sc.exe config mrxsmb10 start= disabled

Итак, отключив поддержку устаревшего SMB 1.0 на стороне клиентов и серверов вы полостью защитите свою сеть от всех известных и пока не найденных уязвимостей в нем. А уязвимости в Microsoft Server Message Block 1.0 находят довольно регулярно. Последняя существенная уязвимость в SMBv1, позволяющая злоумышленнику удаленно выполнить произвольный код, была исправлена в марте 2017 года.