[研究]IIS 10套用GCB設定路徑圖解(7)傳輸加密
2025-11-03
除項次42外,項次43 ~ 項次 53 可跳到本文最後,用別的方式處理較快。
Windows Server 從Windows Server 2016開始,IIS為10.0版,後續 Windows Server 2019, Windows Server 2022, Windows Server 2025 也都是 10.0版,大版本號碼相同,小版本可能不同,畫面幾乎相同。
政府組態基準(Government Configuration Baseline,簡稱GCB)
TWGCB-04-014_Microsoft IIS 10政府組態基準說明文件v1.1_1141002
https://www.nics.nat.gov.tw/core_business/cybersecurity_defense/GCB/GCB_Documentation/
| 類別項次 | 類別 | 項數 | 起訖項次編號 | 合計 |
| 1 | 基本設定 | 7 | No.1 ~ 7 | 53 |
| 2 | 設定驗證與授權 | 5 | No.8 ~ 12 | |
| 3 | ASP.NET設定建議 | 12 | No.13 ~ 24 | |
| 4 | 要求篩選與其他限制模組 | 11 | No.25 ~ 35 | |
| 5 | IIS記錄 | 4 | No.36 ~ 39 | |
| 6 | FTP要求 | 2 | No.40 ~ 41 | |
| 7 | 傳輸加密 | 12 | No.42 ~ 53 |
IIS 10.0 政府組態基準列表
| 項次 | TWGCB-ID | 類別 | 原則設定名稱 | 說明 | 設定位置 | 設定路徑 | GCB設定值 |
| 42 | TWGCB-04-014-0042 | 傳輸加密 | HSTS標頭 | ▪這項原則設定決定是否在HTTP回應標頭設定使用HTTP嚴格傳輸安全(HTTP Strict Transport Security,以下簡稱HSTS) ▪HSTS主要用來宣告瀏覽器與伺服器之間的通訊方式必須強制使用TLS/SSL加密通道,只要從伺服器端送出一個HSTS標頭(Header)給瀏覽器,就可以告訴瀏覽器在未來某段時間內一律使用SSL連接該網站(可設定包含所有子域名網站),如果有發生憑證失效之情況,使用者將無法瀏覽該網站,如此一來便可大幅減少中間人攻擊之問題發生 |
伺服器 | ▪IIS管理員\伺服器\IIS\HTTP回應標頭\動作\開啟功能\新增 ▪名稱:Strict-Transport-Security ▪值:max-age=480(已使用HTTPS連線的網站480秒內不再檢查) |
▪名稱:Strict-Transport-Security ▪值:max-age設為480以上 |
<configuration>
<system.webServer>
<httpProtocol>
<customHeaders>
<add name="Strict-Transport-Security" value="max-age=31536000" />
</customHeaders>
</httpProtocol>
</system.webServer>
</configuration>
|
GCB建議max-age設定480以上,但RFC 6797(“HTTP Strict Transport Security (HSTS)”)的定義,關於 Strict-Transport-Security: max-age=<seconds> 的 max-age 沒有明文規定一個上限值,實務上多數安全建議會使用 1 年(31536000 秒),設定過長的 max-age,而網站/憑證出現問題(如憑證到期、子域未支援 HTTPS 等),可能造成使用者無法回退到 HTTP 或難以修正。
[研究]GCB,IIS和Web.config都設定HSTS值後最終 max-age值為何?https://shaurong.blogspot.com/2025/11/gcbiiswebconfighsts-max-age.html
********************************************************************************
| 項次 | TWGCB-ID | 類別 | 原則設定名稱 | 說明 | 設定位置 | 設定路徑 | GCB設定值 |
| 43 | TWGCB-04-014-0043 | 傳輸加密 | SSLv2 | ▪這項原則設定決定是否停用SSLv2加密協定 ▪SSLv2存在已知弱點,為提升安全性應停用SSLv2加密協定 |
regedit | ▪執行以下步驟: (1)確認「HKLM\System\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\SSL 2.0\Server\Enabled」機碼是否存在,存在時,確認Enabled類型為DWord且資料欄位值為0,不存在時,請於SSL 2.0下新增機碼且命名為Server,並新增DWord值,名稱設為Enabled,資料欄位值設為0 (2)確認「HKLM\System\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\SSL 2.0\Server\DisabledByDefault」機碼是否存在,存在時,確認DisabledByDefault類型為DWord且資料欄位值為1,不存在時,請於SSL 2.0下新增機碼且命名為Server,並新增DWord值,名稱設為DisabledByDefault,資料欄位值設為1 (3)確認「HKLM\System\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\SSL 2.0\Client\Enabled」機碼是否存在,存在時,確認Enabled類型為DWord且資料欄位值為0,不存在時,請於SSL 2.0下新增機碼且命名為Client,並新增DWord值,名稱設為Enabled,資料欄位值設為0 (4)確認「HKLM\System\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\SSL 2.0\Client\DisabledByDefault」機碼是否存在,存在時,確認DisabledByDefault類型為DWord且資料欄位值為1,不存在時,請於SSL 2.0下新增機碼且命名為Client,並新增DWord值,名稱設為DisabledByDefault,資料欄位值設為1 |
停用 |
Windows Registry Editor Version 5.00 ; 停用 SSL 2.0 Server [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\SSL 2.0\Server] "Enabled"=dword:00000000 "DisabledByDefault"=dword:00000001 ; 停用 SSL 2.0 Client [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\SSL 2.0\Client] "Enabled"=dword:00000000 "DisabledByDefault"=dword:00000001 |
********************************************************************************
| 項次 | TWGCB-ID | 類別 | 原則設定名稱 | 說明 | 設定位置 | 設定路徑 | GCB設定值 |
| 44 | TWGCB-04-014-0044 | 傳輸加密 | SSLv3 | ▪這項原則設定決定是否停用SSLv3加密協定 ▪目前已知SSLv3存在POODLE弱點,為提升安全性應停用SSLv3加密協定 |
regedit | ▪執行以下步驟: (1)確認「HKLM\System\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\SSL 3.0\Server\Enabled」機碼是否存在,存在時,確認Enabled類型為DWord且資料欄位值為0,不存在時,請於SSL 3.0下新增機碼且命名為Server,並新增DWord值,名稱設為Enabled,資料欄位值設為0 (2)確認「HKLM\System\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\SSL 3.0\Server\DisabledByDefault」機碼是否存在,存在時,確認DisabledByDefault類型為DWord且資料欄位值為1,不存在時,請於SSL 3.0下新增機碼且命名為Server,並新增DWord值,名稱設為DisabledByDefault,資料欄位值設為1 (3)確認「HKLM\System\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\SSL 3.0\Client\Enabled」機碼是否存在,存在時,確認Enabled類型為DWord且資料欄位值為0,不存在時,於SSL 3.0下新增機碼且命名為Client,並新增Dword值命名為Enabled,最後資料欄位值設定為0 (4)確認「HKLM\System\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\SSL 3.0\Client\DisabledByDefault」機碼是否存在,存在時,確認DisabledByDefault類型為DWord且資料欄位值為1,不存在時,請於SSL 3.0下新增機碼且命名為Client,並新增DWord值,名稱設為DisabledByDefault,資料欄位值設為1 |
停用 |
| 項次 | TWGCB-ID | 類別 | 原則設定名稱 | 說明 | 設定位置 | 設定路徑 | GCB設定值 | |
| 45 | TWGCB-04-014-0045 | 傳輸加密 | TLS 1.0 | ▪這項原則設定決定是否停用TLS 1.0加密協定 ▪SSL加密協定與早期版本的TLS 1.0在2016年6月30日之後,已被視為不安全之加密協定 |
regedit | 執行以下步驟: (1)確認「HKLM\System\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.0\Server\Enabled」機碼是否存在,存在時,確認Enabled類型為DWord且資料欄位值為0,不存在時,請於TLS 1.0下新增機碼且命名為Server,並新增DWord值,名稱設為Enabled,資料欄位值設為0 (2)確認「HKLM\System\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.0\Server\DisabledByDefault」機碼是否存在,存在時,確認DisabledByDefault類型為DWord且資料欄位值為1,不存在時,請於TLS 1.0下新增機碼且命名為Server,並新增DWord值,名稱設為DisabledByDefault,資料欄位值設為1 (3)確認「HKLM\System\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.0\Client\Enabled」機碼是否存在,存在時,確認Enabled類型為DWord且資料欄位值為0,不存在時,請於TLS 1.0下新增機碼且命名為Client,並新增DWord值,名稱設為Enabled,資料欄位值設為0 (4)確認「HKLM\System\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.0\Client\DisabledByDefault」機碼是否存在,存在時,確認DisabledByDefault類型為DWord且資料欄位值為1,不存在時,請於TLS 1.0下新增機碼且命名為Client,並新增DWord值,名稱設為DisabledByDefault,資料欄位值設為1 |
停用 |
| 項次 | TWGCB-ID | 類別 | 原則設定名稱 | 說明 | 設定位置 | 設定路徑 | GCB設定值 |
| 46 | TWGCB-04-014-0046 | 傳輸加密 | TLS 1.1 | ▪這項原則設定決定是否停用TLS 1.1加密協定 ▪TLS 1.1加密協定不支援較安全之新加密演算法,建議停用TLSv1.1以降低資訊洩露之風險 | regedit | 執行以下步驟: (1)確認「HKLM\System\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.1\Server\Enabled」機碼是否存在,存在時,確認Enabled類型為DWord且資料欄位值為0,不存在時,請於TLS 1.1下新增機碼且命名為Server,並新增DWord值,名稱設為Enabled,資料欄位值設為0 (2)確認「HKLM\System\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.1\Server\DisabledByDefault」機碼是否存在,存在時,確認DisabledByDefault類型為DWord且資料欄位值為1,不存在時,請於TLS 1.1下新增機碼且命名為Server,並新增DWord值,名稱設為DisabledByDefault,資料欄位值設為1 (3)確認「HKLM\System\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.1\Client\Enabled」機碼是否存在,存在時,確認Enabled類型為DWord且資料欄位值為0,不存在時,請於TLS 1.1下新增機碼且命名為Client,並新增DWord值,名稱設為Enabled,資料欄位值設為0 (4)確認「HKLM\System\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.1\Client\DisabledByDefault」機碼是否存在,存在時,確認DisabledByDefault類型為DWord且資料欄位值為1,不存在時,請於TLS 1.1下新增機碼且命名為Client,並新增DWord值,名稱設為DisabledByDefault,資料欄位值設為1 |
停用 |
| 項次 | TWGCB-ID | 類別 | 原則設定名稱 | 說明 | 設定位置 | 設定路徑 | GCB設定值 |
| 47 | TWGCB-04-014-0047 | 傳輸加密 | TLS 1.2 | ▪這項原則設定決定是否啟用TLS 1.2加密協定 ▪TLS 1.2為較新之加密協定,用以保護HTTP傳輸之機密性與完整性 |
regedit | 執行以下步驟: (1)確認「HKLM\System\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.2\Server\Enabled」機碼是否存在,存在時,確認Enabled類型為DWord且資料欄位值為1,不存在時,請於TLS 1.2下新增機碼且命名為Server,並新增DWord值,名稱設為Enabled,資料欄位值設為1 (2)確認「HKLM\System\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.2\Server\DisabledByDefault」機碼是否存在,存在時,確認DisabledByDefault類型為DWord且資料欄位值為0,不存在時,請於TLS 1.2下新增機碼且命名為Server,並新增DWord值,名稱設為DisabledByDefault,資料欄位值設為0 |
啟用 |
| 項次 | TWGCB-ID | 類別 | 原則設定名稱 | 說明 | 設定位置 | 設定路徑 | GCB設定值 |
| 48 | TWGCB-04-014-0048 | 傳輸加密 | NULL Cipher | ▪這項原則設定決定是否停用NULL Cipher ▪NULL Cipher無法確保資料機密性或完整性 |
regedit | ▪確認下列機碼是否存在: ▪HKLM\System\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Ciphers\NULL\Enabled ▪不存在時,表示停用 ▪存在時,確認Enabled類型為DWord且資料欄位值為0 |
停用 |
| 項次 | TWGCB-ID | 類別 | 原則設定名稱 | 說明 | 設定位置 | 設定路徑 | GCB設定值 |
| 49 | TWGCB-04-014-0049 | 傳輸加密 | DES | ▪這項原則設定決定是否停用DES加密套件 ▪DES已被視為安全性不足之加密套件 | regedit | ▪確認下列機碼是否存在: ▪HKLM\System\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Ciphers\DES 56/56\Enabled ▪不存在時,表示停用 ▪存在時,確認Enabled類型為DWord且資料欄位值為0 | 停用 |
| 項次 | TWGCB-ID | 類別 | 原則設定名稱 | 說明 | 設定位置 | 設定路徑 | GCB設定值 |
| 50 | TWGCB-04-014-0050 | 傳輸加密 | RC4加密套件 | ▪這項原則設定決定是否停用RC4加密套件 ▪在TLS與SSL連線中使用RC4加密套件可能會讓攻擊者能夠進行中間人攻擊,並從加密之Session中還原純文字內容 |
regedit | ▪確認以下4個機碼是否存在: (1)HKLM\System\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Ciphers\RC4 40/128\Enabled (2)HKLM\System\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Ciphers\RC4 56/128\Enabled (3)HKLM\System\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Ciphers\RC4 64/128\Enabled (4)HKLM\System\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Ciphers\RC4 128/128\Enabled ▪不存在時,表示停用 ▪存在時,確認Enabled類型為DWord且資料欄位值為0 |
停用 |
| 項次 | TWGCB-ID | 類別 | 原則設定名稱 | 說明 | 設定位置 | 設定路徑 | GCB設定值 |
| 51 | TWGCB-04-014-0051 | 傳輸加密 | AES 128/128 | ▪這項原則設定決定是否啟用AES 128/128加密套件 ▪AES 128/128加密套件已被視為安全性不足,建議停用 |
regedit | ▪確認下列機碼是否存在: ▪HKLM\System\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Ciphers\AES 128/128\Enabled ▪不存在時,表示停用 ▪存在時,確認Enabled類型為DWord且資料欄位值為0 |
停用 |
| 項次 | TWGCB-ID | 類別 | 原則設定名稱 | 說明 | 設定位置 | 設定路徑 | GCB設定值 |
| 52 | TWGCB-04-014-0052 | 傳輸加密 | AES 256/256 | ▪這項原則設定決定是否啟用AES 256/256加密套件 ▪AES 256/256加密套件可用以保護HTTP傳輸之機密性與完整性 ▪預設為啟用,且機碼值不存在 |
regedit | ▪確認下列機碼是否存在: ▪HKLM\System\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Ciphers\AES 256/256\Enabled ▪不存在時,表示啟用 ▪存在時,確認Enabled類型為DWord且資料欄位值為1 |
啟用 |
| 項次 | TWGCB-ID | 類別 | 原則設定名稱 | 說明 | 設定位置 | 設定路徑 | GCB設定值 |
| 53 | TWGCB-04-014-0053 | 傳輸加密 | TLS加密套件順序 | ▪這項原則設定決定TLS加密套件順序 ▪加密套件是一組包含身分驗證、加密、訊息鑑別碼及金鑰交換演算法的組合,用於設定使用TLS協定之網路連線安全性。客戶端會依優先順序向伺服器發送其支援之加密套件清單,而伺服器則會從該清單中選擇一組加密套件進行回應 ▪加密套件應從最強到最弱進行排序,以確保伺服器與用戶端之間使用較安全之傳輸加密協定 |
regedit | 針對「HKLM\System\CurrentControlSet\Control\Cryptography\Configuration\Local\SSL\00010002\Functions」機碼,其數值資料欄位設定如下: TLS_AES_256_GCM_SHA384, TLS_AES_128_GCM_SHA256, TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384, TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256, TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384, TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256, TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384, TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256, TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384, TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256 |
TLS_AES_256_GCM_SHA384, TLS_AES_128_GCM_SHA256, TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384, TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256, TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384, TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256, TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384, TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256, TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384, TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256 |












沒有留言:
張貼留言