這只能掙扎,但還是要掙扎啊!
Certificate Patrol 是一個 Firefox 延伸套件,你可以設定在新看到 SSL Certificate 的時候跳出一個視窗來告訴你這個 SSL Certificate 的資訊:

如果你平常有在用 https://mail.google.com
,結果突然發現有天跳出視窗,你就應該要有所警覺了...
幹壞事是進步最大的原動力
這只能掙扎,但還是要掙扎啊!
Certificate Patrol 是一個 Firefox 延伸套件,你可以設定在新看到 SSL Certificate 的時候跳出一個視窗來告訴你這個 SSL Certificate 的資訊:
如果你平常有在用 https://mail.google.com
,結果突然發現有天跳出視窗,你就應該要有所警覺了...
這些 CA 是怎麼管理下面的單位的啊...
Slashdot 報導了 EFF 的 Chris Palmer 發現有大量 Unqualified Name 被 sign 過:「Thousands of SSL Certs Issued To Unqualified Names」、「Unqualified Names in the SSL Observatory」。
依照原文中「You can also use the Observatory in an Amazon EC2 instance we created.」這句話,應該是直接掃整個 IPv4 network 了吧,反正以現在的各種技術來說,IPv4 address space 不大?
結果相當豐碩,包括了 2201 個 "localhost"
、806 個 "exchange"
、2383 個 /^\w*exchange\d+$/
、5657 個 /^\w*exch\d*$/
。光是可以在 Internet 上被觀察到的 Unqualified Name 就有 37244 個。
甚至連 EV Certificate 都有 Unqualified Name 被 sign:「www.prism.gatech.edu/~gmacon3/ssl-observatory/unqualified_local_rfc1918_ev.txt」。(那個 VeriSign 你太誇張了,"CN=Bownedev"
& "CN=qa-sescib-web1"
& "CN=tc-teweb01-s"
你也能過?EV 的文件檢查根本沒再看的喔?)
在「www.prism.gatech.edu/~gmacon3/ssl-observatory/unqualified_local_rfc1918_all.txt」這邊有張表列出出包單位的數量可以看...
雖然一月就做完這份資料,但不得不說 EFF 補刀的時間真棒... 趁這陣子 CA 架構問題正熱的時候寫一篇來補一刀 XD
Google 在愚人節在 Google Online Security Blog 上發表的方法:「Improving SSL certificate security」,試著提供一些資源幫助解決 SSL certification 目前遇到的問題...
前陣子 Comodo 的下游被破台後 (還不只一家),有不少人又開始在探討現有 SSL certification 所用的 PKI 架構 (公開金鑰基礎建設),也就是 CA (數位證書認證中心) 的問題。
Google 給的方法是拿 SSL certification 的 SHA1 hex string,加上 .certs.googlednstest.com
組合成一個 domain 名稱,接著拿這個 domain 去查 TXT record,Google 會傳回三個數字讓你判斷這個 SSL certification 的可靠度。
這三個數字分別是:
雖然文章裡面沒提,不過以數字推算,這邊的「天數」應該是指 1970 年 1 月 1 日到現在的天數...
使用 DNS 查詢的好處在於 DNS 有 cache (Google 把 TTL 設為 86400),而資料的正確性可以靠正在推廣的 DNSSEC 建立。
接下來應該會有人實做 extension 測試了,過一陣子再回頭來看看發展。
libwww-perl 裡的 LWP::UserAgent
可以處理 HTTPS,並利用 CA 驗證 public key 是否簽過。在 FreeBSD 下安裝 ca_root_nss 後可以在 /usr/local/share/certs/
下看到檔案,於是可以這樣用:
#!/usr/bin/env perl use strict; use warnings; use LWP::UserAgent; INIT { my $ua = LWP::UserAgent->new; $ua->ssl_opts(SSL_ca_file => '/usr/local/share/certs/ca-root-nss.crt'); my $res = $ua->get('https://mail.google.com/mail/'); print $res->content; }
在 Debian 或是 Ubuntu 下則是透過 ca-certificates 裝到 /etc/ssl/certs/
下,並且分成很多檔案,這時候本來的 ssl_opts
就要改成 SSL_ca_path => '/etc/ssl/certs/';
。
PS:FreeBSD 上因為是單檔,依照 SSL_CTX_load_verify_locations(3) 這邊的說明,沒辦法用 CApath...
之前被人破台,利用 Comodo CA 生出 addons.mozilla.org SSL certification 的 private key 被放出來了:「Comodo Hacker releases Mozilla certificate」。借 Netcraft 的圖:
Firefox 的 revoke 機制不怎麼完善,對於用 Firefox 的人,直到 Mozilla 有新的方法解決之前都必須很小心了 :/
這兩件事情加起來會不會太巧合...
首先是有攻擊者成功利用 Comodo CA 產生 www.google.com
、login.yahoo.com
、login.skype.com
、addons.mozilla.org
、login.live.com
的 SSL certificate:「Report of incident on 15-MAR-2011」,雖然被 revoke (撤銷),但是我們知道 revoke 機制極度脆弱:「Revocation doesn't work」。
過沒幾天,有人發現 AT&T 到 Facebook 的流量會流經中國 ISP 的網路設備:「Facebook traffic mysteriously passes through Chinese ISP」。
關於這幾件事情,我們能做的並不多,只能僅可能的做:
接下來就是祈禱了...
老舊的 Notebook 是跑 32bits 版本 (因為 CPU 根本就不支援 64bits),把 Java 開起來 (我平常是關掉的),連上 SSLVPN 後就會自動安裝了 (安裝的過程中會跳視窗出來要 sudo permission),但在 x86_64 下面卻一直跑不起來,就沒辦法連回公司內部網路...
網路上找了找發現這篇:「Manual Installation only for Ubuntu Linux 10.10 64-bit」,居然要裝 32bits Firefox XDDD
自己亂翻以後發現 vpnc - client for cisco vpn concentrator 可以用,而且有被整合進 Network Manager,測了以後發現沒問題,這樣我的 Notebook 也換成 vpnc 好了...
Update:剛剛在 Notebook 上重設,發現不是 vpnc 連上去 (這是 IPSec VPN),而是 OpenConnect...
接下來要找 Juniper SSLVPN 的 solution 了...
SNI 是「Server Name Indication」的縮寫,是 SSL Virtual Hosting 中很重要的一塊。
到目前為止,最主要是卡在 Windows XP 平台的 SSL/TLS 沒有支援,導致使用系統 SSL/TLS Library 的 IE6/7/8 都不支援 SNI。以 gs.statcounter.com 的數據「Top 5 Operating System from Jan 10 to Jan 11」來看,Windows XP 還有 48% 的市占率...
要等到 Windows XP 的市占率夠低後才有機會看到 SNI CDN...