二月初發表了在 Linux 上移除 CNNIC 憑證一文後,受到相當多的文章引用與關注。

原文中,提到移除高風險憑證的作法,但其實我相信很多人弄不懂不同平台的作法,也不清楚所謂 NSS 的機制,沒有清除系統憑證,只是試圖移掉 Firefox 中的驗證。所以很多使用者不知道自己是否真的移除,或是以為移除,重新開啟 Firefox 後,因為 NSS 的設計,憑證又自動建入資料庫中。

依照目前的討論 (#542689, #476766),Mozilla 應該採無罪推論原則。也就是說雖然 CNNIC 的風評不佳,但在它實際作惡前,我們理因相信它無罪。雖然有一些技術上的提議,希望可以降低憑證管理的問題跟風險,但是這些功能恐怕需要點時間才會實踐。

所以,短時間內,使用者還是得自己做一些設定來自保。但是前文步驟又十分繁雜,我們需要給使用者一個比較簡單的操作措施。

在香港朋友 Benlau小兔黑黑倡議與支持下,我們寫了一個小 Firefox 附加元件,稱為 Cert Alert,這個元件的功能是「自動提醒」使用者,網頁中使用了特定 SSL Root CA 的內容。

這個附加元件採 MPL 1.1 授權釋出。你可以於 Firefox 附加元件網站下載安裝。開發者可於 Github 取得完整程式碼或提供建議。

另外一個值得推薦的是 timdream 所開發的 CA Untrustworthy。這個附加元件的功用是每次開啟 Firefox 時,自動移除或關閉高風險憑證。如此,若瀏覽使用高風險憑證網站時,Firefox 就會提醒你這是未受信任網站,你可以依照 Firefox 的憑證驗證機制來允許或關閉網頁。所以你就不用擔心,是否因為沒有完成移除系統憑證而造成安全問題啦。Tim 的 CA Untrustworthy 亦擺於 Github.

銘謝: Littlebtc 提醒 CertAlert 0.0.4 版前之 MITM 問題
備註: 中國朋友亦開發一 NoCNNIC 工具,可移除 Windows 平台的 NSS database 中 CNNIC 憑證。惟只支持 Windows 平台,且必須手動執行才可移除。僅供參考。

2011-03-27 updated

已更新支援 Firefefox 4.0

  • cashboxhung

    謝謝!
    這樣真的很方便.

  • odami

    3.6.2 的 FF 說版本太舊不能裝耶 …
    但是 3.6.2 可以裝 CA Untrustworthy

  • odami, 新版 0.0.5 for 3.6.2 已經擺在 github

    但我還沒測試過,所以還沒擺上官網。若安裝 0.0.5 無誤,請通知一聲,我會傳到 addons.mozilla.org.

  • Pingback: Rex's blah blah blah » CertAlert 0.0.6 for Firefox 4.0()

  • 是的,設有三組 sha1Fingerprint 比對,均針對 CNNIC.

  • Jerry

    CertAlert是否就是把CNNIC列黑名单警告了?目前MITM的黑名单只有一个CNNIC吗?

  • Jerry

    多谢,我很早就把CNNIC的CA移除了,目前看来不需要CertAlet警告了,不过希望CertAlert能保持更新,针对以后出现的MITM攻击的CA报警,有时候容易漏掉新出来的钓鱼CA,自从前段时间Comodo被伪造证书后,这种可能性越来越高了,skype被劫持已经频繁出现,下面这个还只是个钓鱼的,CNNIC就太龌龊了:
    http://blog.fatduck.org/2010/09/skype.html
    http://blog.fatduck.org/2011/04/skype.html