Public-Key
為什麼有些網站似乎對自簽名證書中間人攻擊免疫?
我最近做了一個實驗,使用 MitM 在訪問網站時獲取帳戶資訊(使用者名和密碼)。我在場景中使用了兩台 PC;一台作為目標,執行 Internet Explorer,一台作為攻擊者,執行 ettercap。一次嘗試(偽裝成 steamcommunity.com)得到了資訊;目標接受了攻擊者通過中間人攻擊提供的虛假 CA 自簽名證書。另一次嘗試(假裝是 facebook.com)甚至不允許我為目標機器上的自簽名證書添加例外。所以問題是,為什麼一個網站允許我添加例外,而另一個卻不允許?
簡短的回答是HTTP Strict Transport Security。
當 Web 應用程序向使用者代理髮出 HSTS 策略時,符合標準的使用者代理的行為如下:
- 自動將引用 Web 應用程序的任何不安全連結轉換為安全連結。(比如 http://example.com/some/page/在訪問伺服器之前會被修改為 https://example.com/some/page/ 。)
- 如果無法確保連接的安全性(例如伺服器的 TLS 證書不受信任),則顯示錯誤消息並不允許使用者訪問 Web 應用程序。
(強調我的)
在配置了它的網站上,許多瀏覽器不允許您為不受信任的證書添加例外。