HTTPS如何防止流量劫持?

流量劫持總體來說屬于中間人攻擊(Man-in-the-Middle Attack,MITM)的一種,本質(zhì)上攻擊者在通信兩端之間對(duì)通信內(nèi)容進(jìn)行嗅探和篡改,以達(dá)到插入數(shù)據(jù)和獲取關(guān)鍵信息的目的。

能夠?qū)嵤┝髁拷俪值母驹?,是HTTP協(xié)議沒有辦法對(duì)通信對(duì)方的身份進(jìn)行校驗(yàn)以及對(duì)數(shù)據(jù)完整性進(jìn)行校驗(yàn)。如果能解決這個(gè)問題,則流量劫持將無法輕易發(fā)生。

HTTPS如何防止流量劫持?

HTTPS,是HTTP over SSL的意思,提到HTTPS就不得不先簡單描述一下SSL/TLS協(xié)議。SSL協(xié)議是Netscape在1995年首次提出的用于解決傳輸層安全問題的網(wǎng)絡(luò)協(xié)議,其核心是基于公鑰密碼學(xué)理論實(shí)現(xiàn)了對(duì)服務(wù)器身份認(rèn)證、數(shù)據(jù)的私密性保護(hù)以及對(duì)數(shù)據(jù)完整性的校驗(yàn)等功能。1999年IETF將SSL 3.0標(biāo)準(zhǔn)化,是為TLS 1.0版本,目前TLS協(xié)議的最新版本是版本,TLS 1.3標(biāo)準(zhǔn)正在制定中。為了方便,下文將SSL/TLS協(xié)議都簡稱為SSL協(xié)議。

SSL協(xié)議在HTTP請(qǐng)求開始之前增加了握手的階段,在SSL握手階段,客戶端瀏覽器會(huì)認(rèn)證服務(wù)器的身份,這是通過“證書”來實(shí)現(xiàn)的,證書由證書權(quán)威(CA)為某個(gè)域名簽發(fā),可以理解為網(wǎng)站的身份信息,客戶端需要進(jìn)行認(rèn)證,需要確定該證書是否屬于目標(biāo)網(wǎng)站并確認(rèn)證書本身是否有效。最后在握手階段,通信的雙方還會(huì)協(xié)商出一個(gè)用于加密和解密的會(huì)話密鑰。

SSL握手階段結(jié)束之后,服務(wù)器和客戶端使用協(xié)商出的會(huì)話密鑰對(duì)交互的數(shù)據(jù)進(jìn)行加密/解密操作,對(duì)于HTTP協(xié)議來說,就是將HTTP請(qǐng)求和應(yīng)答經(jīng)過加密之后再發(fā)送到網(wǎng)絡(luò)上。

由此可見,因?yàn)镾SL協(xié)議提供了對(duì)服務(wù)器的身份認(rèn)證,所以DNS劫持導(dǎo)致連接錯(cuò)誤服務(wù)器的情況將會(huì)被發(fā)現(xiàn)進(jìn)而終止連接,最終導(dǎo)致DNS挾持攻擊無法實(shí)現(xiàn)。此外SSL協(xié)議還提供數(shù)據(jù)的加密和完整性校驗(yàn),這就解決了關(guān)鍵信息被嗅探以及數(shù)據(jù)內(nèi)容被修改的可能。

  那么HTTPS要如何部署呢?

要將網(wǎng)站進(jìn)行HTTPS支持以達(dá)到防劫持的效果,首先需要的是為網(wǎng)站的域名申請(qǐng)SSL證書。這個(gè)證書必須是由知名CA所簽發(fā)的,這是因?yàn)橹鸆A的根證書廣泛的存在于大多數(shù)瀏覽器和操作系統(tǒng)中,因此可以被客戶端用來校驗(yàn)網(wǎng)站證書是否合法。

傳統(tǒng)CA的證書簽發(fā)流程大體相同,基本上都是根據(jù)證書認(rèn)證的級(jí)別,進(jìn)行一系列不同流程的認(rèn)證,然后認(rèn)證通過后申請(qǐng)者繳納相應(yīng)的費(fèi)用就可以或得到證書。這個(gè)流程相對(duì)比較繁瑣,尤其是對(duì)于個(gè)人和小型網(wǎng)站管理者來說也確實(shí)麻煩,天威誠信建議大家去SSL證書智能管理系統(tǒng)申請(qǐng),一鍵下單,集成主流國際CA,根據(jù)不同需求自動(dòng)進(jìn)行產(chǎn)品選型,系統(tǒng)自動(dòng)生成CSR,一鍵提交訂單,訂單簽發(fā)自動(dòng)下載,讓管理更輕松,讓運(yùn)營更高效。

極客網(wǎng)企業(yè)會(huì)員

免責(zé)聲明:本網(wǎng)站內(nèi)容主要來自原創(chuàng)、合作伙伴供稿和第三方自媒體作者投稿,凡在本網(wǎng)站出現(xiàn)的信息,均僅供參考。本網(wǎng)站將盡力確保所提供信息的準(zhǔn)確性及可靠性,但不保證有關(guān)資料的準(zhǔn)確性及可靠性,讀者在使用前請(qǐng)進(jìn)一步核實(shí),并對(duì)任何自主決定的行為負(fù)責(zé)。本網(wǎng)站對(duì)有關(guān)資料所引致的錯(cuò)誤、不確或遺漏,概不負(fù)任何法律責(zé)任。任何單位或個(gè)人認(rèn)為本網(wǎng)站中的網(wǎng)頁或鏈接內(nèi)容可能涉嫌侵犯其知識(shí)產(chǎn)權(quán)或存在不實(shí)內(nèi)容時(shí),應(yīng)及時(shí)向本網(wǎng)站提出書面權(quán)利通知或不實(shí)情況說明,并提供身份證明、權(quán)屬證明及詳細(xì)侵權(quán)或不實(shí)情況證明。本網(wǎng)站在收到上述法律文件后,將會(huì)依法盡快聯(lián)系相關(guān)文章源頭核實(shí),溝通刪除相關(guān)內(nèi)容或斷開相關(guān)鏈接。

2019-11-11
HTTPS如何防止流量劫持?
流量劫持總體來說屬于中間人攻擊(Man-in-the-Middle Attack,MITM)的一種,本質(zhì)上攻擊者在通信兩端之間對(duì)通信內(nèi)容進(jìn)行嗅探和篡改,以達(dá)到插

長按掃碼 閱讀全文