Wireshark網絡抓包(九)——爲什麼我的 Wireshark 抓不到/抓不全 HTTP 數據包

Wireshark 抓不到/抓不全 HTTP 數據包
目錄
1. 前言
2. 簡單分析
3. 具體過程
4. 相關測試
5. 總結

一、前言 ↶
        用 Wireshark 練習抓包,發現怎麼抓也抓不到我想要的 http 包而且抓到的 http 都很少,連頁面的 HTML 包都抓不到。
        瀏覽器都能抓到這麼多 http 包,強大的 Wireshark 怎麼會抓不到 http 包呢,一度認爲自己的 Wireshark 或者 網卡 壞掉了。上網查找這個現象竟然沒有適合我的情況的解答。
        後來直到我看見了這條討論 Mac 電腦, wireshark 很多 http 包抓不到!,點進去一看。哇!簡直跟我情況一模一樣,一條條翻下去。原來如此,是我傻了,我抓的服務器都是 https 加密的鏈接,Wireshark 沒有再次設置的情況下是沒有辦法抓到包的 https 的數據包。那些 HTML 數據包也是靠 https 傳輸的,怪不得我抓不到網站的數據包,差點以爲我的 Wireshark 或者 網卡 壞掉了。。
        因此,我把這次遭遇記錄在我的博客裏,o(╥﹏╥)o。

二、簡單分析 ↶
        經過一陣子的資料查找,基本上找到了如何讓 Wireshark 抓取 https 數據包的方法。網上通用的方法都是,在任意一個盤符下,建立以下文件目錄,例如:C:\ssl_key\sslog.log,在系統變量中添加一行,變量名爲 SSLKEYLOGFILE,而變量值爲 C:\ssl_key\sslog.log
可以達到這種目的的原因,經過我整理如下:
(1)Wireshark 不知道不知道客戶端/服務器私鑰,所以無法解密 https 傳輸的數據包。
(2)某些瀏覽器如 Firefox 和 Chrome 支持將 TLS 會話中使用的客戶端私鑰/服務器端公鑰用日記文件的方式記錄下來,這樣就可供 Wireshark 加密/解密使用,
(3)爲什麼 log 文件會有很多行呢?客戶端每次通信的時候都會隨機生成一個私鑰和服務器通信的!
 

 

 

發佈了37 篇原創文章 · 獲贊 119 · 訪問量 12萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章