伺服器消息塊簽署概觀

本文說明伺服器消息塊 (SMB) 2.x 和 3.x 簽署,以及如何判斷是否需要 SMB 簽署。

簡介

SMB 簽署 (也稱為安全性簽章) 是SMB通訊協定中的安全性機制。 SMB 簽署表示每個SMB訊息都包含使用會話密鑰所產生的簽章。 用戶端會將整個訊息的哈希放入SMB標頭的簽章欄位中。

SMB 簽署會先出現在 Microsoft Windows 2000、Microsoft Windows NT 4.0 和 Microsoft Windows 98 中。 簽署演算法已隨著時間演進。 SMB 2.02 簽署已透過引進哈希型訊息驗證程式代碼 (HMAC) SHA-256 來改善,取代 SMB1 中所使用 1990 年代末期的舊 MD5 方法。 SMB 3.0 已新增 AES-CMAC 演算法。 在 Windows Server 2022 和 Windows 11 中,我們新增了 AES-128-GMAC 簽署加速。 如果您想要最佳的效能和保護組合,請考慮升級至最新的 Windows 版本。

SMB 簽署如何保護連線

如果有人在傳輸期間變更訊息,則哈希不會相符,而且SMB會知道有人竄改數據。 簽章也會確認寄件人和接收者的身分識別。 這可防止轉送攻擊。 在理想情況下,您會使用 Kerberos 而非 NTLMv2,讓會話密鑰啟動為強式。 請勿使用IP位址連線到共用,也不要使用 CNAME 記錄,否則您將使用NTLM而非 Kerberos。 請改用 Kerberos。 如需詳細資訊,請參閱 使用計算機名稱別名取代 DNS CNAME 記錄

SMB 簽署的原則位置

SMB 簽署的原則位於電腦>設定Windows 設定安全性>設定>本機原則>安全性選項

  • Microsoft 網路用戶端:數位簽署通訊 (一律)
    登錄機碼: HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\LanManWorkstation\Parameters
    登錄值: RequireSecuritySignature
    數據類型:REG_DWORD
    數據:0 (停用) ,1 (啟用)
  • Microsoft 網路用戶端:如果伺服器同意) ,則以數位方式簽署通訊 (
    登錄機碼: HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\LanManWorkstation\Parameters
    登錄值: EnableSecuritySignature
    數據類型:REG_DWORD
    數據:0 (停用) ,1 (啟用)
  • Microsoft 網路伺服器:數位簽署通訊 (一律)
    登錄機碼: HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\LanManServer\Parameters
    登錄值: RequireSecuritySignature
    數據類型:REG_DWORD
    數據:0 (停用) ,1 (啟用)
  • Microsoft 網路伺服器:如果用戶端同意) ,則以數位方式簽署通訊 (
    登錄機碼: HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\LanManServer\Parameters
    登錄值: EnableSecuritySignature
    數據類型:REG_DWORD
    數據:0 (停用) ,1 (啟用)

注意 在這些原則中,「always」 表示需要 SMB 簽署,而「如果伺服器同意」或「如果用戶端同意」則表示已啟用 SMB 簽署。

瞭解 “RequireSecuritySignature” 和 “EnableSecuritySignature”

系統會忽略 SMB2+ 用戶端和 SMB2+ 伺服器的 EnableSecuritySignature 登錄設定。 因此,除非您使用SMB1,否則此設定不會執行任何動作。 SMB 2.02 和更新版本的簽署僅由必要與否來控制。 當伺服器或用戶端需要SMB簽署時,就會使用此設定。 只有當兩者都已將簽署設定為 0 時,才會進行簽署。

- 伺服器 – RequireSecuritySignature=1 伺服器 – RequireSecuritySignature=0
用戶端 – RequireSecuritySignature=1 簽署 簽署
用戶端 – RequireSecuritySignature=0 簽署 未簽署

參考

以信賴度設定SMB簽署

如何透過SMB用戶端防禦保護使用者免於攔截攻擊

Windows 10 中的SMB 2和SMB 3安全性:簽署和密碼編譯密鑰的結構

SMBv1 預設不會安裝在 Windows 10 1709 版、Windows Server 1709 版和更新版本中

Netdom 計算機名稱