⑴ Fiddle抓包進階
fiddler是一個很好的抓包工具,默認是抓http請求的,對於pc上的https請求,會提示網頁不安全,這時候需要在瀏覽器上安裝證書。
一、網頁不安全
1.用fiddler抓包時候,打開網路網頁: https://www..com
2.提示:網頁不安全
二、fiddler設置(抓取所有https請求)
1.打開菜單欄:Tools>Fiddler Options>HTTPS
2.勾選Decrypt HTTPS traffic,裡面的兩個子菜單也一起勾選了
Fiddler抓包2-只抓APP的請求
fiddler抓手機app的請求,估計大部分都會,但是如何只抓來自app的請求呢?
把來自pc的請求過濾掉,因為請求太多,這樣會找不到重要的信息了。
1.電腦上已裝fiddler
2.手機和電腦在同一區域網
一、設置
1.fiddler>Tools>Fiddler Options>Connections 勾選Allow remote computers to connect。
2.記住這里的埠號:8888,後面會用到。
一、get請求 [圖片上傳中...(get請求.png-2ac7c-1529389857624-0)]
1.打開fiddler工具,然後瀏覽器輸入博客首頁地址: http://www.cnblogs.com/yoyoketang/
2.點開右側Inspectors下的Headers區域,查看Request Headers
3.Request Headers區域裡面的就是請求頭信息,可以看到打開博客園首頁的是get請求
四、get和post請求參數區別
1.關於get和post的功能上區別就不說了,大家自己查資料,這里主要從fiddler抓包的層面查看請求參數上的區別
2.get請求的Raw參數查看,主要分三部分:
--第1部分是請求url地址
--第2部分是host地址
--第3部分是請求頭部信息header
Fiddler抓包4-工具介紹(request和response)
本篇簡單的介紹下fiddler界面的幾塊區域,以及各自區域到底是干什麼用的,以便於更好的掌握這個工具
一、工具簡介
1.第一塊區域是設置菜單,這個前面2篇都有介紹
2.第二塊區域是一些快捷菜單,可以點下快捷功能鍵
3.第三塊左邊是抓捕的請求會話列表,每一個請求就是一個會話
4.第四塊右邊上方區域是request請求的詳細信息,可以查看headerd、cookies、raw、json等
5.第五塊右邊下方區域就是response信息,可以查看服務端返回的json數據或其它信息
6.第六塊區域左下角黑色的那塊小地方,雖然很不起眼,容易被忽略掉,這地方是命令行模式,可以輸入簡單的指令如:cls,執行清屏的作用等
三、Request 和Response
1.Request是客戶端發出去的數據,Response是服務端返回過來的數據,這兩塊區域功能差不多
No Authorization Header is present.
5.cookies:查看cookie詳情
6.raw:查看一個完整請求的內容,可以直接復制
7.json:查看json數據
8.xml:查看xml文件的信息
四、decode解碼
1.如果response的TextView區域出現亂碼情況,可以直接點下方黃色區域解碼
一、Composer簡介
點開右側Composer區域,可以看到如下界面,就是測試介面的界面了
二、模擬get請求
1.在Composer區域地址欄輸入博客首頁: http://www.cnblogs.com/yoyoketang/
2.選擇get請求,點Execute執行,請求就可以發送成功啦
3.請求發送成功後,左邊會話框會生成一個會話記錄,可以查看抓包詳情
4.右側history區域會多一個歷史請求記錄
一、url詳解
1.url就是我們平常打開網路在地址欄輸入的: https:www..com ,如下圖,這個是最簡單的url地址,打開的是網路的主頁
二、url解析
1.以" https://www..com/s?wd= 上海悠悠博客園"這個url請求的抓包為例
三、請求參數(params)
1.在url裡面請求參數一般叫params,但是我們在fiddler抓包工具看到的參數是:QueryString
2.QueryString是像服務端提交的參數,其實跟params是一個意思,每個參數對應的都有name和value值
3.多個參數情況如下
一、body數據類型
常見的post提交數據類型有四種:
1.第一種:application/json:這是最常見的json格式,也是非常友好的深受小夥伴喜歡的一種,如下
{"input1":"xxx","input2":"ooo","remember":false}
2.第二種:application/x-www-form-urlencoded:瀏覽器的原生 form 表單,如果不設置 enctype 屬性,那麼最終就會以 application/x-www-form-urlencoded 方式提交數
input1=xxx&input2=ooo&remember=false
3.第三種:multipart/form-data:這一種是表單格式的,數據類型如下
------
Content-Disposition: form-data; name="text"
title
------
Content-Disposition: form-data; name="file"; filename="chrome.png"
Content-Type: image/png
PNG ... content of chrome.png ...
-------
4.第四種:text/xml:這種直接傳的xml格式
<methodcall>
<methodname>examples.getStateName</methodname>
<params>
<param>
<value><i4>41</i4></value>
</params>
</methodcall>
二、json格式
1.打開博客園的登錄頁面,輸入賬號密碼後抓包,查看post提交數據,點開Raw查看整個請求的原始數據
三、x-www-form-urlencoded
1.登錄博客園後,打開新隨筆,隨便寫一個標題和一個正文後保存,抓包數據如下
四、WebFrom
1.為什麼登錄請求的WebFrom的body部分為空呢?
五、xml
1.如果遇到text/xml這種格式的body,那就如下圖這樣的了
一、斷點
1.為什麼要打斷點呢?
比如一個購買的金額輸入框,輸入框前端做了限制100-1000,那麼我們測試的時候,需要測試小於100的情況下。很顯然前端只能輸入大於100的。這是我們可以先抓到介面,修改請求參數,繞過前端,傳一個小於100的數,檢查服務端的功能是否OK。
也就是說介面測試其實是不需要管前端的,主要測後端的功能。Fiddler作為代理伺服器的作用其實就相當於上面故事裡面的小王,傳紙條的作用,Fiddler(小王)修改了請求參數(小紙條),是為了驗證服務端功能(女神C)。
2.Fiddler可以修改以下請求
--Fiddler設置斷點,可以修改HTTP請求頭信息,如修改Cookie,User-Agent等
--可以修改請求數據,突破表單限制,提交任意數字,如充值最大100,可以修改成10000
--攔截響應數據,修改響應體,如修改服務端返回的頁面數據
二、斷點的兩種方式
1.before response:這個是打在request請求的時候,未到達伺服器之前
--屌絲A傳給小王的時候,小王在這個時候攔截了小紙條,未傳給女神C
3.打完斷點後,會發現所有的請求都無法發出去了,這時候,點下Go按鈕,就能走下一步了
4.找到需要修改的請求後,選中該條會話,右側打開WebFroms,這時候裡面的參數都是可以修改的了
四、單個斷點
已經知道了某個介面的請求地址,這時候只需要針對這一條請求打斷點調試,在命令行中輸入指令就可以了
請求前斷點(before response): bpu
4.取消斷點,在命令行輸入: bpu 回車就可以了
響應後斷點(after requests): bpafter
3.登錄博客園,會發現已經攔截到登錄後伺服器返回的數據了,此時可以修改任意返回數據
4.取消斷點,在命令行輸入: bpafter 回車就可以了
五、攔截來自某個網站所有請求
1.在命令行輸入:bpu www.cnblogs.com
2.打開博客園任意網頁,發現都被攔截到了
3.打開博客園其他網站,其它網站可以正常請求
4.說明只攔截了來自部落論壇( www.cnblogs.com )的請求
5.清除輸入bpu回車即可
六、命令行其它相關指令
Bpafter, Bps, bpv, bpm, bpu
這幾個命令主要用於批量設置斷點
Bpafter xxx: 中斷 URL 包含指定字元的全部 session 響應
Bps xxx: 中斷 HTTP 響應狀態為指定字元的全部 session 響應
Bpv xxx: 中斷指定請求方式的全部 session 響應
Bpm xxx: 中斷指定請求方式的全部 session 響應 、、同於 bpv xxx
Bpu xxx:與bpafter類似
當這些命令沒有加參數時,會清空所有設置了斷點的HTTP請求。
更多的其他命令可以參考Fiddler官網手冊
一、保存為文本
1.以博客園登錄為例,抓到登錄的請求會話
2.點左上角File>Save>Selected Sessions>as Text,保存到電腦上就是文本格式的
三、亂碼問題(decode)
1.打開博客園首頁: http://www.cnblogs.com/yoyoketang/ ,保存之後查看,會發現返回的是亂碼
⑵ 抓包怎麼抓
抓包工具:Charles/Flidder
我只說大致的步驟思路,網路肯定有具體詳解;
大致步驟:
1、安裝工具,進行配置,配置埠號,安裝證書(設置證書允許)
2、手機下載證書,安裝;
3、手機網路設置代理;
4、電腦抓包工具中允許訪問;
5、ok
⑶ wireshark中文版怎麼抓包
你好,方法如下:
首先下載並安裝Wireshark軟體,最好選擇中文版,因為會使你用的更順手。
安裝完畢之後,雙擊打開Wireshark軟體,主界面還是比較清晰明了的,可是怎麼用還是稀里糊塗的吧。
點擊菜單欄紅圈中的選項——列出可抓包的介面,其實也就是網卡咯,然後會彈出抓包介面對話框。
這里列出了可抓包的介面,一般而言,你有幾塊網卡,就會列出幾個。
而紅圈中,數據包數量不為零的,就是你正在使用的網卡,就用它來抓包了。點擊該網卡後面的選項進行設置。
鏈路層頭類型選擇Ethernet,並勾選在混亂模式下抓包,其他保持默認即可。
然後點擊開始抓包。
這樣抓包工具就開始運行了,區域網中的網路活動會被抓下來。下圖中標出了抓到的數據包的基本信息結構。
一般來所,抓包是有針對性的,因此要用到過濾功能,濾掉無用的數據包,以便凸顯目標IP的數據包。下圖中給出了基本的IP過濾語言,由於語言很多,這里不做詳細分析。
抓到了有用的數據包之後,就可以選擇停止抓包,對已有的數據包進行分析,也可以重新進行抓包。
⑷ fiddler,他和其他抓包軟體有什麼區別,如何
Fiddler是強大的抓包工具,它的原理是以web代理伺服器的形式進行工作的,使用的代理地址是:127.0.0.1,埠默認為8888,我們也可以通過設置進行修改。他的protocol 就能讓他搞http協議 當然包含https什麼的。
比如Wireshark比較強大,按照網路七層協議這個抓包能抓到數據鏈路層、網路層(network layer)、傳輸層或應用層(application layer),但是 就是因為太強大,非常復雜。會讓我們看到一些很雜亂的東西 比如SYN三次握手什麼的,UDP流量啊 QQ消息啊。
⑸ 抓包工具都有哪些
抓包工具有:fiddler抓包工具、Charles抓包工具、Firebug抓包工具、httpwatch抓包工具、Wireshark抓包工具、SmartSniff 抓包工具。
1、fiddler抓包工具,是客戶端和服務端的http代理,客戶端所有的請求都要先經過fiddler,到響應的服務端,然後端返回的所有數據也都要經過fiddler,fiddler也是最常用的抓包工具之一。
2、Charles抓包工具也是比較常用的,和fiddler差不多,請求介面和返回數據的顯示方式不一樣,Charles是樹狀結構比較清晰,fiddler是按照時間倒敘排的。
3、Firebug抓包工具是瀏覽器firefox瀏覽器自帶插件,支持很多種瀏覽器,直接按f12,就可以打開,用起來比較方便。
4、httpwatch抓包工具是強大的網頁數據分析工具,安裝簡單,不需要設置代理和證書,但只能看不能修改,,集成在Internet Explorer工具欄。
5、Wireshark抓包工具很強大,可以捕捉網路中的數據,並為用戶提供關於網路和上層協議的各種信息。但是如果只是抓取http和https的話,還是用fiddler和Charles比較簡潔一點。
6、SmartSniff抓包工具是一款方便小巧的 TCP/IP 數據包捕獲軟體,網路監視實用程序。
(5)獵豹抓包工具擴展閱讀:
抓包工具在我們工作中主要用在:
A:抓取發送給伺服器的請求,觀察下它的請求時間還有發送內容等等;
B:去觀察某個頁面下載組件消耗時間太長,找出原因,要開發做性能調優;
C:或者我們去做斷點或者是調試代碼等等。
抓包工具所具備的幾個功能:
1)它提供類似Sniffer的包分析功能,可以幫助我們詳細拆分IP結構內容,帶我們深入的了解TCP/IP協議;
2)它可以用來分析軟體佔用埠及通訊情況比重的工具;
3)它可以讓我們從海量IP數據包中,找出我們需要的IP數據包,還能通過用戶端的情況,幫助我們能截獲各類敏感數據包。
⑹ 四大網路抓包神器,總有一款適合你~
無論是開發還是測試,在工作中經常會遇到需要抓包的時候。本篇文章 主要介紹如何在各個平台下,高效的抓包。
目前的抓包軟體總體可以分為兩類:
一種是設置代理抓取http包,比如Charles、mitmproxy這些軟體。
另一種是直接抓取經過網卡的所有協議包,其中最出名就是大名鼎鼎的wireshark以及linux自帶的抓包軟體tcpmp。
下面重點介紹一下這四個抓包工具的特點以及使用。
wireshark想必大多數程序員都不會陌生。wireshark在各個平台都可以安裝使用,它 可以抓取經過指定網卡的所有協議。 wireshark雖然很強大,但是對初學者其實不是很友好。
這也正是由於它太強大,它可以抓取所有包,所以初學者在使用時面對茫茫數據流不知所措。初學者需要認真的去學習怎麼過濾得到自己感興趣的包,但是如果不熟悉wireshark的過濾語法,要過濾數據包將舉步維艱。
過濾語法簡單介紹
wireshark的過濾語法總結起來其實也很簡單,就是 以協議開頭,後面可以跟著協議的屬性,然後加上一些判斷符號, 比如contains、==、>、<等等。比如只想展示http的協議內容,則直接在過濾器輸入框中輸入http即可。
如下圖:
比如我 只想看http協議的請求頭中uri包含』/api』的協議,就可以這么寫:
如果想通過目標ip或者來源ip來過濾包,就不可以以http協議為前綴了,因為這些是ip協議的相關屬性。 通過目標ip來過濾可以這么寫:
上面表示目標機器的ip是61.135.217.100並且協議是http的包。
wireshark支持很多種協議,我們可以通過右上角的expression來打開搜索支持的協議,還可以找出協議支持的屬性,然後填入期待的值,軟體會自動為我們構建過濾語句。
優點:
功能強大,可以抓取所有協議的包
抓到的包容易分析
缺點:
由於線上伺服器沒有GUI,只有命令行,因此無法在線上伺服器使用
無法分析https數據包,由於wireshark是在鏈路層獲取的數據包信息,所以獲取到的https包是加密後的數據,因此無法分析包內容。當然,我們可以對https數據包進行解密, 但是操作具有一定的復雜度,可能要消耗很多時間。
tcpmp是linux上自帶的一個抓包軟體(mac也有),功能強大,也可以抓取經過指定網卡的所有協議包。
由於是命令行工具,tcpmp抓取到的包不易於分析,一個常見的做法是將tcpmp抓到的包輸出到某個文件,然後將文件拷貝下來用wireshark分析。
一些簡單的過濾參數:
抓包內容輸出到文件:
之後我們可以把test.cap直接用wireshark打開,就可以很直觀的分析包了。
用tcpmp輸出cap文件包:
tcpmp-r test.cap
Charles是一款http抓包工具,它是通過代理來實現的抓包。也就是我們在訪問網頁時需要配置代理,將代理指向Charles監聽的埠,之後我們的http請求都會發向Charles的埠,之後Charles會幫我們轉發並記錄協議內容。
Charles的使用非常簡單,配置好代理後,Charles就開始抓包了。
我們可以直接通過Charles的GUi查看包的內容:
上圖中的unknown表示https加密後的數據,所以看到不協議的具體內容。我們可以通過安裝Charles的證書,讓Charles也可以查看https協議的具體內容。
優點 :
使用簡單,只需配置一下代理地址就可以
要抓取https協議的配置也很簡單,只要安裝下charles的證書就可以了
mitmproxy是python寫的一款http抓包工具,雖然只支持http抓包,但是它的特性非常強大,它不僅可以抓包,還可以對請求進行攔截、重現等操作。和Charles一樣,它的原理也是基於代理,使用的時候需要設置代理指向它。
mitmproxy是命令行工具,但是也自帶了mitmweb工具,可以讓用戶在網頁上操作。另外,mitmproxy還支持用戶自行編寫插件,可以編寫腳本對請求進行處理,然後把修改後的請求發出去。
1、安裝
首先需要在機器安裝python3以及pip3.之後通過pip3安裝
pip3 install mitmproxy
如果安裝mitmproxy過程中報錯MoleNotFoundError: No mole 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可以讀取以前抓取的請求信息進行分析。
優點:
命令行操作,可以在無GUI界面的伺服器上使用
對於這幾個抓包神器,我總結了下使用場景:
只抓http協議的話:
推薦使用mitmproxy。mitmproxy豐富的功能不僅可以滿足我們的抓包需求,還可以提升我們的工作效率。比如測試可以抓包後一鍵重發請求來重現bug,開發調試的時候可以修改請求內容等等。
如果是在線上的沒有GUI的伺服器:
推薦使用tcpmp,雖然mitmproxy也可以支持命令行抓包,但是生產環境的伺服器最好不要亂安裝第三方插件。另外,大多數伺服器都有裝tcpmp。我們可以通過把請求的內容輸出到文件,然後拷貝會自己的電腦用wireshark分析。
想要抓取http以外的協議的話:
直接上wireshark。功能強大。對於Charles,感覺用了mitmproxy之後,就基本用不上Charles了。Charles好像也可以編輯後再發送,但是感覺不是很好用,可能我用的不是很熟吧。
⑺ 軟體測試工具有哪些
開源測試管理工具:Bugfree、Bugzilla、TestLink、mantis 開源功能自動化測試工具版:Watir、Selenium、MaxQ、WebInject
開源性能自動化測試工具:Jmeter、OpenSTA、DBMonster、TPTEST、Web Application Load Simulator
[TestDirector]:企業級權測試管理工具,也是業界第一個基於Web的測試管理系統。
[Quality Center]:基於Web的測試管理工具,可以組織和管理應用程序測試流程的所有階段,包括指定測試需求、計劃測試、執行測試和跟蹤缺陷。
[QuickTest Professional]:用於創建功能和回歸測試。
[LoadRunner]:預測系統行為和性能的負載測試工具。
其他工具與自動化測試框架:Rational Functional Tester、Borland Silk系列工具、WinRunner、Robot等。
⑻ Wireshark抓包以後如何查看哪個裡麵包含了密碼
隨便連接熱點是很不安全,這里簡單地用360免費wifi創建一個wifi熱點,通過手機(客戶端)連接,並用本機進行wireshark抓包分析客戶端請求的http協議。
http協議是明文傳輸的,但目前大部分的網站對於用戶的帳號密碼也還是未經加密傳輸的。這里我拿學校的實驗預約系統進行測試。
1.在電腦上開啟360免費wifi(360安全衛士裡面帶著的,獵豹免費wifi都可以),沒有無線網卡的就別試了,:-(
2.開啟無線熱點:
3.在本機上安裝wireshark,並打開:
4.點擊工具欄第一個圖標,
列出可以抓包的設備:
5.這個版本用ipv6顯示的,我們需要確定是哪個網卡介面。
可以在網路連接裡面的詳情查看360wifi虛擬網卡的ipv6地址,也可以通過ipconfig命令來查看:
6.確定網路介面之後,點擊開始:
7.在過濾後的文本輸入控制項中,輸入http並點擊應用按鈕,過濾http協議的數據包:
8.打開手機連接上這個熱點,並通過瀏覽器訪問學校網站,然後用自己的帳號和密碼登錄:
不上圖了。。。。
9.在wireshark中,找到登錄時向伺服器發送帳號密碼的請求(一般是一個post請求):
從圖中我們可以看到帳號密碼都是未經過加密明文傳輸的,連接別人的無線熱點,上網還是要注意安全。
當然,即便是無線路由器的無線熱點,也是可以進行抓包分析的。
⑼ 怎樣用burpsuite抓包
工具/原料
電腦
Burpsuite軟體、IE瀏覽器
方法/步驟
1、打開IE瀏覽器,點擊瀏覽器菜單欄,找到「工具」點擊 Internet選項,設置瀏覽器代理地址為127.0.0.1,埠8080
2、打開burpsuite確定設置的代理地址與瀏覽器一致。
3、打開瀏覽器,打開一個網頁,會看到打開的網頁瀏覽記錄都經過了burpsuite。
4、當Intercept is on時,表示已經開啟攔截功能。
5、在網站可輸入的地方,例如搜索,輸入「2015」,開啟burpsuite攔截功能,可看到為post請求,最後面的就是提交的數據。
6、右鍵選擇send to repeater或者快捷鍵ctrl+r 把攔截的數據包到repeater項中,直接修改數據,如把原本要搜索的項「2015」改為「2016」,點擊go來提交,那麼響應回來的數據就是改修後的頁面和信息。(burpsuite的抓包,攔截,修改)