Отключить smb1 windows 2003

Сетевой протокол SMB (Server Message Block) используется для предоставления совместного удаленного доступа к файлам, принтерам и другим устройствам через порт TCP 445. В этой статье мы рассмотрим: какие версии (диалекты) протокола SMB доступны в различных версиях Windows (и как они соотносятся с версиями samba в Linux); как определить версию SMB на вашем компьютере; и как включить/отключить клиент и сервер SMBv1, SMBv2 и SMBv3.

Содержание:

  • Версии протокола SMB в Windows
  • Как проверить поддерживаемые версии SMB в Windows?
  • Вывести используемые версии SMB с помощью Get-SMBConnection
  • Об опасности использования SMBv1
  • Включение и отключение SMBv1, SMBv2 и SMBv3 в Windows

Версии протокола SMB в Windows

Есть несколько версии протокола SMB (диалектов), которые последовательно появлялись в новых версиях Windows:

Для реализации протокола SMB в Linux/Unix системах используется samba. В скобках мы указали в каких версиях samba поддерживается каждый диалект SMB.

  • CIFS — Windows NT 4.0;
  • SMB 1.0 — Windows 2000;
  • SMB 2.0 — Windows Server 2008 и Windows Vista SP1 (поддерживается в Samba 3.6);
  • SMB 2.1 — Windows Server 2008 R2 и Windows 7 (поддерживается в Samba 4.0);
  • SMB 3.0 — Windows Server 2012 и Windows 8 (поддерживается в Samba 4.2);
  • SMB 3.02 — Windows Server 2012 R2 и Windows 8. 1 (не поддерживается в Samba);
  • SMB 3.1.1 – Windows Server 2016 и Windows 10 (не поддерживается в Samba).

Начиная с версии Samba 4.14, по умолчанию используется SMB2.1.

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

Ниже представлена сводная таблица, по которой можно определить версию протокола SMB, которая выбирается при взаимодействии разных версий Windows:

Операционная система Win 10, Server 2016 Windows 8.1,
Server 2012 R2
Windows 8,
Server 2012
Windows 7,
Server 2008 R2
Windows Vista,
Server 2008
Windows XP, Server 2003 и ниже
Windows 10 ,

Windows Server 2016

SMB 3.1.1 SMB 3.02 SMB 3.0 SMB 2.1 SMB 2.0 SMB 1.0
Windows 8.1 ,
Server 2012 R2
SMB 3.02 SMB 3.02 SMB 3.0 SMB 2.1 SMB 2.0 SMB 1.0
Windows 8 ,
Server 2012
SMB 3.0 SMB 3.0 SMB 3.0 SMB 2.1 SMB 2.0 SMB 1.0
Windows 7,
Server 2008 R2
SMB 2.1 SMB 2.1 SMB 2.1 SMB 2.1 SMB 2.0 SMB 1.0
Windows Vista,
Server 2008
SMB 2.0 SMB 2.0 SMB 2.0 SMB 2.0 SMB 2.0 SMB 1.0
Windows XP, 2003 и ниже SMB 1.0 SMB 1.0 SMB 1.0 SMB 1.0 SMB 1.0 SMB 1.0

К примеру, при подключении клиентского компьютера с Windows 8.1 к файловому серверу с Windows Server 2016 будет использоваться протокол SMB 3.0.2.

Согласно таблице Windows XP, Windows Server 2003 для доступа к общим файлам и папкам на сервере могут использовать только SMB 1.0, который в новых версиях Windows Server (2012 R2 / 2016) может быть отключен. Таким образом, если в вашей инфраструктуре одновременно используются компьютеры с Windows XP (снятой с поддержки), Windows Server 2003/R2 и сервера с Windows Server 2012 R2/2016/2019, устаревшие клиенты не смогут получить доступ к файлам и папкам на файловом сервере с новой ОС.

Если Windows Server 2016/2012 R2 с отключенным SMB v1.0 используется в качестве контроллера домена, значить клиенты на Windows XP/Server 2003 не смогут получить доступ к каталогам SYSVOL и NETLOGON на контроллерах домена и авторизоваться в AD.

На старых клиентах при попытке подключиться к ресурсу на файловом сервере с отключенным SMB v1 появляется ошибка:

The specified network name is no longer available

Как проверить поддерживаемые версии SMB в Windows?

Рассмотрим, как определить, какие версии протокола SMB поддерживаются на вашем компьютере Windows.

В Windows 10, 8.1 и Windows Server 2019/2016/2012R2 вы можете проверить состояние различных диалектов SMB протокола с помощью PowerShell:

Get-SmbServerConfiguration | select EnableSMB1Protocol,EnableSMB2Protocol

Get-SmbServerConfiguration | select EnableSMB1Protocol,EnableSMB2Protocol

Данная команда вернула, что протокол SMB1 отключен (
EnableSMB1Protocol=False
), а протоколы SMB2 и SMB3 включены (
EnableSMB1Protocol=True
).

Обратите внимание, что протоколы SMBv3 и SMBv2 тесно связаны между собой. Нельзя отключить или включить отдельно SMBv3 или SMBv2. Они всегда включаются/отключаются только совместно, т.к. используют один стек.

В Windows 7, Vista, Windows Server 2008 R2/2008:

Get-Item HKLM:\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters | ForEach-Object {Get-ItemProperty $_.pspath}

Если в данной ветке реестра нет параметров с именами SMB1 или SMB2, значить протоколы SMB1 и SMB2 по умолчанию включены.

проверить какие версии smb включены в windows

Также в этих версиях Windows вы можете проверить, какие диалекты SMB разрешено использовать в качестве клиентов с помощью команд:

sc.exe query mrxsmb10

SERVICE_NAME: mrxsmb10
TYPE : 2 FILE_SYSTEM_DRIVER
STATE : 4 RUNNING
(STOPPABLE, NOT_PAUSABLE, IGNORES_SHUTDOWN)
WIN32_EXIT_CODE : 0 (0x0)
SERVICE_EXIT_CODE : 0 (0x0)
CHECKPOINT : 0x0
WAIT_HINT : 0x0

sc.exe query mrxsmb20

SERVICE_NAME: mrxsmb20
TYPE : 2 FILE_SYSTEM_DRIVER
STATE : 4 RUNNING
(STOPPABLE, NOT_PAUSABLE, IGNORES_SHUTDOWN)
WIN32_EXIT_CODE : 0 (0x0)
SERVICE_EXIT_CODE : 0 (0x0)
CHECKPOINT : 0x0
WAIT_HINT : 0x0

В обоих случаях службы запущены (
STATE=4 Running
). Значит Windows может подключаться как к SMBv1, так и к SMBv2 серверам.

Вывести используемые версии SMB с помощью Get-SMBConnection

Как мы говорили раньше, компьютеры при взаимодействии по протоколу SMB используют максимальную версию, поддерживаемую как клиентом, так и сервером. Для определения версии SMB, используемой для доступа к удаленному компьютеру можно использовать командлет PowerShell
Get-SMBConnection
:

Get-SMBConnection вывести в powershell версии smb, исопльзуемые для подключения

Версия SMB, используемая для подключения к удаленному серверу (ServerName) указана в столбце Dialect.

Можно вывести информацию о версиях SMB, используемых для доступа к конкретному серверу:

Get-SmbConnection -ServerName servername

Если нужно отобразить, используется ли SMB шифрование (появилось в SMB 3.0), выполните:

Get-SmbConnection | ft ServerName,ShareName,Dialect,Encrypted,UserName

В Linux вывести список SMB подключения и используемые диалекты в samba можно командой:

$ sudo smbstatus

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

Get-SmbSession | Select-Object -ExpandProperty Dialect | Sort-Object -Unique

Get-SmbSession Получить количество клиентов, использующих разные версии SMB

В нашем примере имеется 825 клиентов, подключенных к серверу с помощью SMB 2.1 (Windows 7/Windows Server 2008 R2) и 12 клиентов SMB 3.02.

С помощью PowerShell можно включить аудит версий SMB, используемых для подключения:

Set-SmbServerConfiguration –AuditSmb1Access $true

События подключения затем можно извлечь из журналов Event Viewer с помощью PowerShell:

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

Об опасности использования SMBv1

Последние несколько лет Microsoft из соображений безопасности планомерно отключает устаревший протокол SMB 1.0. Связано это с большим количеством критических уязвимостей в этом протоколе (вспомните историю с эпидемиями вирусов-шифровальщиков wannacrypt и petya, которые использовали уязвимость именно в протоколе SMBv1). Microsoft и другие IT компании настоятельно рекомендуют отказаться от его использования.

Однако отключение SMBv1 может вызвать проблемы с доступом к общий файлам и папкам на новых версиях Windows 10 (Windows Server 2016/2019) с устаревших версий клиентов (Windows XP, Server 2003), сторонних ОС (Mac OSX 10.8 Mountain Lion, Snow Leopard, Mavericks, старые версии Linux), различных старых NAS устройствах.

Если в вашей сети не осталось legacy устройств с поддержкой только SMBv1, обязательно отключайте эту версию диалекта в Windows.

В том случае, если в вашей сети остались клиенты с Windows XP, Windows Server 2003 или другие устройства, которые поддерживают только SMBv1, их нужно как можно скорее обновить или тщательно изолировать.

Включение и отключение SMBv1, SMBv2 и SMBv3 в Windows

Рассмотрим способы включения, отключения различных версий SMB в Windows. Мы рассматриваем отдельно включение клиента и сервера SMB (это разные компоненты).

Windows 10, 8.1, Windows Server 2019/2016/2012R2:

Отключить клиент и сервер SMBv1:
Disable-WindowsOptionalFeature -Online -FeatureName smb1protocol

Отключить только SMBv1 сервер:
Set-SmbServerConfiguration -EnableSMB1Protocol $false

Включить клиент и сервер SMBv1:
Enable-WindowsOptionalFeature -Online -FeatureName smb1protocol

Включить только SMBv1 сервер:
Set-SmbServerConfiguration -EnableSMB1Protocol $true

Отключить сервер SMBv2 и SMBv3:
Set-SmbServerConfiguration -EnableSMB2Protocol $false

Включить сервер SMBv2 и SMBv3:
Set-SmbServerConfiguration -EnableSMB2Protocol $true

Set-SmbServerConfiguration - powershell отключить SMBv2 и SMBv3

Windows 7, Vista, Windows Server 2008 R2/2008:

Отключить SMBv1 сервер:

Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters" SMB1 -Type DWORD -Value 0 –Force

отключить smbv1 сервер в windows 7 через powershell

Включить SMBv1 сервер:
Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters" SMB1 -Type DWORD -Value 1 –Force

Отключить SMBv1 клиент:

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

Включить SMBv1 клиент:

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

Отключить SMBv2 сервер:

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

Включить SMBv2 сервер

Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters" SMB2 -Type DWORD -Value 1 –Force

Отключить SMBv2 клиент:

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

Включить SMBv2 клиент:

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

Для отключения сервера SMBv1 на всех компьютерах независимо от версии Windows можно распространить параметр реестра типа REG_DWORD с именем SMB1 и значением 0 (HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters)на через GPO.

Для отключения SMBv2 нужно в этой же ветке установить параметр SMB2=0.

Для отключения SMBv1 клиента нужно распространить такой параметр реестра:

  • Key: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\mrxsmb10
  • Name: Start
  • Type: REG_DWORD
  • Value: 4

При отключении SMB 1.0/CIFS File Sharing Support в Windows вы можете столкнуться с ошибкой “0x80070035, не найден сетевой путь”, ошибкой при доступе к общим папкам, и проблемами обнаружения компьютеров в сетевом окружении. В этом случае вместо служба обозревателя компьютеров (Computer Browser) нужно использовать службы обнаружения (линк).

Про­то­ко­лу SMBv1 уже более 30 лет и он может быть выклю­чен пол­но­стью во всех сетях, где нет не под­дер­жи­ва­е­мых Май­к­ро­софт опе­ра­ци­он­ных систем (т.е. млад­ше Windows Vista), уста­рев­ших сете­вых нако­пи­те­лей и подоб­ных устройств и уста­рев­ших прин­те­ров. Но даже в слу­чае исполь­зо­ва­ния Windows XP / 2000 / 2003 — то воз­мо­жен пере­ход на Direct SMB.

При­чи­ны, поче­му это нуж­но сде­лать — про­то­кол уже силь­но уста­рел, он рабо­та­ет пло­хо и неэф­фек­тив­но (это не зна­чит, что он пло­хой, он про­сто уста­рел и пред­на­зна­чен для очень широ­ко­го кру­га обо­ру­до­ва­ния: COM пор­ты, сете­вая печать … поверх любых сете­вых про­то­ко­лов). Все­го на совре­мен­ных опе­ра­ци­он­ных систе­мах одно­вре­мен­но может рабо­тать три вер­сии SMB поверх двух сете­вых пор­тов: 139 и 445 TCP.

На совре­мен­ной опе­ра­ци­он­ной систе­ме отклю­чить его про­сто. Для Windows Server 2012 R2 / 8.1 и стар­ше мож­но про­сто цели­ком уда­лить ком­по­нент “ста­рые воз­мож­но­сти LAN Manager”. В него вхо­дит SMBv1 и Computer Browser. Это дела­ет­ся штат­но, через уста­нов­ку / уда­ле­ние ком­по­нен­тов опе­ра­ци­он­ной систе­мы.

Выклю­чить SMBv1 мож­но и груп­по­вой поли­ти­кой, и через PowerShell:

Set-SmbServerConfiguration -EnableSMB1Protocol $false

и через реестр

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters, параметр SMB1 типа DWORD = 0sc.exe config mrxsmb10 start=disabled

Мож­но уда­лить сам сер­вис, отве­ча­ю­щий за SMBv1 (это отдель­ный от SMBv2 сер­вис):

sc.exe config lanmanworkstatio depend=browser/mrxsmb20/nsi
sc.exe config mrxsmb10 start=disabled

Уда­ле­ние уста­рев­ше­го сер­ви­са не при­ве­дет к послед­стви­ям, если все сде­лать гра­мот­но и пой­дет толь­ко на поль­зу локаль­ной сети пред­при­я­тия. Подроб­нее так­же мож­но про­чи­тать на сай­те Май­к­ро­софт.

В связи с недавной эпидемией шифровальщика WannaCry, эксплуатирующим уязвимость SMB v1, в сети снова появились советы по отключению этого протокола. Более того, Microsoft настоятельно рекомендовала отключить первую версию SMB еще в сентябре 2016 года. Но такое отключение может привести к неожиданным последствиям, вплоть до курьезов: лично сталкивался с компанией, где после борьбы с SMB перестали играть беспроводные колонки Sonos.

Специально для минимизации вероятности «выстрела в ногу» я хочу напомнить об особенностях SMB и подробно рассмотреть, чем грозит непродуманное отключение его старых версий.

SMB (Server Message Block) – сетевой протокол для удаленного доступа к файлам и принтерам. Именно он используется при подключении ресурсов через \servername\sharename. Протокол изначально работал поверх NetBIOS, используя порты UDP 137, 138 и TCP 137, 139. С выходом Windows 2000 стал работать напрямую, используя порт TCP 445. SMB используется также для входа в домен Active Directory и работы в нем.

Помимо удаленного доступа к ресурсам протокол используется еще и для межпроцессорного взаимодействия через «именованные потоки» – named pipes. Обращение к процессу производится по пути \.\pipe\name.

Первая версия протокола, также известная как CIFS (Common Internet File System), была создана еще в 1980-х годах, а вот вторая версия появилась только с Windows Vista, в 2006. Третья версия протокола вышла с Windows 8. Параллельно с Microsoft протокол создавался и обновлялся в его открытой имплементации Samba.

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

Под спойлером вы найдете сводную таблицу изменений в версиях SMB.

Версия Операционная система Добавлено, по сравнению с предыдущей версией
SMB 2.0 Windows Vista/2008 Изменилось количество команд протокола со 100+ до 19
Возможность «конвейерной» работы – отправки дополнительных запросов до получения ответа на предыдущий
Поддержка символьных ссылок
Подпись сообщений HMAC SHA256 вместо MD5
Увеличение кэша и блоков записи\чтения
SMB 2.1 Windows 7/2008R2 Улучшение производительности
Поддержка большего значения MTU
Поддержка службы BranchCache – механизм, кэширующий запросы в глобальную сеть в локальной сети
SMB 3.0 Windows 8/2012 Возможность построения прозрачного отказоустойчивого кластера с распределением нагрузки
Поддержка прямого доступа к памяти (RDMA)
Управление посредством командлетов Powershell
Поддержка VSS
Подпись AES–CMAC
Шифрование AES–CCM
Возможность использовать сетевые папки для хранения виртуальных машин HyperV
Возможность использовать сетевые папки для хранения баз Microsoft SQL
SMB 3.02 Windows 8.1/2012R2 Улучшения безопасности и быстродействия
Автоматическая балансировка в кластере
SMB 3.1.1 Windows 10/2016 Поддержка шифрования AES–GCM
Проверка целостности до аутентификации с использованием хеша SHA512
Обязательные безопасные «переговоры» при работе с клиентами SMB 2.x и выше

Считаем условно пострадавших

Посмотреть используемую в текущий момент версию протокола довольно просто, используем для этого командлет Get–SmbConnection:

Вывод командлета при открытых сетевых ресурсах на серверах с разной версией Windows.

Из вывода видно, что клиент, поддерживающий все версии протокола, использует для подключения максимально возможную версию из поддерживаемых сервером. Разумеется, если клиент поддерживает только старую версию протокола, а на сервере она будет отключена – соединение установлено не будет. Включить или выключить поддержку старых версий в современных системах Windows можно при помощи командлета Set–SmbServerConfiguration, а посмотреть состояние так:

Get–SmbServerConfiguration | Select EnableSMB1Protocol, EnableSMB2Protocol

Выключаем SMBv1 на сервере с Windows 2012 R2.

Результат при подключении с Windows 2003.

Таким образом, при отключении старого, уязвимого протокола можно лишиться работоспособности сети со старыми клиентами. При этом помимо Windows XP и 2003 SMB v1 используется и в ряде программных и аппаратных решений (например NAS на GNU\Linux, использующий старую версию samba).

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

Производитель Продукт Комментарий
Barracuda SSL VPN
Web Security Gateway backups
Canon Сканирование на сетевой ресурс
Cisco WSA/WSAv
WAAS Версии 5.0 и старше
F5 RDP client gateway
Microsoft Exchange Proxy
Forcepoint (Raytheon) «Некоторые продукты»
HPE ArcSight Legacy Unified Connector Старые версии
IBM NetServer Версия V7R2 и старше
QRadar Vulnerability Manager Версии 7.2.x и старше
Lexmark МФУ, сканирование на сетевой ресурс Прошивки Firmware eSF 2.x и eSF 3.x
Linux Kernel Клиент CIFS С 2.5.42 до 3.5.x
McAfee Web Gateway
Microsoft Windows XP/2003 и старше
MYOB Accountants
NetApp ONTAP Версии до 9.1
NetGear ReadyNAS
Oracle Solaris 11.3 и старше
Pulse Secure PCS 8.1R9/8.2R4 и старше
PPS 5.1R9/5.3R4 и старше
QNAP Все устройства хранения Прошивка старше 4.1
RedHat RHEL Версии до 7.2
Ricoh МФУ, сканирование на сетевой ресурс Кроме ряда моделей
RSA Authentication Manager Server
Samba Samba Старше 3.5
Sonos Беспроводные колонки
Sophos Sophos UTM
Sophos XG firewall
Sophos Web Appliance
SUSE SLES 11 и старше
Synology Diskstation Manager Только управление
Thomson Reuters CS Professional Suite
Tintri Tintri OS, Tintri Global Center
VMware Vcenter
ESXi Старше 6.0
Worldox GX3 DMS
Xerox МФУ, сканирование на сетевой ресурс Прошивки без ConnectKey Firmware

Список взят с сайта Microsoft, где он регулярно пополняется.

Перечень продуктов, использующих старую версию протокола, достаточно велик – перед отключением SMB v1 обязательно нужно подумать о последствиях.

Все-таки отключаем

Если программ и устройств, использующих SMB v1 в сети нет, то, конечно, старый протокол лучше отключить. При этом если выключение на SMB сервере Windows 8/2012 производится при помощи командлета Powershell, то для Windows 7/2008 понадобится правка реестра. Это можно сделать тоже при помощи Powershell:


Set–ItemProperty –Path "HKLM:\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters" SMB1 –Type DWORD –Value 0 –Force

Или любым другим удобным способом. При этом для применения изменений понадобится перезагрузка.

Для отключения поддержки SMB v1 на клиенте достаточно остановить отвечающую за его работу службу и поправить зависимости службы lanmanworkstation. Это можно сделать следующими командами:

sc.exe config lanmanworkstation depend=bowser/mrxsmb20/nsi 

sc.exe config mrxsmb10 start=disabled

Для удобства отключения протокола по всей сети удобно использовать групповые политики, в частности Group Policy Preferences. С помощью них можно удобно работать с реестром.

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

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

  • путь: HKLM:\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters;

  • новый параметр: REG_DWORD c именем SMB1;

  • значение: 0.

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

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

Сначала отключим службу протокола SMB v1:

  • путь: HKLM:\SYSTEM\CurrentControlSet\services\mrxsmb10;

  • параметр: REG_DWORD c именем Start;

  • значение: 4.

Обновляем один из параметров.

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

  • путь: HKLM:\SYSTEM\CurrentControlSet\Services\LanmanWorkstation;

  • параметр: REG_MULTI_SZ с именем DependOnService;

  • значение: три строки – Bowser, MRxSmb20 и NSI.

И заменяем другой.

После применения групповой политики необходимо перезагрузить компьютеры организации. После перезагрузки SMB v1 перестанет использоваться.

Работает – не трогай

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

Расскажите, а вы уже отключили у себя SMB первой версии? Много было жертв?

Permanent link:

https://auditsquare.com/advisory/windows/how-to-disable-smb1

What is “SMB1”?

SMB or CIFS is usually used to refer to Microsoft Windows networking protocol, used for sharing files and printers and for IPC in Windows networks.

SMB1 is the particular version of this protocol; there are also newer versions, namely SMB2 and SMB3, supported
on Windows Vista/Windows Server 2008 and Windows 8/Windows Server 2012, respectively.

SMB1 is today generally considered insecure, and over the years quite a few very serious bugs and errors were reported for it. For this reason, it is advised to disable support for this SMB version whenever it is possible. Note however, that Microsoft Windows XP and Windows Server 2003 and older systems do not support newer SMB versions.

How to disable it?

Disabling server-side SMB1 via registry (Windows Vista, Windows Server 2008 and later)

  • Start regedit (as administrator)
  • Go to: HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\LanmanServer\Parameters
  • Create a new DWORD value named SMB1 and set it to 0
  • Reboot for the change to take effect.
  • Note: changing value of SMB1 to 1 would re-enable the SMB1 support.

Disabling server-side SMB1 using powershell (Windows 8, Windows Server 2012 and later)

  • Run the command Set-SmbServerConfiguration -EnableSMB1Protocol $false in powershell prompt.
  • You do not have to restart the computer after you run the Set-SMBServerConfiguration cmdlet.

Completely removing SMB1 support (incl. client-side) via GUI (Windows 8.1, Windows Server 2012R2 and later)

  • On server: in Server Manager, go to Remove features and in the list, uncheck SMB 1.0/CIFS File Sharing Support.
  • On client: go to Control Panel, Add or Remove Programs, Turn Windows features on or off, and uncheck SMB 1.0/CIFS File Sharing Support in the list
  • Note: this method disables also client support for SMB1; though it is highly advisable from the security point of view, it may lead to operational problems when client access to legacy systems is required.

Windows XP / 2000 / 2003

  • Unfortunately the only option here is to completely disable LanmanServer service (which disables sharing of files and printers).

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

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

для Win 8 в PowerShell:
Set-SmbServerConfiguration -EnableSMB1Protocol $false

для Win 7.
Set-ItemProperty -Path “HKLM:\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters” SMB1 -Type DWORD -Value 0 -Force

Понравилась статья? Поделить с друзьями:
0 0 голоса
Рейтинг статьи
Подписаться
Уведомить о
guest

0 комментариев
Старые
Новые Популярные
Межтекстовые Отзывы
Посмотреть все комментарии
  • Windows server вторичный плекс
  • Почему не работает тачпад на ноутбуке asus windows 10
  • Ocs inventory agent windows github
  • Windows 10 home доступ к принтеру
  • Докер контейнер для windows