国产一级a片免费看高清,亚洲熟女中文字幕在线视频,黄三级高清在线播放,免费黄色视频在线看

打開APP
userphoto
未登錄

開通VIP,暢享免費電子書等14項超值服

開通VIP
初窺wireshark fiddler等抓包工具及部分實現(xiàn)分析

做過網(wǎng)絡(luò)方面開發(fā)的同學都知道,一個適用的抓包工具對工作問題的分析是很有用的。前段時間我也在折騰網(wǎng)絡(luò)方面的相關(guān)開發(fā),所以又重新使用了一下網(wǎng)絡(luò)抓包工具。接下來就介紹一下現(xiàn)在用的比較多的幾個網(wǎng)絡(luò)抓包工具。

     基本介紹:
     1、wireshark:
    wireshark的前身是Ethereal,2006年因為其創(chuàng)始人Gerald Combs的跳槽而改名為wireshark。它是一個跨平臺的軟件,可以在unix系列、linux、mac os、windows等多個平臺上面進行網(wǎng)絡(luò)協(xié)議抓包工作。同時他也是一個開源軟件,有興趣的話可以下載源碼深入了解。我們可以通過wireshark官網(wǎng)進一步了解相關(guān)知識及下載該軟件。
     2、fiddler
     fiddler的定位是網(wǎng)頁調(diào)試工具,能記錄所有客戶端和服務器的http和https請求,允許你監(jiān)視,設(shè)置斷點,甚至修改輸入輸出數(shù)據(jù)。我們還可以為fiddler安裝自己所需的插件,從而更好的利用fiddler的強大功能。詳細介紹信息可以通過fiddler官網(wǎng)進一步了解,
     3、IEInspector HTTP Analyzer
     IEInspector HTTP Analyzer同樣能夠提供監(jiān)控、跟蹤、調(diào)試和分析http/https的功能。HTTP Analyzer的很多特色功能在這里有比較詳細的介紹,如果你有這方面的需求,可以從進一步了解。不過,這是一個付費軟件,你可以先使用一段時間,試用版下載地址。
     4、sniffer
     還是大學的時候用過這個這個抓包工具,那個時候還是覺得這個工具挺神奇的,后來用的就用的少了。前段時間想重新裝一次試試,發(fā)現(xiàn)其安裝過程太繁瑣了,并且安裝后沒法偵聽到網(wǎng)卡,估計是因為自己下載的版本太低的緣故。反正現(xiàn)在也只是抱著再玩玩這個工具的心態(tài)去裝的,用不了所以就放棄卸載了。

     深入了解:
     對于上述的四種抓包工具,個人是比較推薦wireshark和fiddler的,這兩個工具在功能上基本可以互補,能完成你的抓包常用需求,是網(wǎng)絡(luò)開發(fā)的利器。下面我也會重點介紹這兩個工具,并會簡要分析這兩個工具的異同點,同時也會嘗試著去了解這兩個工具的部分實現(xiàn)方式。
     至于這兩個工具的使用方式就不做過多介紹了,網(wǎng)上這方面的教程比較全,下面的提到的幾篇文章應該已經(jīng)能夠基本滿足需求,講的也足夠詳細,我也是通過看這些文章來開始熟悉使用的。
     wireshark使用教程:
     上面的簡單介紹里面已經(jīng)講到了wireshark開源和跨平臺的特點,接下來介紹一下wireshark的其他幾個重要的特點。
     wireshark的界面開發(fā)用的是GTK+ widget toolkit,當然如果你不喜歡界面, TShark也還是能滿足你的需求。
     wireshark使用pcap network library來進行封包捕捉。Lipcap(Linux)或者Winpcap(Windows)。windows平臺下,在安裝wireshark的時候你就會發(fā)現(xiàn)會提示你安裝winpcap,當然,如果你已經(jīng)安裝過了就沒有這個提示了。
     WinPcap(Windows Packet Capture)是Windows平臺下的鏈路層網(wǎng)絡(luò)訪問工具,其目的在于為Windows應用程序提供訪問網(wǎng)絡(luò)底層的能力。
     WinPcap功能:
          獲得網(wǎng)卡設(shè)備列表及其高級信息
          打開一個網(wǎng)卡適配器并將其設(shè)置成混雜模式
          捕獲數(shù)據(jù)包
          設(shè)置過濾器
          將數(shù)據(jù)包存儲為文件并處理離線文件
          發(fā)送數(shù)據(jù)包
          收集網(wǎng)絡(luò)通信流量的統(tǒng)計信息
          但是,WinPcap不能修改數(shù)據(jù)包或者攔截數(shù)據(jù)包
     WinPcap架構(gòu):
              

         網(wǎng)絡(luò)數(shù)據(jù)包過濾器(Netgroup Packet Filter,NPF)是一個協(xié)議驅(qū)動,是WinPcap的核心部件,它處理網(wǎng)絡(luò)傳輸?shù)臄?shù)據(jù)包,并向應用層提供捕捉、發(fā)送和分析數(shù)據(jù)包的服務。
         packet.dll是一個提供了一系列底層函數(shù)的動態(tài)鏈接庫,功能包括:
             安裝、啟動和停止NPF驅(qū)動設(shè)備
             對網(wǎng)絡(luò)數(shù)據(jù)包進行嗅探
             發(fā)送原始的數(shù)據(jù)報
             獲取網(wǎng)卡列表和每一個網(wǎng)絡(luò)的相關(guān)信息
             對網(wǎng)卡查詢和設(shè)置底層參數(shù)
        能Wpcap.dll是一個含有WinPcap公共API的動態(tài)鏈接庫,它導出一系列函數(shù)供捕獲網(wǎng)絡(luò)數(shù)據(jù)包和分析網(wǎng)絡(luò),功能包括:
             對網(wǎng)絡(luò)數(shù)據(jù)包進行嗅探
             發(fā)送原始的數(shù)據(jù)報
             獲取網(wǎng)卡列表和每一個網(wǎng)絡(luò)的相關(guān)信息
             將數(shù)據(jù)包信息保存到磁盤
             在更高層上創(chuàng)建包過濾規(guī)則并應用到底層
     因為使用winpcap是直接進行網(wǎng)卡抓包的,所以Wireshark能夠捕獲到經(jīng)過網(wǎng)卡的所有包,但是這樣也造成在用wireshark對HTTPS包抓取的時候它只能抓到解析前的包數(shù)據(jù),一般情況下不能直接解析,當然如果你一定要解析內(nèi)容頁是可以做到的,網(wǎng)上搜索一下也能找到相關(guān)的教程。
     winpcap的進一步了解可參考 WinPcap技術(shù)手冊 V4.1.2
     wireshark另外一個非常強大的功能呢就是它的過濾器,包括DisplayFilters和CaptureFilters,熟練配合使用這個這兩個Filter能夠讓你只看到你所需要的包。
     捕捉過濾器(CaptureFilters):用于決定將什么樣的信息記錄在捕捉結(jié)果中。需要在開始捕捉前設(shè)置。
     顯示過濾器(DisplayFilters):在捕捉結(jié)果中進行詳細查找。他們可以在得到捕捉結(jié)果后隨意修改。
     當然這個過濾器的種類也是非常之多,要想能過熟練使用也絕非易事。過濾器Display Filter Reference介紹。
     另外wireshark也支持一部分功能的擴展,wireshark對常見協(xié)議的支持已經(jīng)比較完善,當然,如果你需要它對某些新協(xié)議進行支持的話你也可以安裝相應的插件。

     fiddler:
     1、Fiddler 教程
     fiddler的實現(xiàn)方式和wireshark不同,它并不對網(wǎng)卡進行監(jiān)聽,而只是以代理web服務器的形式工作。它使用代理地址:127.0.0.1,端口:8888。當Fiddler退出的時候它會自動注銷,這樣就不會影響別的程序。他的實現(xiàn)方式也解釋了為什么使用fiddler進行網(wǎng)絡(luò)抓包的時候,當某些應用進行沒有真實證書的https訪問的時候,fiddler會有一個彈出框警示。
     fiddler的實現(xiàn)方式如下圖,從它的實現(xiàn)方式中我們可以很簡單的看出,fiddler只支持http/https協(xié)議的抓取,這也從實現(xiàn)角度上解釋了它定位成網(wǎng)頁調(diào)試工具的原因。
         

     監(jiān)聽網(wǎng)卡和代理web服務器這兩種實現(xiàn)方式還是有挺大區(qū)別的。Fiddler能嗅探到HTTP代理的任意程序的數(shù)據(jù)包,但實際情況是,很多應用程序在一些賬號登陸的流程上是沒有走http代理的,之前在嘗試抓有些應用的登陸過程時就看到了這個問題。
     當然,fiddler的這種代理服務器的實現(xiàn)方式也讓它能夠設(shè)置斷點,并可以再此基礎(chǔ)上修改request和response報文內(nèi)容。
     fiddler能支持https協(xié)議的分析,當然,前提是你先允許它抓取https數(shù)據(jù),這個可以自己設(shè)置。像chrome這種登陸密碼不加密的工具,完全可以用fiddler來偵聽到用戶名密碼。(之前這個理解有誤,更正一下。fiddler能夠抓到https協(xié)議中的內(nèi)容(如Chrome這種自己不加密密碼而是用https加密的工具的用戶名密碼),原因是fiddler以一個本地服務器的形式工作,當chrome向自己服務器請求一個https的證書時,fiddler會在中間截下來,然后返回一個它自己能夠解析的https證書,并同時向真正的服務器再請求一次,并保存真正服務器返回的證書。chrome收到fiddler返回的證書后開始用這個證書加密數(shù)據(jù),再將數(shù)據(jù)上傳。fiddler在截到這份數(shù)據(jù)后,因為是自己給的證書,所以它能正確的解析出數(shù)據(jù),同時將原始數(shù)據(jù)再用真正的證書加密一次,并上傳至真正的服務器。這樣就實現(xiàn)了https內(nèi)容的抓取。)
     另外,新版fiddler還能支持win8 metro的抓包,之前開發(fā)win8 app的時候一直沒有找到一款合適的抓包工具,現(xiàn)在看來fiddler幫我們解決這個問題了,詳細介紹可以參考Fiddler and Windows 8 Metro-style applications
     如果你想進一步研究fiddler,可以買fiddler創(chuàng)始人寫的《Debugging with Fiddler: The complete reference from the creator of the Fiddler Web Debugger》這個書來深入研究。不過老美挺看重版權(quán)的,所以無論電子書還是紙質(zhì)書都挺貴。
     因本人知識水平有限,如有錯誤的地方歡迎指正。

來源:http://blog.csdn.net/lisztlee/article/details/8221135

本站僅提供存儲服務,所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊舉報
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
手機抓包的兩種方法:wireshark抓包和fiddler抓包
Wireshark和TcpDump抓包分析心得
dripcap:數(shù)據(jù)包分析工具
Wireshark基本介紹和學習TCP三次握手
【精品博文】Labview利用Winpcap實現(xiàn)以太網(wǎng)底層通信(一)
原來你是這樣的Websocket
更多類似文章 >>
生活服務
分享 收藏 導長圖 關(guān)注 下載文章
綁定賬號成功
后續(xù)可登錄賬號暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點擊這里聯(lián)系客服!

聯(lián)系客服