2026年4月29日 星期三

Windows關閉 SSL 2.0 與 SSL 3.0,並強制使用 TLS 1.2

Windows關閉 SSL 2.0 與 SSL 3.0,並強制使用 TLS 1.2
有一台windows server 2012 R2 主機, 被弱點掃描軟體Nessus,掃出

SSL Version 2 and 3 Protocol Detection "The remote service encrypts traffic using a protocol with known weaknesses." "The remote service accepts connections encrypted using SSL 2.0 and/or

SSL 3.0. These versions of SSL are affected by several cryptographic flaws, including:

  - An insecure padding scheme with CBC ciphers.
  - Insecure session renegotiation and resumption schemes.

An attacker can exploit these flaws to conduct man-in-the-middle attacks or to decrypt communications between the affected service and clients.


Although SSL/TLS has a secure means for choosing the highest supported version of the protocol (so that these versions will be used only if the client or server support nothing better), many web browsers

implement this in an unsafe way that allows an attacker to downgrade a connection (such as in POODLE). Therefore, it is recommended that these protocols be disabled entirely.

NIST has determined that SSL 3.0 is no longer acceptable for secure communications. As of the date of enforcement found in PCI DSS v3.1, any version of SSL will not meet the PCI SSC's definition of 'strong
cryptography'." "Consult the application's documentation to disable SSL 2.0 and 3.0.

Use TLS 1.2 (with approved cipher suites) or higher instead.


處理方式:

絕對應該關閉 SSL 2.0 與 SSL 3.0,並強制使用 TLS 1.2

這項弱點(主要是為了防範 POODLE 攻擊)在現代安全標準中是非常基礎且必要的修復。SSL 2.0/3.0 早已被證明存在嚴重的加密缺陷,攻擊者可以利用這些漏洞進行中間人攻擊 (MITM) 並解密通訊內容。

由於 Windows Server 2012 R2 的預設設定較舊,通常需要手動調整註冊表或使用工具來符合目前的 Nessus 掃描要求。


1. 修復步驟:停用舊協定並啟用 TLS 1.2

在 Windows Server 2012 R2 中,所有的協定控制都在以下註冊表路徑: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols

A. 停用 SSL 2.0 與 3.0

你需要針對 SSL 2.0SSL 3.0 分別建立 ClientServer 子機碼,並將其停用:

  1. 建立機碼:Protocols\SSL 3.0\Server

  2. 在右側建立 DWORD (32-bit) 值:

    • Enabled = 0

    • DisabledByDefault = 1

  3. SSL 3.0\ClientSSL 2.0\ServerSSL 2.0\Client 重複上述動作。

B. 啟用 TLS 1.2

雖然 2012 R2 支援 TLS 1.2,但有時並未預設開啟。請確保以下路徑已正確設定:

  1. 建立機碼:Protocols\TLS 1.2\Server

  2. 在右側建立 DWORD (32-bit) 值:

    • Enabled = 1

    • DisabledByDefault = 0









2. 重要補充:.NET Framework 的相容性 (隱藏陷阱)

在 Windows Server 2012 R2 上,即便你關閉了系統層級的 SSL 3.0,有些執行在 .NET Framework (3.5 或 4.x) 上的應用程式可能還是會嘗試使用舊協定。為了確保 .NET 應用程式也使用 TLS 1.2,建議增加以下註冊表項:

  • 路徑 1: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework\v4.0.30319

  • 路徑 2: HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\.NETFramework\v4.0.30319

  • 新增項目:

    • SchUseStrongCrypto = 1 (DWORD)

    • SystemDefaultTlsVersions = 1 (DWORD)

沒有留言:

Windows關閉 SSL 2.0 與 SSL 3.0,並強制使用 TLS 1.2

Windows關閉 SSL 2.0 與 SSL 3.0,並強制使用 TLS 1.2 有一台windows server 2012 R2 主機, 被弱點掃描軟體Nessus,掃出 SSL Version 2 and 3 Protocol Detection "The re...