對(duì)于Web測(cè)試,我們可以很容易的抓取到相關(guān)的http請(qǐng)求包,不用什么專業(yè)軟件,甚至瀏覽器都能幫我們完成這個(gè)功能,拿到需要的http請(qǐng)求連接 。
http連接對(duì)于測(cè)試同學(xué)來(lái)說(shuō), 不論做功能、性能或是安全,都是非常重要的, 他過(guò)濾了前臺(tái)的因素,讓測(cè)試同學(xué)直接能對(duì)后臺(tái)進(jìn)行交互。
以上是http連接的重要性,基本等于廢話,下面是正題。
客戶端安全測(cè)試,同樣需要拿到http的請(qǐng)求包,由于客戶端的前段限制繞過(guò)比較麻煩,那么在做安全測(cè)試的過(guò)程中,直接拿到http的請(qǐng)求包顯得更外重要。
有如下方法可以拿到請(qǐng)求的http包:
1、在不配置代理的情況下,對(duì)Android客戶端(模擬器)的數(shù)據(jù)我們可以使用wireshark或者etherpeek等網(wǎng)絡(luò)層抓包軟件抓取,模擬器本身的數(shù)據(jù)交互是通過(guò)電腦主機(jī)的網(wǎng)卡進(jìn)行的,所以我們通過(guò)抓包軟件抓取主機(jī)網(wǎng)卡的數(shù)據(jù)包,經(jīng)過(guò)過(guò)濾,便可得到模擬器客戶端中的數(shù)據(jù)包,類似這樣:


訪問(wèn)之后,通過(guò)wireshark過(guò)濾http請(qǐng)求,便可找到我們剛剛發(fā)送的請(qǐng)求。
當(dāng)然,這是種比較麻煩的方法,不過(guò)可以更確切的看到網(wǎng)絡(luò)包發(fā)送的內(nèi)容。
另一種辦法是對(duì)模擬器配置代理,讓所有請(qǐng)求包可以通過(guò)外部主機(jī)的七層抓包軟件,例如fiddler ,burpsuite等所捕獲到,配置代理需要先做一次設(shè)置:類似這樣:



進(jìn) 入“設(shè)置”選項(xiàng)之后,按照?qǐng)D示設(shè)置

這里proxy 設(shè)置為10.0.2.2是android模擬器對(duì)外部主機(jī)地址的硬編碼,端口設(shè)為8888是外部主機(jī)fiddler 的監(jiān)聽(tīng)地址,當(dāng)然,如果是burpsuite 可以設(shè)置為8080。

那么這樣的話 ,我們就能通過(guò)fiddler抓取模擬器中的數(shù)據(jù)包了, 這樣對(duì)測(cè)試來(lái)講,可以用web端的應(yīng)用層工具對(duì)客戶端的http數(shù)據(jù)進(jìn)行處理,方便的可就多了。