Chrome 或將於2018年正式棄用 HPKP 公鑰固定標準

Chrome 或將於2018年正式棄用 HPKP 公鑰固定標準Chrome 或將於2018年正式棄用 HPKP 公鑰固定標準

那麼問題到底發生在哪裏?linux

HPKP 公鑰固定所攜帶的是中級證書或者根證書的哈希值,並與終端瀏覽器約定此哈希一般會在 1 年左右失效。nginx

例如藍點網目前使用的是 TrustAsia(中級 CA)提供的證書,咱們已經將 TrustAsia 的中級證書哈希進行固定。瀏覽器

server
    {
        listen 443 ssl http2;
        ssl on;
        ssl_certificate /usr/local/nginx/conf/vhost/crt/www.landiannews.com.crt;
        ssl_certificate_key /usr/local/nginx/conf/vhost/crt/www.landiannews.com.key;
        # 啓用嚴格安全傳輸HSTS 
	add_header Strict-Transport-Security "max-age=63072000; includeSubdomains; preload";
	# 啓用 HPKP 公鑰固定
        add_header Public-Key-Pins 'pin-sha256="IiSbZ4pMDEyXvtl7Lg8K3FNmJcTAhKUTrB2FQOaAO/s="; pin-sha256="klO23nT2ehFDXCfx3eHTDRESMz3asj1muO+4aIdjiuY="; max-age=2592000; includeSubDomains';
        ssl_session_timeout 5m;
 }

若是 1 年後藍點網再也不使用 TrustAsia 簽發的證書而換成其餘,這會形成實際使用證書與固定的證書哈希不一樣。那麼瀏覽器就會直接攔截用戶與藍點網服務器之間的鏈接,瀏覽器會認爲新更換的 CA 多是想進行惡意劫持。緩存

由此可引起非安全方面的拒絕訪問攻擊安全

安全研究員斯科特稱攻擊者可劫持用戶訪問並返回惡意 HPKP 頭,這種操做並不會形成用戶的數據發生泄露。但惡意 HPKP 頭在被瀏覽器接收後會阻止用戶正常訪問網站,由於瀏覽器校驗到的 HPKP 頭與真實服務器不一樣。所以惡意攻擊者能夠利用 HPKP 公鑰固定策略無差異的對全部 HTTPS 網站發起這種有點另類的拒絕訪問攻擊。服務器

雖然網站全部者始終沒有丟失對網站和服務器的控制權, 但因爲固定哈希已經被接收所以沒有辦法清除緩存。session

撰寫該標準的谷歌工程師稱 HPKP 很可怕dom

參與撰寫和制定該標準(RFC 7469)的谷歌工程師稱公鑰固定變得很是可怕,該標準會對生態形成嚴重危害。除了惡意攻擊者能夠僞造 HPKP 頭進行拒絕訪問攻擊外,若是證書發生泄露須要進行吊銷也會引起較大問題。由於吊銷舊證書後再請求籤發新證書只能選擇此前固定的 CA 機構,你不能再選擇新的 CA 機構爲你簽發證書。網站

基於此方面考慮 HPKP 標準在制定時已要求網站至少固定兩份哈希,如藍點網固定的是 TrustAsia 和 Comodo。server

所以最終更換證書時我只能繼續選擇由 TrustAsia 或 Comodo 簽發的證書, 其餘的證書瀏覽器則會拒絕接受。

Google Chrome v67 版開始棄用 HPKP

目前已經支持 HPKP 公鑰固定的瀏覽器有 Google Chrome 瀏覽器、Mozilla Firefox 瀏覽器以及 Opera 瀏覽器。既然做爲標準參與制定的谷歌都決定放棄支持,Mozilla Firefox 和 Opera 勢必也會在後續中止支持公鑰固定。

谷歌去年 8 月的數據顯示全球啓用 HPKP 的站點僅只有 375 個,這個數字對於整個互聯網來講真的是微不足道。同時因爲不少網站使用 CDN 或者如 CloudFlare 類的 DDoS 防禦,此類服務自己就沒準備支持 HPKP 公鑰固定。

最終谷歌會在 2018 年 5 月份發佈的 Chrome v67 版中正式棄用 HPKP,使用該標準的網站能夠提早撤銷固定了。

更多Linux諮詢請查看www.linuxprobe.com

相關文章
相關標籤/搜索