訪問了一次百度網頁,你都經歷了什么?https及tcp協議揭秘


打開https://www.baidu.com/ 網頁一個簡單的動作,都經歷了什么?你想探究內部的原理嗎?那我們一起去探索吧

1.准備工作

   安裝好wireshark。Wireshark(前稱Ethereal)是一個網絡報文分析軟件。網絡封包分析軟件的功能是擷取網絡封包,並盡可能顯示出最為詳細的網絡封包資料。Wireshark使用WinPCAP作為接口,直接與網卡進行數據報文交換。

 2.抓取報文

   打開wireshark,並開啟監聽模式,打開瀏覽器,輸入https://www.baidu.com/ ,等待返回后,關閉瀏覽器,最后停止wireshark監聽,並保存文件。

3.分析報文

  3.1 查看百度的地址,cmd命令行nslookup

C:\Users\dell>nslookup www.baidu.com
服務器:  ns-pd.online.sh.cn
Address:  202.96.209.133

非權威應答:
名稱:    www.a.shifen.com
Addresses:  115.239.210.27
          115.239.211.112
Aliases:  www.baidu.com

從上面可以知道,先訪問的是DNS服務器,上篇文章<

你所忽略的DNS---DNS實戰及深度解讀

>已經詳細描述了dns協議的交互過程。本節我們重點查看和百度網站的交互。

3.2 分析報文

從上面可以知道百度有兩個IP地址,

115.239.210.27
115.239.211.112

從wireshark抓取的情況看,給我提供服務的是第一個ip地址

115.239.210.27

那么,我就可以根據ip地址在wireshark上進行分析了

(ip.src==172.16.86.71 and ip.dst_host==115.239.210.27) or (ip.src==115.239.210.27 and ip.dst_host==172.16.86.71)

如下圖所示:

3.3 分析過程

通過上面的報文我們可以看到本地機器(172.16.86.71)與百度先進行了tcp協議的交互,然后TLSv 1.2,然后tcp和TLSv 1.2交互。

3.3.1 tcp的三次握手

第一次握手報文,從客戶端到服務器端

第二次握手,從服務器端到客戶端

第三次握手,從客戶端到服務器端

 

總結,從上面的分析,可以看出

序號123,124,125是一個握手過程

序號122,126,127是一個握手過程。

3.3.2 https

  • TLS概述:TLS和他的前身SSL,都是提供在計算機網絡上安全通信的密碼學協議,最常見就是用於HTTPS中,用來保護Web通信的。
  • 發展史:網景公司開發了原始的SSL協議,SSL 1.0因為本身存在着嚴重的安全問題,所以從未被公開發布。只有SSL 2.0和SSL 3.0是被公開發布和使用的。后來為了對SSL進行標准化,推出了TLS,TLS 1.0就對應着SSL 3.0。TLS后來又有了1.1版本和1.2版本,1.3版本目前還在草案中。現在除了TLS 1.2和TLS 1.3草案之外,所有早期的協議都存在安全性問題,不建議使用。

  https交互流程,如下圖所示

第一階段

1.client hello

tcp響應

2.服務端

3.Change Cipher Spec

客戶端tcp響應

4.Encrypted Handshake Message

客戶端發送請求

5.傳送數據

 6.關閉瀏覽器退出傳送數據

 

 3.3.3 4次揮手

 

 1.第一次揮手

2.第二次揮手

3. 第三次揮手

4.第四次揮手

總結:第三次揮手和第四次揮手之間seq和ack倒置了。

參考資料

【1】https://segmentfault.com/a/1190000014740303?utm_source=tag-newest

 【2】https://mp.weixin.qq.com/s?__biz=MzI3NzE0NjcwMg==&mid=2650123669&idx=1&sn=55743603e490373474be439cb35430ae&chksm=f36bb0b4c41c39a2cfb36d4e362b932a7dcee682a26b78570050ee5860a14be5e021155a7bfe&scene=27#wechat_redirect

【3】https://mp.weixin.qq.com/s?__biz=MzUzMTA2NTU2Ng==&mid=2247486411&idx=2&sn=18f4245ae36c37ccd8d261114f4a453b&chksm=fa49747acd3efd6cddee211efa6cb695a69776cc780aa41d64096958859307b9e5850edbf574&scene=27#wechat_redirect

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM