溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

HTTPS該怎么用才安全?

發(fā)布時(shí)間:2020-08-11 02:58:44 來源:網(wǎng)絡(luò) 閱讀:807 作者:子羲有曰 欄目:安全技術(shù)

HTTPS新聞

我國仍然有300多萬的Windows server2003、XP、Vista用戶。而微軟早已宣布不再對(duì)“Windows server2003、XP、Vista”進(jìn)行更新服務(wù)了,由于系統(tǒng)得不到安全加固,使用這些系統(tǒng)進(jìn)行web數(shù)據(jù)交互,更容易引發(fā)安全事故:用戶信息泄露、系統(tǒng)遭受***、資金被盜、竊取數(shù)據(jù)等等。

國外的大型互聯(lián)網(wǎng)公司很多已經(jīng)啟用了全站 HTTPS,這也是未來互聯(lián)網(wǎng)的趨勢(shì)。

百度是國內(nèi)個(gè)全站部署 HTTPS,對(duì)國內(nèi)互聯(lián)網(wǎng)的全站 HTTPS 進(jìn)程必將有著巨大的推動(dòng)作用。

國內(nèi)的大多網(wǎng)站并沒有全站部署 HTTPS,只是在一些涉及賬戶或者交易的子頁面/子請(qǐng)求上啟用了HTTPS。

微軟和google都已經(jīng)宣布2016年及2017年之后不再支持 sha1 簽名證書。

Mozilla更是堅(jiān)決,在2016年7月1日起就停止支持sha1算法的SSL。


引言

最近有朋友問我,為什么很多網(wǎng)站變成“https://XXX”了。這是因?yàn)?/span>http數(shù)據(jù)傳輸不安全,而https可以保護(hù)用戶隱私、防止流量劫持。

當(dāng)然,現(xiàn)在https中的“TLS1.0 和 SSL3.0”也不安全了。

那https該怎么用才安全呢?下面就簡單介紹一下“https”所提供的解決方案。


HTTPS概述

HTTPS 可以認(rèn)為是 HTTP + TLS

HTTP 協(xié)議大家耳熟能詳了,目前大部分 WEB 應(yīng)用和網(wǎng)站都是使用 HTTP 協(xié)議傳輸?shù)摹?/span>

TLS 是傳輸層加密協(xié)議,它的前身是 SSL 協(xié)議,最早由 netscape 公司于 1995 年發(fā)布,1999 年經(jīng)過 IETF 討論和規(guī)范后,改名為 TLS。如果沒有特別說明,SSL 和 TLS 說的都是同一個(gè)協(xié)議。

HTTP 和 TLS 在協(xié)議層的位置以及 TLS 協(xié)議的組成,如下圖:

HTTPS該怎么用才安全? 

TLS 協(xié)議主要有五部分:應(yīng)用數(shù)據(jù)層協(xié)議、握手協(xié)議、報(bào)警協(xié)議、加密消息確認(rèn)協(xié)議心跳協(xié)議。

TLS 協(xié)議本身又是由 record 協(xié)議傳輸?shù)?,record 協(xié)議的格式如上圖最右所示。

目前常用的 HTTP 協(xié)議是 HTTP1.1,常用的 TLS 協(xié)議版本有如下幾個(gè):TLS1.2、TLS1.1、 TLS1.0和SSL3.0。

其中 SSL3.0 由于 POODLE ***已經(jīng)被證明不安全,但統(tǒng)計(jì)發(fā)現(xiàn)依然有不到 1% 的瀏覽器使用 SSL3.0。TLS1.0 也存在部分安全漏洞,比如 RC4 和 BEAST ***。

TLS1.2和TLS1.1暫時(shí)沒有已知的安全漏洞,比較安全,同時(shí)有大量擴(kuò)展提升速度和性能,推薦大家使用。但是Windows server2003、XP、Vista不支持TLS1.1和TLS1.2。

    需要關(guān)注一點(diǎn)的就是 TLS1.3 將會(huì)是 TLS 協(xié)議一個(gè)非常重大的改革。不管是安全性還是用戶訪問速度都會(huì)有質(zhì)的提升。不過目前沒有明確的發(fā)布時(shí)間。

    同時(shí) HTTP2 也已經(jīng)正式定稿,這個(gè)由 SPDY 協(xié)議演化而來的協(xié)議相比 HTTP1.1又是一個(gè)非常重大的變動(dòng),能夠明顯提升應(yīng)用層數(shù)據(jù)的傳輸效率。


HTTPS怎么用才安全?

HTTP 本身是明文傳輸?shù)?,沒有經(jīng)過任何安全處理。

例如用戶在百度搜索了一個(gè)關(guān)鍵字,比如“蘋果手機(jī)”,中間者完全能夠查看到這個(gè)信息,并且有可能打電話過來騷擾用戶。也有一些用戶投訴使用百度時(shí),發(fā)現(xiàn)首頁或者結(jié)果頁面浮了一個(gè)很長很大的廣告,這也肯定是中間者往頁面插的廣告內(nèi)容。如果劫持技術(shù)比較低劣的話,用戶甚至無法訪問百度。

    這里提到的中間者主要指一些網(wǎng)絡(luò)節(jié)點(diǎn),是用戶數(shù)據(jù)在瀏覽器和web服務(wù)器中間傳輸必須要經(jīng)過的節(jié)點(diǎn)。比如 WIFI 熱點(diǎn),路由器,防火墻,反向代理,緩存服務(wù)器等。

    在 HTTP 協(xié)議下,中間者可以隨意嗅探用戶搜索內(nèi)容,竊取隱私甚至篡改網(wǎng)頁。不過 HTTPS 是這些劫持行為的克星,能夠完全有效地防御。總體來說,HTTPS 協(xié)議提供了三個(gè)強(qiáng)大的功能來對(duì)抗上述的劫持行為:

內(nèi)容加密瀏覽器到web服務(wù)器的內(nèi)容都是以加密形式傳輸,中間者無法直接查看原始內(nèi)容。

    加密算法一般分為兩種,對(duì)稱加密和非對(duì)稱加密。所謂對(duì)稱加密(也叫密鑰加密)就是指加密和解密使用的是相同的密鑰。而非對(duì)稱加密(也叫公鑰加密)就是指加密和解密使用了不同的密鑰。

身份認(rèn)證保證用戶訪問的是web服務(wù),即使被 DNS 劫持到了第三方站點(diǎn),也會(huì)提醒用戶沒有訪問web服務(wù),有可能被劫持。

    身份認(rèn)證主要涉及到 PKI 和數(shù)字證書。通常 PKI(公鑰基礎(chǔ)設(shè)施)包含如下部分:

  •     End entity:終端實(shí)體,可以是一個(gè)終端硬件或者網(wǎng)站

  •     CA:證書簽發(fā)機(jī)構(gòu)

  •     RA:證書注冊(cè)及審核機(jī)構(gòu)。比如審查申請(qǐng)網(wǎng)站或者公司的真實(shí)性

  •     CRL issuer:負(fù)責(zé)證書撤銷列表的發(fā)布和維護(hù)

  •     Repository:負(fù)責(zé)數(shù)字證書及 CRL 內(nèi)容存儲(chǔ)和分發(fā)

數(shù)據(jù)完整性防止內(nèi)容被第三方冒充或者篡改。

    openssl 現(xiàn)在使用的完整性校驗(yàn)算法有兩種:MD5 或者 SHA。由于 MD5 在實(shí)際應(yīng)用中存在沖突的可能性比較大,所以盡量別采用 MD5 來驗(yàn)證內(nèi)容一致性。SHA 也不能使用 SHA0 和 SHA1,中國山東大學(xué)的王小云教授在 2005 年就宣布破解了 SHA-1 完整版算法。SHA家族的五個(gè)算法,分別是SHA-1、SHA-224、SHA-256、SHA-384和SHA-512,后四個(gè)有時(shí)并稱為SHA-2。


向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI