網站如何使用HTTPS如何防止網站被劫持?
相信大家對于HTTP與HTTPS協議都或多或少聽說過,HTTP協議在Web中的應用是十分廣泛的,只不過最近幾年HTTPS慢慢火熱起來了,大到BAT這類企業的網站默認都是HTTPS協議,小到一些個人博客網站也啟用了HTTPS來嘗鮮。
我們都聽人家說過,HTTPS比HTTP要安全、防劫持,那為什么HTTPS就能做到這點呢,而HTTP就不行呢?
其實在HTTP協議中,所有的數據都是明文傳輸的,試想一下,如果黑客攔截到了請求,那所有的數據都可以直接看到,很不安全。HTTPS雖不能稱之為絕對的安全,但是一般黑客想劫持也很難,因為HTTPS在HTTP的基礎上再加了一個SSL層,數據是加密傳輸的。
常見的劫持手段有以下幾種,我來來詳細看看HTTPS是如何規避的。
1、DNS劫持 / 中間人劫持
有這樣一個場景:我們訪問 www.abc.com 時,要先過DNS查找出此域名對應的IP地址。假設DNS被人劫持了,將 abc.com 這個域名本該綁定的IP(1.2.3.4)換成了黑客的服務器IP(5.6.7.8)。那我們訪問abc.com 時其實是和黑客的服務器進行通訊的,黑客可以在服務器里做一些操作,比如說偽造一個網站,或者將用戶請求再傳到 www.abc.com 真實的服務器中,以此來獲取用戶的敏感信息。
上面這種場景一旦存在,就構成了中間人攻擊。黑客通過劫持了DNS,將用戶的域名綁定到了一個非源站的IP上,以此達到劫持的目的。
這在HTTP協議下就直接被劫持了,但在HTTPS協議下就不行。因為黑客的服務器要提供一個CA證書,這樣才能保證客戶端(即訪客)和服務器間建立SSL連接,而這個CA證書是由國際第三方機構頒發的,無法偽造!如果黑客服務器做了自簽名證書,那訪客在連接到黑客服務器時,瀏覽器也會提示你網站證書不可靠,如下圖示:
就算繼續訪問,內容在傳輸過程中是無法被解密的。
請注意:大家千萬不要安裝一些不受信任的證書!如果安裝了不受信任的證書,那此證書頒發方就能解析你的HTTPS請求,很危險。
開啟了HTTPS后,就建議把HTTP協議給停了,或者強制重定向到HTTPS協議。
2、內容數據及流量劫持
前面說到了,HTTPS在HTTP的基礎上加了SSL層,數據在傳輸過程中是加密的,加密方式采取的是非對稱加密,安全系數很高。所以在數據劫持上不太可能。
在以前我們還經常看到這種現象,瀏覽器里打開一個網頁,然后右下角彈出一個運營商推廣的廣告,十分惡心,這就是流量劫持。如果用HTTPS協議則不會出現這種廣告植入的情況了,這也是由于HTTPS策略決定的,比如說:
HTTPS協議的網站中無法引用HTTP協議的資源;
SSL協議提供數據加密與完整性校驗,確保了數據的機密性和完整性。
以上就是我的觀點,對于這個問題大家是怎么看待的呢?歡迎在下方評論區交流 ~ 我是科技領域創作者,十年互聯網從業經驗,歡迎關注我了解更多科技知識!