SSL Blacklist

現在新的 malware 或是 botnet 為了避免被 IDS/IPS 之類的設備抓包,大多都使用 SSL 連線傳遞資料在技術上躲避偵測。

而為了因應新型態的 malware 與 botnet,就有人想到去建立 SSL certificate SHA-1 的資料庫來偵測:「SSL Black List Aims to Publicize Certificates Associated With Malware」,也就是「SSL Blacklist」這個服務。

不過這應該會再演變成透過 malware 與 botnet 改用 PKI 架構而變成要偵測 CA 簽名的部份?還可以想出一些變形...

NIC of India 簽發 Google 的 certificate

Google 昨天發出的公告,發現 NIC of India 發出了幾張 Google 網域的 SSL 憑證:「Maintaining digital certificate security」。

NIC of India 所取得的憑證權限是 India CCA 所發出的 Intermediate CA 權限。而目前 India CCA 只在 Microsoft Root Store 上面有使用,所以會受到影響的範圍是 Windows 上的 IE 以及應用程式,而因為 Google Chrome 有白名單保護,至少在 Google 的網域裡面是不受到直接傷害...

事情還在調查 (還在戳湯圓?),歷史總是不斷地重演...

OCSP stapling

OCSP (Online Certificate Status Protocol) 是用來檢查 SSL certificate 是否被撤銷的方法。OCSP server 接受 HTTP POST 後,回答 client 這個 SSL certificate 是否仍然有效。

對於 client 來說,這主要有兩個問題:

  • client 需要多花時間連到 OCSP server 確認。
  • 隱私問題:OCSP server 會知道「這個使用者試著連到使用這個 SSL certificate」的資訊。

而對於 OCSP server 來說,這個方法的 scalability 很差,熱門的站台會產生大量的流量打進 OCSP server。

OCSP stapling 則是解決這個問題的方法。藉由 server 向 OCSP server 要一次 OCSP response 後,直接傳回 OCSP response 給 client (通常是 browser) 避開了上面的問題。這個方法也逐漸在普及了:(取自英文版維基百科文章內的說明)

OCSP stapling has not seen broad deployment to date, however this is changing. The OpenSSL project included support in their 0.9.8g release with the assistance of a grant from the Mozilla Foundation.

Apache HTTP Server supports OCSP stapling since version 2.3.3, the nginx web server since version 1.3.7, and LiteSpeed Web Server since version 4.2.4. and Microsoft's IIS since Windows Server 2008

On the browser side, OCSP stapling was implemented in Firefox 26 and in Internet Explorer since Windows Vista.

所以已經有不少 client 與 server 都支援了...

GlobalSign 提供 Open Source 專案免費的 SSL Certificate

GlobalSign 提供 Open Source 專案免費的 SSL Certificate:「Free SSL Certificate for Open Source Projects」。

不過看了看需求還蠻龜毛的,不如自己花個 USD$10/year 還比較方便。如果不在意時間成本的話就申請吧,我猜實際上也不會有多少專案申請...

法國政府 ANSSI 偽造 Google 的 SSL 憑證被抓到...

GoogleGoogle Chrome 裡面有放一段 SSL 白名單 (transport_security_state_static.json),針對某些特定 domain 只允許特定的 CA 所發出來的 SSL 憑證,另外當發現異常時也會回報。

這個機制可以保證在白名單內的網域比較不容易被 CA 搞到。

前幾天 Google 偵測到法國政府 ANSSI 的一個中介憑證發行單位 (Intermediate certificate authorities) 發出 Google 所擁有網域的 SSL 憑證:「Further improving digital certificate security」。

這也是繼一年前 TURKTRUST 發出的 *.google.com 以來再次被這個機制抓到的案例:「這次 TURKTRUST 誤發 *.google.com SSL 憑證...」。

同時,這也是首次政府機關相關的 CA 搞 MITMA (Man-in-the-middle attack)。

ANSSI 官方的說法是「誤發」:「Revocation of an IGC/A branch」,不過可信度... XD

Google 後來在 12/12 再次更新公告文章,決定把 ANSSI 的 CA 信任範圍限縮到法國相關的網域,共 13 個。(*.fr*.gp*.gf、...)

另外可以參考 Mozilla 在收到 Google 通知後的公告:「Revoking Trust in one ANSSI Certificate」。

微軟將在 2016 年會拒絕 SHA-1 的 SSL 安全憑證...

微軟公告將在 2016 年拒絕只有 SHA-1 的 SSL Certificate:「Security Advisory 2880823: Recommendation to discontinue use of SHA-1」。微軟的力量主要是對 IE 瀏覽器的控制。

可以看到文章裡把 MD5 的歷史也拿出來比較,然後對照到 SHA-1,所以宣佈 2016 年後就不吃只有 SHA-1 的 SSL Certificate

比較新的簽章都包含了比較強的 cryptographic hash algorithm,像是 SHA-256 的:

現在差不多 2013 年年底,所以大約還有兩年的時間...

GoDaddy 將 Lavabit 的 SSL Certificate 撤銷了...

在「美國法院可以強制公司交出 SSL Private Key...」這篇提到法院文件顯示 Lavabit 的 SSL Certificate 已經被 FBI 拿走。

消息公開後幾天,GoDaddy 終於記得要依照程序,主動把 Lavabit 的 SSL Certificate 撤銷:「GoDaddy Pulls Lavabit's Security Creds Because The FBI Got Ahold Of Its Encryption Keys」。

巡迴庭的消息好像還沒出來...

美國法院可以強制公司交出 SSL Private Key...

前幾天解密的文件證實了先前的傳言:美國法院可以以協助犯罪搜查的名義,強制商業公司交出 SSL Private Key 給 FBI,並且可以用「偵查犯罪中」的理由要求公司不得公開這件事情。

報導在這:「Edward Snowden’s E-Mail Provider Defied FBI Demands to Turn Over Crypto Keys, Documents Show」,解密的文件 (整個系列的文件) 則在「Redacted Pleadings Exhibits 1 23」這邊可以讀到。

Edward Snowden 的 E-mail 服務提供商 Lavabit 在七月時被法院要求配合調查,其中被要求交出 SSL Private Key:

A week later, prosecutors upped the ante and obtained the search warrant demanding “all information necessary to decrypt communications sent to or from the Lavabit e-mail account [redacted] including encryption keys and SSL keys.”

而且「交出 SSL key 這件事情」不得公開:

The judge also rejected Lavabit’s motion to unseal the record. “This is an ongoing criminal investigation, and there’s no leeway to disclose any information about it.”

而 Lavabit 最後決定以紙本形式提供:

In an interesting work-around, Levison complied the next day by turning over the private SSL keys as an 11 page printout in 4-point type. The government, not unreasonably, called the printout “illegible.”

在法院要求提供電子格式後,Levison (Lavabit 的頭) 決定讓 Lavabit 停止服務,同時因為受限封口令,網站上只能寫得很隱晦,表達對美國的不信任:

這件事情預定要到第四巡迴庭去打:「Let's rally for Lavabit to fight for the privacy rights of the American people. | Rally.org」。

用 StartSSL 申請免費 SSL 憑證的說明...

鑑於 NSA 監聽的關係 (國內最近也很流行這套?),最近國外介紹 StartSSL 的文章又熱門起來了:「Switch to HTTPS Now, For Free」。

不過因為 StartSSL 多了憑證驗證的問題,使得一般人申請變得相當麻煩,所以就有很多文章介紹 :o


這邊的 Generate Private Key 並不是你打算申請的 HTTPS 要用的,而是個人憑證...

這次這篇介紹文用了大量的圖片截圖,並且把產生 private key 以及 csr 的指令都列出來,後面還教你怎麼設定 nginx,相較於其他文件,應該是很清楚了...

Wildcard EV Certificate...

Netcraft 這篇「Wildcard EV certificates supported by major browsers」提到幾個重點...

首先是 EV 規範內禁止使用 Wildcard certificate (出自「Guidelines ForThe IssuanceAnd Management Of ExtendedValidationCertificates」):

Wildcard certificates are not allowed for EV Certificates.

然後還是有人發 *.cclearning.accenture.com,而且主流瀏覽器會正常照 EV 模式顯示出來:(這邊拿 Google Chrome 的範例,原文有所有截圖)

只有 Safari 的手機版本當作普通 certificate 處理的:(下面兩張圖,上圖是桌機版,下圖是手機版)

被抓出來鞭後應該會修正... 吧?

Update:感謝 comment 的糾正,Safari 的地方寫錯了...