Java?輕松入門(mén)使用Fiddler抓包工具教程
一. 下載安裝Fiddler
這里強(qiáng)烈建議大家在官網(wǎng)上下載安裝,在此附上鏈接https://www.telerik.com/fiddler,在其它地方安裝很有可能會(huì)給你再下一堆不必要的軟件(垃圾全家桶),待下載安裝好后,頁(yè)面大概是這樣的:
二. 設(shè)置抓取HTTPS功能
剛下載安裝好后,是默認(rèn)不支持抓取HTTPS協(xié)議的,要想抓取HTTPS,
先點(diǎn)擊左上角的Tools-Options-HTTPS
然后再選中這三個(gè)選項(xiàng),
接著點(diǎn)擊Actions-Export Root Certificate to Desktop,此時(shí)桌面上會(huì)出現(xiàn)這個(gè)文件:
我們關(guān)閉Fiddler,接著我們需要在瀏覽器上導(dǎo)入證書(shū)(上面這個(gè)文件),以谷歌瀏覽器為例:點(diǎn)擊設(shè)置-安全和隱私設(shè)置-安全-管理證書(shū):
在受信任的根證書(shū)頒發(fā)機(jī)構(gòu)里導(dǎo)入桌面上生成的證書(shū)即可,最后我們重新打開(kāi)Fiddler,就可以抓取HTTPS協(xié)議了
三. 嘗試抓取HTTP/HTTPS協(xié)議
HTTPS也是基于HTTP的一種應(yīng)用層協(xié)議,只是在HTTP的基礎(chǔ)上進(jìn)行了加密而已,F(xiàn)iddler會(huì)自動(dòng)幫助我們進(jìn)行解密,還原成最初HTTP的樣子
我們隨便打開(kāi)一個(gè)頁(yè)面(以搜狗為例),此時(shí)會(huì)在Fiddler的左側(cè)頁(yè)面看到如下信息:
這個(gè)左側(cè)列表中,里面的每一條都是抓取到的HTTP/HTTPS的請(qǐng)求+相應(yīng),大部分情況下都是有請(qǐng)求+對(duì)應(yīng)的相應(yīng)的(除非對(duì)方服務(wù)器掛了),選中其中的任何一條內(nèi)容,都可以觀察到請(qǐng)求和相關(guān)響應(yīng)的詳細(xì)格式和具體的信息(如果覺(jué)得內(nèi)容太多可以隨便選中其中一條按住ctrl+a全選,然后按住delete就可以全部刪除了)
其中顯示顏色為藍(lán)色的內(nèi)容就是獲取到的搜狗搜索頁(yè)面的請(qǐng)求+響應(yīng)
我們雙擊Inspectors:
其中右上角為HTTP請(qǐng)求的詳細(xì)格式(如上圖)
右下角為HTTP響應(yīng)的詳細(xì)格式(如上圖)
最后,我們點(diǎn)擊上方的raw,就可以看到請(qǐng)求和響應(yīng)的原始數(shù)據(jù)啦:
但需注意,請(qǐng)求的原始數(shù)據(jù)就是被用來(lái)直接寫(xiě)入到TCP socket中構(gòu)成HTTP請(qǐng)求的。
但我們看到的響應(yīng)的原始數(shù)據(jù)事實(shí)上是壓縮后的數(shù)據(jù)(網(wǎng)絡(luò)帶寬是一個(gè)高成本的資源,把數(shù)據(jù)壓縮之后傳輸,能夠節(jié)省網(wǎng)絡(luò)帶寬,提高效率降低成本),因此我們需要點(diǎn)擊上面的解壓縮然后才可以看到從TCP socket中讀到的HTTP響應(yīng)數(shù)據(jù)。
解壓縮后如下:
四. 抓包工具的原理
Fiddler 相當(dāng)于一個(gè) “代理”,瀏覽器訪問(wèn)瀏覽器頁(yè)面時(shí),就會(huì)把HTTP請(qǐng)求先發(fā)給Fiddler,F(xiàn)iddler 再把請(qǐng)求轉(zhuǎn)發(fā)給瀏覽器的服務(wù)器,當(dāng)瀏覽器服務(wù)器返回?cái)?shù)據(jù)時(shí),F(xiàn)iddler拿到返回?cái)?shù)據(jù),再把數(shù)據(jù)交給瀏覽器。 因此Fiddler對(duì)于瀏覽器和瀏覽器服務(wù)器之間交互的數(shù)據(jù)細(xì)節(jié),都是非常清楚的,進(jìn)而可以幫助我們完成相應(yīng)的抓包工作。
到此這篇關(guān)于Java 輕松入門(mén)使用Fiddler抓包工具教程的文章就介紹到這了,更多相關(guān)Java Fiddler抓包內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
零基礎(chǔ)入門(mén)學(xué)習(xí)——Spring Boot注解(一)
這篇文章主要介紹了Spring Boot注解學(xué)習(xí)(一)要點(diǎn),非常不錯(cuò),具有參考借鑒價(jià)值,需要的朋友參考下吧2017-05-05使用vscode搭建javaweb項(xiàng)目的詳細(xì)步驟
我個(gè)人是很喜歡VsCode的,開(kāi)源免費(fèi)、功能全面,所以為了方便,我把我?guī)缀跛械倪\(yùn)行都集成到了VsCode上來(lái),JavaWeb也不例外,下面這篇文章主要給大家介紹了關(guān)于使用vscode搭建javaweb項(xiàng)目的相關(guān)資料,需要的朋友可以參考下2022-11-11使用Java實(shí)現(xiàn)將ppt轉(zhuǎn)換為文本
這篇文章主要為大家詳細(xì)介紹了如何使用Java實(shí)現(xiàn)將ppt轉(zhuǎn)換為文本,文中的示例代碼簡(jiǎn)潔易懂,具有一定的借鑒價(jià)值,有需要的小伙伴可以參考下2024-01-01SpringBoot使用knife4j進(jìn)行在線接口調(diào)試
這篇文章主要介紹了SpringBoot使用knife4j進(jìn)行在線接口調(diào)試,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-09-09詳解MyBatis Generator自動(dòng)創(chuàng)建代碼(dao,mapping,poji)
這篇文章主要介紹了詳解MyBatis Generator自動(dòng)創(chuàng)建代碼(dao,mapping,poji)的相關(guān)資料,非常不錯(cuò),具有參考借鑒價(jià)值,需要的朋友可以參考下2016-10-10Spring Boot Mysql 數(shù)據(jù)庫(kù)操作示例
本篇文章主要介紹了Spring Boot Mysql 數(shù)據(jù)庫(kù)操作示例,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2017-02-02java輸出1~100之間的全部素?cái)?shù)的5種方式總結(jié)
這篇文章主要介紹了java輸出1~100之間的全部素?cái)?shù)的5種方式總結(jié),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-02-02