wireshark抓https包


https雙向加密的,如果需要解密數據,除非知道 客戶端/服務器 任何一方私鑰!否則無法解密,常用手段:

(1)基於vpn協議做中間人攻擊抓包

這類工具諸如 fiddler ,實現的是中間人代理,它不需要客戶端/服務器一方私鑰,而是將客戶端私鑰改為fiddler自己的,這樣每次通信都使用自己的私鑰加密,服務器就可以通過公鑰解密了。。而且只能抓http/https包。。。。

(2)基於網卡tcp抓包

要知道fiddler抓包是基於應用層協議抓包!所以數據更接近真實得到的。而wireshark基於網絡層抓包。所以抓到的都是一些基於網卡發來的tcp/ip協議的包:

列表首先能看到的就是雙方的ip,也就是tcp/ip包。然后就是應用層協議,有http/ack/tls等等。如果協議是公開的,就可以直接顯示數據的。https協議由於不知道客戶端/服務器私鑰,所以無法解密!

(2.1)好在chrome強大,再https通信過程中,如果設置環境變量:

SSLKEYLOGFILE C:\Users\xx\sslkey.log

chrome就會自動把每次https通信的客戶端私鑰/服務器端公鑰記錄到上面的文件中!為什么會有很多行呢????客戶端每次通信的時候都會隨機生成一個私鑰和服務器通信的!

(2.2)wireshark配置

wireshark可以利用 sslkey.log 解密所有數據了。只需要
編輯-------首選項------protocols-------tls:

請注意, 編輯-------首選項------protocols-------tls ,原來老版本的(2019年前的)是ssl。所以別說找不到了。。

(2.3)刪除sslkey.log

必須得強調一下 C:\Users\xx\sslkey.log 文件抓包前需要刪除!否則可能會抓包卡死!

博客地址:http://blog.yoqi.me/?p=15975


免責聲明!

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



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