複選題
32. 在進行網站檢查時,發現其未設定 HTTP Strict Transport Security(HSTS)標頭,請問下列敘述那些較為適切?(複選)
(A) 可能遭受中間人攻擊(Man-in-the-Middle,MITM)
(B) 可能遭受 SSLStrip 攻擊
(C) 可於網站伺服器中停用 Port 80 的服務來修補這問題
(D) 可於網站伺服器中停用 Port 443 的服務來修補這問題

答案:登入後查看
統計: A(335), B(349), C(151), D(37), E(0) #3294512

詳解 (共 1 筆)

#6223694

(A) 可能遭受中間人攻擊(Man-in-the-Middle,MITM)

未設定 HSTS,瀏覽器可能會預設使用不安全的 HTTP 連線。這使得攻擊者有機會在用戶與網站之間插入,攔截或修改通訊內容,從而進行中間人攻擊。

(B) 可能遭受 SSLStrip 攻擊

SSLStrip 攻擊是利用將 HTTPS 連線降級為 HTTP 的方式,攔截敏感資訊。沒有設定 HSTS,瀏覽器不會強制使用 HTTPS,增加了遭受 SSLStrip 攻擊的風險。

(C) 可於網站伺服器中停用 Port 80 的服務來修補這問題

雖然停用 Port 80(HTTP)服務可以強制用戶使用 HTTPS,但這可能導致用戶在使用 HTTP 連線時無法訪問網站,且不會自動重導至 HTTPS。這不是解決未設定 HSTS 的最佳方法。

(D) 可於網站伺服器中停用 Port 443 的服務來修補這問題

停用 Port 443(HTTPS)服務將使網站無法透過 HTTPS 訪問,完全失去加密保護,這與增強安全性的目標相違背,並非適當的解決方案。

IIS 伺服器

如果你使用的是 Windows Server 上的 IIS 伺服器,可以透過以下方式設定 HSTS:

  • 打開 IIS 管理器。
  • 選擇網站,然後點擊右邊的 HTTP 回應標頭(HTTP Response Headers)。
  • 點擊 新增(Add),然後填入:
    • 名稱:Strict-Transport-Security
    • :max-age=31536000; includeSubDomains
  • 最後應用設定。
  • max-age=31536000

    • 這表示 HSTS 政策的有效期,以秒為單位計算。31536000 秒等於 一年
    • 當瀏覽器第一次成功連線到該網站(透過 HTTPS)後,會記住這個設定,並在接下來的一年內強制只使用 HTTPS 與該網站進行通訊,即使用戶手動輸入 http://,瀏覽器也會自動將其轉換為 https://。
    • 這可以防止降級攻擊(例如 SSLStrip 攻擊),即攻擊者試圖將 HTTPS 降級為不安全的 HTTP。
  • includeSubDomains

    • 這表示 HSTS 政策不僅應用於主網域,還應用於所有的子網域。
    • 例如,如果主網域是 example.com,此設定會確保所有子網域(如 sub.example.com)也強制使用 HTTPS。
    • 這可以防止攻擊者透過不安全的子網域進行中間人攻擊(MITM),因為所有子網域都會強制使用 HTTPS 連線。
1
0