為什麼12306的CA證書SRCA,CRL分發點是個區域網地址?

為什麼12306的CA證書SRCA,CRL分發點是個區域網地址?地址為http://192.168.9.149/crl1.crl,這樣設置不是會導致永久無法吊銷證書嗎?SRCA為何這樣設置?


今天我們近距離參觀一下 SRCA,看看 SRCA 做的是有多麼業餘。想直接看答案的可以跳過分割線前的內容。

1.首先,大家可以參觀一下 sinorailca.com ,作為 SRCA 的官方網站,它的域名竟然過!期!了!
whois:(摘錄於2015-02-16)

Domain Name:http://sinorailca.com
Registry Domain ID:
Registrar WHOIS Server:http://whois.paycenter.com.cn
Registrar URL:http://www.xinnet.com/
Updated Date:2009-02-24T07:06:37.00Z
Creation Date:2009-02-10T02:21:53.00Z
Registrar Registration Expiration Date:2015-02-10T02:19:42.00Z
Registrar:XINNET TECHNOLOGY CORPORATION
Registrar IANA ID:120

逗我呢?就算你不用這個網站,也不至於窮到沒錢續費做個跳轉吧。

2.下面看一下上面那張根證書的問題。首先,最值得詬病的,是它的密鑰長度。1024 位!目前 1024 位證書已經被認為不在安全,更不適宜作為根證書這樣重要的基礎設施,各大瀏覽器廠商均已經完成了對密鑰長度為 1024 位的 RSA 的根證書的移除工作。SHA1簽名其實也不是很好,不過對根證書安全性無影響。

3.證書擴展(X509v3 extensions)完全是胡寫的,只有一個欄位(X509v3 Subject Key Identifier)是規範的。我們按順序分析:

(1)X509v3 Authority Key Identifier: keyid:xx:xx:xx:...:xx
根證書不必包含。

(2)X509v3 Basic Constraints: CA:TRUE
一般會有critical。

(3)X509v3 CRL Distribution Points: 這個就是題目的問題,我們放到分割線後說。

(4)X509v3 Key Usage: Digital Signature, Non Repudiation, Key Encipherment, Data Encipherment, Key Agreement, Certificate Sign, CRL Sign
沒有critical暫且不表,你寫這麼多是逗我呢?你要把根證書掛在網上做數字簽名數據加密?
我們看看 COMODO RSA Certification Authority 的:
X509v3 Key Usage: critical, Certificate Sign, CRL Sign
這才對嘛。根證書本來就應該只是簽名下級證書和簽名 CRL。

========================================================

吐槽完畢,我們再來看看題目關於根證書 CRL 的問題。這個欄位應該是怎樣的呢?大家可以回過頭看看 COMODO 的那個根證書(我認為它最規範)。
看看。
看。
根證書根本不應該有 CRL 分發點嘛!CRL 作為證書吊銷列表,是上級 CA 對自己簽發的證書進行吊銷,在 CRL 中的證書不受系統信任。

但根證書呢?根證書是內置於操作系統或瀏覽器的證書存儲區域(當然用戶也可以手動信任)。根證書作為信任鏈的頂級,該如何決定是否應該信任呢?答案是聽操作系統/瀏覽器廠商的。當一個證書出現問題時,操作系統/瀏覽器廠商會發布補丁將其從證書存儲區中移除。就是這麼原始的方法,不管加根 CA 還是刪根 CA 都是靠更新機制,根證書中寫 CRL 沒有意義。

至於 SRCA 寫個內網地址,就是胡鬧了。

========================================================

多扯幾句,瀏覽器之所以會信任任何一個根 CA,是有很多條件的,
比如證書管理機制要完善,根證書都是用 HSM 並鎖保險柜的,這是一個 CA 的命根子,曾有 CA 根證書密鑰被盜導致公司倒閉的。
比如技術上不能有漏洞,像 1024 位密鑰現在是不會在任何一家真正的 CA 看到的。
比如簽發審核流程要規範,不能簽假證書。
這些有專業的第三方審計機構每年進行審計(詳細請看 WebTrust)。

現在證書之所以這麼貴,而證書製作起來沒有成本(你用 OpenSSL 模仿著可以做一個除了密鑰之外和其他根證書一模一樣的),但簽發起來的密鑰保管成本和身份驗證成本、風險、保險成本都是真正 CA 的很大一部分開支,如果隨便簽證書那 CA 早就不可信了。

所以強烈建議大家不要信任 SRCA 這個根證書
12306 網站其實不是買不起可信的證書,看:
https://epay.12306.cn/
諾,VeriSign 的證書都買得起。

我不得不懷疑 12306 就是故意想引誘我們信任它這個根證書然後做壞事


2017年12月17日更新。

http://kyfw.12306.cn終於在前面不知道是哪一天部署了一張由國際知名ca機構簽的ov型https證書了。

對於前面的吐槽終於告一段落了。

https://myssl.com/kyfw.12306.cn

為鐵路客運服務的這一個改變點個贊!

____________________@

做CA這種機構,其實是個很專業的活。

應該有人聽說過Wosign的事件吧?

【9.27更新】Mozilla 將不再信任 WoSign 和 StartCom 頒發的新證書

Wosign舊的根證書被幾大瀏覽器廠商不信任了

CA/Additional Trust Changes

Wosign當然不能丟掉CA這一塊的業務。

重新開發了一套證書籤發系統。

沃通新證書系統順利通過德國Cure 53白盒子安全測試

https://groups.google.com/forum/#!topic/mozilla.dev.security.policy/19M3L2vbCZY

即使是Mozilla指定的審計的結果基本通過了,但是到後面還有很多工作要做,才能回到可信CA的列表裡。

還有一家叫做廣東CA的機構想要把自己的根證書預置到瀏覽器里。他們也是做了不少的工作

https://groups.google.com/forum/#!topic/mozilla.dev.security.policy/kB2JrygK7Vk

12306自己隨意簽發一個根證書,然後給自己簽發伺服器證書。

是對信息安全的不負責,也是對用戶的不負責任!

kyfw.12306.cn - SSL/TLS安全評估報告

給自己簽發一張5年有效期的證書,不是想偷懶是什麼?

RSA1024的證書,SHA1的簽名演算法,現在都已經是當作不安全的了。

再講一個笑話,自簽證書的兼容性

專業的事情還是應當交給專業的人去做。

一直有個問題,12306的自簽證書用了這麼多年了,他們還想用多少年??

----------

看到前面答案有提到 http://epay.12306.cn 用了可信CA簽發的證書。兩個對比一下就是了。

epay.12306.cn - SSL/TLS安全評估報告

kyfw.12306.cn - SSL/TLS安全評估報告

----------

再補一句,沒記錯的話,簽發這張自簽名證書的時候鐵路應該還是鐵道部,但是現在鐵路變成企業這麼久了,在這個問題上居然一點都沒變。。。

------收到了10個贊,好開心啊-----

為什麼我們現在要花錢買CA證書、開銷伺服器資源、出人力做全站HTTPS改造呢?

做這些事情當然不是吃飽了撐著咯。

HTTPS主要為我們做了兩件事情:

1. 加密通訊中傳輸的數據。別人就算監聽攔截到你的流量,基本上也是沒辦法解密出原始的信息的。

2. 驗證服域名歸屬。CA機構就是一個大家公認的第三發,用來認證當前這個域名。例如知乎這張證書,只要知乎不把私鑰弄丟,我們就可以信任這是知乎的網站。

正好今天看見一個AppleID的釣魚網站。如果通過CA證書來判斷這個網站是不是真的Apple網站的話,只要看一眼就知道了。

not_use_https by https4u

前面有一張是高仿 網站的證書,後面一張是真的 網站的證書,常用網站多認一眼就好了。

前面有知名網路安全專家tombkeeper關於12306根證書的評論。

大概就是講:

1. 12306自己簽發的證書沒有被廣大的操作系統和瀏覽器信任,需要手動添加信任進去。

2. 要手動添加信任,就需要從12306的網站下載那個根證書。

3. 在下載那個根證書之前,系統是不信任那個根的,所以不能走https加密通道來下載。

4. 走非HTTPS通道來下載根證書這麼重要的東西是非常危險的事情。這裡有非全站HTTPS的網站被劫持修改原始內容插入廣告內容的案例。 https://http.https4u.wiki/

5. 如果下載證書的時候被人劫持,更換了那張根證書,其實我們也不知道。

6. 如果根證書被別有用心的人替換,而我們點了信任該根證書。後果不堪設想。

使用HTTPS本意用來保護信息安全的,防止中間人攻擊,防止內容被人篡改的。但是用上了HTTPS卻反而會帶來安全風險,也是醉了。。。並且這麼多年一直沒改變。。。

------20贊了----------

還有一個根證書「所有發布策略」、「所有應用程序策略」的問題等我有空查查資料再來討論。

關於根證書如果出了問題會有什麼後果,參見網友們對於CNNIC的評論

https://www.zhihu.com/question/50634195/answer/193419117


沒關係,反正也沒人信。


鐵路總公司還差這點錢買證書嘛!就算自己要成為CA,好歹你也專業點,因為自己做的獨家買賣才可以如此不顧用戶安全問題,等呢嗎出了安全問題在出來道歉,挽回損失!WTF!


有本事你不用啊


推薦閱讀:

如何看待中國沃通wosign偷偷收購自己的根CA startcom並且簽發github.com的證書?
SSL中,公鑰、私鑰、證書的後綴名都是些啥?
瀏覽器如何驗證HTTPS證書的合法性?
為什麼SSL證書要設有效期?

TAG:SSL證書 | 安全 | 12306中國鐵路客戶服務中心 | 根證書 | 安全漏洞 |