1. 程式人生 > >python:抓包利器fiddler常識(一)

python:抓包利器fiddler常識(一)

1.工作原理 以web代理伺服器的形式進行工作的,使用的代理地址是:127.0.0.1,埠預設為8888,過程如下: web代理就是在客戶端和伺服器之間設定一道關卡,客戶端先將請求資料傳送出去後,代理伺服器會將資料包進行攔截,代理伺服器再冒充客戶端傳送資料到伺服器;同理,伺服器將響應資料返回,代理伺服器也會將資料攔截,再返回給客戶端。

2.fiddler的使用http部分 2.1 設定 電腦上有IE,火狐,谷歌,360等瀏覽器,選擇火狐瀏覽器為抓包測試專用的瀏覽器,則在該瀏覽器的http代理作如下設定: 在這裡插入圖片描述 設定好以後,重啟瀏覽器. 抓包前須先啟動fiddler,否則瀏覽器無法上網,fiddler無法抓包。

2.2fiddler介面介紹

在這裡插入圖片描述

2.2.1 開啟Capture Traffic 要使用Fiddler進行抓包,首先需要確保Capture Traffic是開啟的(安裝後是預設開啟的),勾選File->Capture Traffic

2.2.2 區域1 資料包列表 介紹 #:順序號,按照抓包的順序從1遞增 Result:HTTP狀態碼    Protocol:請求使用的協議,如HTTP/HTTPS/FTP等 HOST:請求地址的主機名或域名 URL:請求資源的位置 Body:請求大小 Caching:請求的快取過期時間或者快取控制值 Content-Type:請求響應的型別 Process:傳送此請求的程序ID Comments:備註 Custom:自定義值

2.2.2區域2 請求資訊介紹 HTTP Request Header:以鳳凰網為例,檢視請求鳳凰網主頁這條資料包的請求資料,從上面的Headers中可以看到如上圖內容: 在這裡插入圖片描述

請求方式:GET 協議: HTTP/1.1 Client 頭域: Accept: text/html,application/xhtml+xml,application/xml;q=0.9,/;q=0.8 ---------瀏覽器端可以接受的媒體型別 Accept-Encoding: gzip, deflate ---------壓縮方法 Accept-Language: zh-CN ---------語言型別 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/51.0.2704.79 Safari/537.36 Edge/14.14393 ---------客戶端使用的作業系統和瀏覽器的名稱和版本 COOKIE域 ---------將cookie值傳送給伺服器 Transport 頭域: Connection:當網頁開啟完成後,客戶端和伺服器之間用於傳輸HTTP資料的TCP連線是否關閉。keep-alive表示不會關閉,客戶端再次訪問這個伺服器上的網頁,會繼續使用這一條已經建立的連線;close表示關閉,客戶端再次訪問這個伺服器上的網頁,需要重新建立連線。 HOST:主機名或域名,若沒有指定埠,表示使用預設埠80.

2.2.3區域3 HTTP Response Header:繼續以鳳凰網為例,如圖所示:

在這裡插入圖片描述

協議:HTTP/1.1 狀態碼:200 Cache頭域: Date: Sat, 05 Aug 2017 04:37:43 GMT ---------生成訊息的具體時間和日期 Expires: Sat, 05 Aug 2017 04:37:42 GMT ---------瀏覽器會在指定過期時間內使用本地快取 Cookie/Login 頭域: Set-Cookie: BDSVRTM=264; path=/ ---------把cookie傳送到客戶端 Set-Cookie: BD_HOME=1; path=/ Set-Cookie: H_PS_PSSID=1425_21097_22157; path=/; domain=.baidu.com Entity頭域 Content-Length: 202740 ---------正文長度 Content-Type: text/html;charset=utf-8 ---------告知客戶端伺服器本身響應的物件的型別和字符集 Miscellaneous 頭域: Bdpagetype: 2 Bdqid: 0x99791efd00036253 Bduserid: 2577220064 Server: BWS/1.1 ---------指明HTTP伺服器的軟體資訊 X-Ua-Compatible: IE=Edge,chrome=1 Security頭域: Strict-Transport-Security: max-age=172800 ---------基於安全考慮而需要傳送的引數,關於這個引數的解釋,請參考:http://www.freebuf.com/articles/web/66827.html Transport頭域: Connection: Keep-Alive 2.2.4TextView:顯示請求或響應的資料。 2.2.5WebForms:請求部分以表單形式顯示所有的請求引數和引數值;響應部分與TextView內容是一樣的。 2.2.6Auth:顯示認證資訊,如Authorization 2.2.7Cookies:顯示所有cookies 2.2.8Raw:顯示Headers和Body資料 2.2.9JSON:若請求或響應資料是json格式,以json形式顯示請求或響應內容 2.2.10XML:若請求或響應資料是xml格式,以xml形式顯示請求或響應內容