成熟丰满熟妇高潮XXXXX,人妻无码AV中文系列久久兔费 ,国产精品一国产精品,国精品午夜福利视频不卡麻豆

您好,歡迎來到九壹網(wǎng)。
搜索
您的當前位置:首頁HTTPS協(xié)議分析

HTTPS協(xié)議分析

來源:九壹網(wǎng)

1、https的基本概念和工作流程

2、學(xué)會捕獲https封包
3、學(xué)會篩選重要的https封包
4、學(xué)會解密https數(shù)據(jù)包

實驗工具

?wireshark

實驗環(huán)境

?操作機:Windows XP

實驗步驟

HTTPS的工作流程

使用HTTPS協(xié)議工作時,服務(wù)端和客戶端的信息傳輸都會進行加密,所以傳輸?shù)臄?shù)據(jù)都是加密后的數(shù)據(jù)。HTTPS的工作流程如下:

1、客戶端使用HTTPS的URL訪問Web服務(wù)器,要求與Web服務(wù)器建立SSL連接。
2、Web服務(wù)器收到客戶端的請求后,會將網(wǎng)站包含有公鑰的證書信息傳送一份給客戶端。
3、客戶端瀏覽器與Web服務(wù)器開始協(xié)商SSL連接的安全等級,也就是信息加密的等級。
4、客戶端的瀏覽器根據(jù)雙方同意的安全等級,建立會話密鑰,然后利用網(wǎng)站的公鑰將會話密鑰加密,并傳送給網(wǎng)站。
5、Web服務(wù)器利用自己的私鑰解密出會話密鑰。
6、Web服務(wù)器利用會話密鑰加密與客戶端之間的通信。

HTTPS數(shù)據(jù)包的捕獲

由于HTTPS是建立在TCP協(xié)議之上的,所以我們在捕獲之前,可以設(shè)置篩選器為TCP。開始捕獲后,可以通過登錄QQ郵箱的方式,捕獲到含有HTTPS協(xié)議的數(shù)據(jù)包。如下圖所示:

在這個界面的Info列中,可以看到這些數(shù)據(jù)包都是使用HTTPS協(xié)議傳輸?shù)摹6赑rotocol列中,可以看到SSL、TCP以及TLSv1.1等協(xié)議。其中的TLS(Transport Layer Security)其實是SSL的升級版,是為網(wǎng)絡(luò)通信提供安全及數(shù)據(jù)完整性的一種安全協(xié)議。二者都是在傳輸層對網(wǎng)絡(luò)連接進行加密的。
為了便于進一步的分析,這里我們通過著色后提取數(shù)據(jù)包的方式,將我們需要的數(shù)據(jù)包提取出來,這里不再贅述(自行學(xué)習(xí)wireshark的使用)。

HTTPS數(shù)據(jù)包的分析

經(jīng)過提取后的文件進行分析:

首先可以發(fā)現(xiàn)1到3號數(shù)據(jù)包是TCP連接建立時的三次握手的過程。接下來從第4個數(shù)據(jù)包開始,其實就是SSL握手過程中所產(chǎn)生的數(shù)據(jù)包,也就是使用HTTPS協(xié)議加密的信息。
對于第4個數(shù)據(jù)包,包含有客戶端向服務(wù)器發(fā)送的Client Hello信息,以便開始一個新的加密會話連接。展開SSL區(qū)段,可以看到客戶端支持的TLS的版本(Version);生成的隨機數(shù)(Random,以便用于生成對話密鑰);Cipher Suites的值是15,說明支持15種加密算法;支持的壓縮方式(Compression)以及一些擴展(Extension)等:

當服務(wù)器收到客戶端的請求后,就會向客戶端發(fā)出響應(yīng),也就是Server Hello。對于我們這個捕獲文件而言,第6個數(shù)據(jù)包就是服務(wù)器發(fā)送給客戶端的確認信息,告訴客戶端請求已經(jīng)收到:

展開SSL數(shù)據(jù)段,可以看到服務(wù)器支持的TLS版本為1.1。也可以看到服務(wù)器生成的隨機數(shù),用于生成對話密鑰。下面還有加密套件信息,這里的加密套件表示使用RSA公鑰算法來驗證證書以及交換密鑰,用AES加密算法對數(shù)據(jù)進行加密,使用SHA算法來校驗消息內(nèi)容。
客戶端收到服務(wù)器的響應(yīng)后,首先驗證服務(wù)器的證書。如果證書不是由可信任的機構(gòu)頒發(fā)的,或者證書中的域名與實際域名不一致,或者證書已過期,就會向訪問者顯示一個警告,由訪問者選擇是否還要繼續(xù)通信。如果證書沒有問題,客戶端就會從證書中取出服務(wù)器的公鑰。然后,向服務(wù)器發(fā)送一些信息,包括用服務(wù)器公鑰加密的隨機數(shù)編碼改變通知客戶端握手結(jié)束通知等。服務(wù)器發(fā)送給客戶端的數(shù)據(jù)包,如下圖所示:

在Certificate區(qū)段中,保存有證書的詳細信息??梢钥吹秸埱蟮木W(wǎng)站、組織名、地區(qū)名、省名以及國家等的信息。緊接下來的signedCertificate是簽名證書信息?!昂灻钡淖饔镁驮谟?,客戶端(瀏覽器)在確定是否要信任一個網(wǎng)站時,就是通過證書判斷的。所以每個證書上必須要有一份“簽名”。最后一行Length的值為0,表示告訴客戶端“Hello”過程已經(jīng)完成,也就意味著服務(wù)器將不驗證客戶端的證書。
在客戶端收到并驗證服務(wù)器響應(yīng)的證書后,將會把生成的密鑰傳給服務(wù)器,如下圖所示:

在Client Key Exchange中,我們可以看到TLS的類型、版本、長度、握手協(xié)議、握手類型、長度、密鑰交換算法客戶端參數(shù)、公鑰長度以及加密公鑰等信息。而在其它的兩個記錄中,也有著類似的結(jié)構(gòu)。
經(jīng)過以上幾個階段,整個握手過程也就結(jié)束了。接下來客戶端與服務(wù)器進入加密通信的階段,就完全是使用普通的HTTP協(xié)議,但是會使用會話密鑰來加密內(nèi)容。用戶可以發(fā)送通過TLS層使用RC4加密的HTTP的消息,也可以解密服務(wù)端發(fā)送來的由RC4加密的消息。此外還會通過哈希算法來驗證消息是否被篡改。
在應(yīng)用層,客戶端向服務(wù)器發(fā)送的信息為:

可見,發(fā)送的數(shù)據(jù)都經(jīng)過了加密處理。服務(wù)器響應(yīng)客戶端的信息,如下圖所示:

可以看到,這也是使用了SSL進行加密。

了解HTTPS數(shù)據(jù)包的解密

HTTPS的數(shù)據(jù)包并不是絕對安全的,在一定的條件下也可以實現(xiàn)解密的操作,這里我們分析以下實驗文件:

可以看到,這里的數(shù)據(jù)包使用了SSLv3進行加密。為了實現(xiàn)解密,我們需要.key文件。之后在Wireshark中選擇菜單欄的“Edit”->”Preferences”->”Protocols”->”SSL”->”RSA keys list”->”Edit”->”New”,之后進行如下填寫:

之后點擊OK,就可以實現(xiàn)解碼了:

現(xiàn)在已經(jīng)可以看到GET方法等信息。盡管我們對捕獲文件進行了解碼操作,但是并不意味著HTTPS不安全。因為解碼所需要使用的密鑰只能在服務(wù)器導(dǎo)出,不同的服務(wù)器的情況并不一樣,因此想要破解HTTPS的數(shù)據(jù)包,是需要滿足很多的條件的。

參考資料

【1】
【2】謝希仁. 計算機網(wǎng)絡(luò).第5版[M]. 電子工業(yè)出版社, 2008.

轉(zhuǎn)載于:https://www.cnblogs.com/Erma/p/10322963.html

因篇幅問題不能全部顯示,請點此查看更多更全內(nèi)容

Copyright ? 2019- 91gzw.com 版權(quán)所有 湘ICP備2023023988號-2

違法及侵權(quán)請聯(lián)系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com

本站由北京市萬商天勤律師事務(wù)所王興未律師提供法律服務(wù)