01概述
無論是開發照舊測試,在事情中常常會碰到必要抓包的時分。本篇文章主要先容如安在各個平臺下,高效的抓包。
現在的抓包軟件總體可以分為兩類:
底下重點先容一下這四個抓包東西的特點以及使用。
02Wireshark
這也正是由于它太強壯,它可以抓取一切包,以是初學者在使用時面臨茫茫數據流不知所措。初學者必要仔細的去學習怎樣過濾取得本人感興致的包,但是假如不熟習wireshark的過濾語法,要過濾數據包將步履維艱。
wireshark的過濾語法總結起來但是也很簡便,就是以協議開頭,后方可以隨著協議的屬性,然后加上一些推斷標記,好比contains、==、>、<等等。好比只想展現http的協議內容,則直接在過濾器輸入框中輸入http即可。
如下圖:
好比我只想看http協議的哀求頭中uri包含’/api’的協議,就可以這么寫:
假如想經過目標ip大概泉源ip來過濾包,就不成以以http協議為前綴了,由于這些是ip協議的干系屬性。經過目標ip來過濾可以這么寫:
外表表現目標機器的ip是61.135.217.100并且協議是http的包。
wireshark支持很多種協議,我們可以經過右上角的expression來掀開搜刮支持的協議,還可以找出協議支持的屬性,然后填入渴望的值,軟件會主動為我們構建過濾語句。
優點:
缺陷:
03Tcpdump
一些簡便的過濾參數:
抓包內容輸入到文件:
之后我們可以把test.cap直接用wireshark掀開,就可以很直觀的分析包了。
用tcpdump輸入cap文件包:
tcpdump-r test.cap |
04Charles
Charles的使用十分簡便,設置好署理后,Charles就開頭抓包了。
我們可以直接經過Charles的GUi查察包的內容:
上圖中的unknown表現https加密后的數據,以是看到不協議的具體內容。我們可以經過安裝Charles的證書,讓Charles也可以查察https協議的具體內容。
優點
05mitmproxy
mitmproxy是python寫的一款http抓包東西,固然只支持http抓包,但是它的特性十分強壯,它不僅可以抓包,還可以對哀求舉行攔阻、重現等利用。和Charles一樣,它的原理也是基于署理,使用的時分必要設置署理指向它。
mitmproxy是下令行東西,但是也自帶了mitmweb東西,可以讓用戶在網頁上利用。別的,mitmproxy還支持用戶自行編寫插件,可以編寫腳本對哀求舉行處理,然后把修正后的哀求發射去。
起首必要在機器安裝python3以及pip3.之后經過pip3安裝
pip3 install mitmproxy |
假如安裝mitmproxy歷程中報錯ModuleNotFoundError: No module named '_ssl',就必要安裝一下OpenSSL,然后再重新編譯安裝一下python3。
安裝好openSSL后再實行pip3 install mitmproxy
2、使用
安裝后,直接本人令行輸入mitmproxy就會進入它的交互界面:
這時分mitmproxy以前開頭監聽8080端口(默許),接著,我們可以去欣賞器設置署理。欣賞器設置署理的辦法有很多,這里不多做先容。
設置完署理后,拜候欣賞器的哀求都市被發到mitmproxy上,mitmproxy依據端正對哀求舉行攔阻(不設置攔阻端正的話則都不攔阻),一切顛末的哀求都市被輸入:
在交互界面上可以經過快捷鍵利用哀求。輸入問號’?’,可以查察快捷鍵的文檔。
3、底下先容一些常用的快捷鍵和功效
在哀求列表交互界面,按下f鍵后,可以輸入一些過濾端正:
具體的過濾語法可以按下’?‘鍵后,再按下朝向鍵右’—>’大概l鍵。
按下i鍵后,可以對指定的哀求舉行攔阻。按mitmproxy收到指定條件的哀求時,不會立馬把它轉發射去,而是等候我們實行resume利用后,才會把哀求轉發射去——在這時期我們乃至可以對哀求舉行手動修正。
赤色字體表現該哀求被攔阻,之后我們可以按入a鍵來規復該哀求,可以輸入A鍵規復一切被攔阻的哀求。
把指示光標挪動到某個哀求上,按回車可以查察哀求的內容。大概鼠標直接點擊哀求也可以。
之后經過支配朝向鍵可以查察request、response、detail等信息。
假如要編纂哀求,可以在這個界面輸入e,然后會讓我們選擇編纂哪塊內容:
之后就會進入vim編纂界面編纂相應的內容了(保存后會奏效)。
mitmproxy的光標指向某個哀求時,按下r鍵可以重發這個哀求(重發前可以對該哀求舉行編纂)。
按下’:’鍵后,可以輸入下令,如此我們就可以經過過濾端正批量的重發哀求
replay.client是mitmproxy內置的一個下令,我們也可以自行編寫下令。下令的編寫可以參考官網文檔,這里不做先容。
我們可以編寫插件,然后再啟動的時分指定插件,mitmproxy處理哀求的時分會實行一個插件的鏈,如此我們就可以對哀求舉行編纂然后再發送出去了。
借用官網的插件demo:
這個辦法對每一個哀求舉行處理,然后打印序號。經過mitmproxy -s test.py來讓插件奏效。經過插件可以綁定種種毗連事變。感興致的伙伴可以自行去mitmproxy官網看文檔,這里不多做先容。
經過w快捷鍵我們可以把這次抓到的哀求包保存到文件上。
經過mitmproxy -r file可以讀取從前抓取的哀求信息舉行分析。
優點:
06總 結
版權聲明:本文來自互聯網整理發布,如有侵權,聯系刪除
原文鏈接:http://www.freetextsend.comhttp://www.freetextsend.com/qingganjiaoliu/52299.html