1.工具介紹
抓包工具:Fiddler
詳細使用見http://www.hangge.com/blog/cache/detail_1697.html
參考:https://www.cnblogs.com/yyhh/p/5140852.html
2.抓取http請求報文
一個HTTP請求報文由請求行(request line)、請求頭部(header)、空行和請求數據4個部分組成.
請求行:
這一行主要包括請求方法,URI(資源定位符) ,HTTP協議版本
協議版本:主要有http0.9,1.0,1.1
0.9:只接受GET一種請求方法,沒有在通信中指定版本號,且不支持請求頭
1.0:第一個在通信中指定的版本號,每對請求/ 響應都使用一個新的連接。
1.1:采用持久連接,在請求消息頭多一個Host域,增加了OPTIONS, PUT, DELETE, TRACE, CONNECT這些Request方法
請求方法見下圖:
請求頭部:
請求頭部由鍵/值對組成,每行一對,鍵和值用英文冒號“:”分隔。請求頭部通知服務器有關於客戶端請求的信息
典型的常用請求頭有:
User-Agent:產生請求的客戶端類型。
Accept:客戶端可識別的內容類型列表。
Host:請求的主機名,允許多個域名同處一個IP地址,即虛擬主機。
Accept-Encoding: 客戶端使用的編碼環境和編碼方式
Accept-Language: 客戶端語言環境
Authorization:授權信息,一般用於存放授權之后的信息
Connection:表示是否需要持久連接
Content-Length:表示請求數據正文的長度
Cookie:這個與服務器端做交互的,存儲保持會話的重要信息 Referer:表示該次請求的來源,一般用於做防盜鏈
請求數據
2.抓取http應答報文
HTTP響應也由四個部分組成,分別是:狀態行、響應頭、空格、響應數據。
狀態行
分別是:HTTP版本,狀態碼,解釋狀態碼的簡單短語
響應頭
響應數據
ok
3.攔截請求並修改請求發送
測試網站:http://hackinglab.cn/ShowQues.php?type=bases
如圖:我輸入錯誤答案回答錯誤,把發送的報文攔截下來,如下圖:
其中ans即為我輸入的答案,再來看看應答報文:
明顯說明答案錯誤!!
沒事,繼續,將我們的請求報文中的ans變成正確格式,如下圖
然后我們再來看看應答報文:
明顯說明答案正確!!!
這大致就是修改發送報文的方法了!我的去想想為啥會亂碼!感興趣學習的同志加個關注喲!!










