Home » Posts tagged "ssl" (Page 25)

GitHub 換 SSL certificate

離 expire 時間還很久,但是從 wildcard SSL certificate 換成普通的 SSL certificate:

不過 gist 沒換,用的仍然是 wildcard 這組:

這下可包大了,居然有一堆 "localhost" 這類的 SSL Certificate 被發出來...

這些 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

SSL Certification 驗證問題中 Google 提供的改善方法...

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 的可靠度。

這三個數字分別是:

  • Google 的網頁機器人第一次看到這個 SSL certification 的天數。
  • Google 的網頁機器人最近一次看到這個 SSL certification 的天數。
  • Google 的網頁機器人看過的次數。

雖然文章裡面沒提,不過以數字推算,這邊的「天數」應該是指 1970 年 1 月 1 日到現在的天數...

使用 DNS 查詢的好處在於 DNS 有 cache (Google 把 TTL 設為 86400),而資料的正確性可以靠正在推廣的 DNSSEC 建立。

接下來應該會有人實做 extension 測試了,過一陣子再回頭來看看發展。

在 Perl 裡用 LWP::UserAgent (以及繼承它的模組) 時使用 HTTPS 連線處理 CA 認證...

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 產生 www.google.comlogin.yahoo.comlogin.skype.comaddons.mozilla.orglogin.live.com 的 SSL certificate:「Report of incident on 15-MAR-2011」,雖然被 revoke (撤銷),但是我們知道 revoke 機制極度脆弱:「Revocation doesn't work」。

過沒幾天,有人發現 AT&TFacebook 的流量會流經中國 ISP 的網路設備:「Facebook traffic mysteriously passes through Chinese ISP」。

關於這幾件事情,我們能做的並不多,只能僅可能的做:

接下來就是祈禱了...

在 Ubuntu 10.10 x86_64 下連 Cisco AnyConnect

老舊的 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 了...

Archives