Обзор подписи блока сообщений сервера

В этой статье описывается подписание блока сообщений сервера (SMB) и определение включения подписи SMB.

Применяется к:   Windows Server 2012 R2, Windows 10 — все выпуски

Введение

Подписание SMB (также известное как подписи безопасности) — это механизм безопасности в протоколе SMB. Подписание SMB означает, что каждое сообщение SMB 3.1.1 содержит подпись, которая создается с помощью ключа сеанса и алгоритма Advanced Encryption Standard (AES). Клиент помещает хаш всего сообщения в поле подписи загонщика SMB.

Подписание SMB впервые появилось в Microsoft Windows 2000, Microsoft Windows NT 4.0 и Microsoft Windows 98. Алгоритмы подписи со временем эволюционировали. Подписание SMB 2.02 было улучшено благодаря внедрению кода проверки подлинности сообщений на основе хэширования (HMAC) SHA-256, заменив старый метод MD5 с конца 1990-х годов, который использовался в SMB1. В SMB 3.0 добавлены алгоритмы AES-CMAC. В Windows Server 2022 и Windows 11 мы добавили ускорение подписания AES-128-GMAC. Если вам нужна лучшая комбинация производительности и защиты, рассмотрите возможность обновления до последних Windows версий.

Как подписание SMB защищает подключение

Если кто-то изменяет сообщение во время передачи, то hash не будет соответствовать, и SMB будет знать, что кто-то подделал данные. Подпись также подтверждает удостоверения отправщика и получателя. Это нарушает ретрансляторные атаки. В идеале вместо NTLMv2 используется Kerberos, чтобы клавиша сеанса была сильной. Не подключайтесь к акциям с помощью IP-адресов и не используйте записи CNAME. Вместо этого используйте Kerberos. Дополнительные сведения см. в дополнительных сведениях об использовании псевдонимов имени компьютера на месте DNS CNAME Records.

Расположения политик для подписания SMB

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

  • Клиент сети Майкрософт: цифровые подписывные сообщения (всегда)
    Ключ реестра: HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\LanManWorkstation\Parameters
    Значение реестра: RequireSecuritySignature
    Тип данных: REG_DWORD
    Данные: 0 (отключение), 1 (включить)
  • Клиент сети Майкрософт: цифровой подписывной канал связи (если сервер соглашается)
    Ключ реестра: HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\LanManWorkstation\Parameters
    Значение реестра: EnableSecuritySignature
    Тип данных: REG_DWORD
    Данные: 0 (отключение), 1 (включить)
  • Microsoft network server: Digitally sign communications (always)
    Ключ реестра: HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\LanManServer\Parameters
    Значение реестра: RequireSecuritySignature
    Тип данных: REG_DWORD
    Данные: 0 (отключение), 1 (включить)
  • Сетевой сервер Майкрософт: цифровой подписывной канал связи (если клиент соглашается)
    Ключ реестра: HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\LanManServer\Parameters
    Значение реестра: EnableSecuritySignature
    Тип данных: REG_DWORD
    Данные: 0 (отключение), 1 (включить)

Примечание В этих политиках "всегда" указывается, что требуется подписание SMB, а "если сервер соглашается" или "если клиент соглашается", указывает, что подписание SMB включено.

Понимание "RequireSecuritySignature" и "EnableSecuritySignature"

Параметр реестра EnableSecuritySignature для клиента SMB2+ и сервера SMB2+ игнорируется. Таким образом, этот параметр ничего не делает, если вы не используете SMB1. Подписание SMB2 контролируется только тем, что требуется или нет. Этот параметр используется, когда либо серверу, либо клиенту требуется подписание SMB. Только если у обоих есть набор подписей до 0, подписываться не будет.

- Сервер — RequireSecuritySignature=1 Server — RequireSecuritySignature=0
Client — RequireSecuritySignature=1 Signed Signed
Client — RequireSecuritySignature=0 Signed Не подписано

Справка

Настройка подписи по SMB с уверенностью

Защита пользователей от атак на перехват с помощью защиты клиентов SMB

Безопасность SMB 2 и SMB 3 в Windows 10: анатомия подписи и криптографические ключи

SMBv1 не установлен по умолчанию в Windows 10 версии 1709, Windows Версии 1709 и более поздних версиях

Имя компьютера Netdom