-
看到請求報文時問自己
- 什麼請求方法 GET
- 訪問了哪個頁面 /cms/show.php
- 傳遞了哪些引數 ?id=33
-
請求報文
POST /cms/admin/login.action.php HTTP/1.1
Host: 10.9.23.4 #目標主機ip
Content-Length: 51 #正文長度
Cache-Control: max-age=0
Upgrade-Insecure-Requests: 1
Origin: http://10.9.23.4
Content-Type: application/x-www-form-urlencoded #請求報文的正文的型別是x-www-form-
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/121.0.6167.85 Safari/537.36 #瀏覽器的指紋 也就是瀏覽器的版本
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7
Referer: http://10.9.23.4/cms/admin/login.php #當前請求的上個請求
Accept-Encoding: gzip, deflate, br
Accept-Language: zh-CN,zh;q=0.9
Cookie: username=admin #身份證 宣告
Connection: close #訪問完瀏覽器後關閉頁面
username=admin&image.x=55&image.y=59&password=ADMIN
- HTTP 請求由請求行、請求頭、請求正文三個部分組成。
1. 請求行
-
http報文的第一行,由空格字元分成三部分
-
常見的請求方法 options get post head trace put delete
2. 請求頭
- 從請求報文第二行開始到第一個空行為止之間的內容。其中包含很多欄位:
3. 請求正文
- 帶有請求正文的,一般都是 POST 方法。第一個空行開始以後的所有內容。
4. 常見傳參方式
- GET 傳參,向伺服器提交的引數在 URL 中, http://10.4.7.130/cms/show.php? id=33 。?id=33 就是透過 GET 方式向伺服器提交的引數。透過 GET 向伺服器傳遞多個參 數用 & 連線 ?name=123&pass=123456
- POST 傳參,向伺服器提交的引數在請求正文中,如登入功能 POST 資料包所示,向服務 器提交了 4 個引數,分別為:
透過改變請求方法繞過檢測
- 更改請求方法後 伺服器一樣會響應 但是不認識請求方法就不會檢測 可以繞過檢測
透過傳送兩個報文的方式繞過請求
-
傳送兩個post請求在同一個請求包中
- 兩個報文要緊貼在一起 不要有任何符號
- 要關閉計算正文長度 因為正文長度是第一個請求的長度 第二個請求就會被瀏覽器認為是請求就會響應 不然就會報錯
-
報文內容
POST /cms/admin/login.action.php HTTP/1.1
Host: 10.9.23.4
Content-Length: 51
Cache-Control: max-age=0
Upgrade-Insecure-Requests: 1
Origin: http://10.9.23.4
Content-Type: application/x-www-form-urlencoded
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/121.0.6167.85 Safari/537.36
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7
Referer: http://10.9.23.4/cms/admin/login.php
Accept-Encoding: gzip, deflate, br
Accept-Language: zh-CN,zh;q=0.9
Cookie: username=admin
username=admin&image.x=55&image.y=59&password=ADMINPOST /cms/admin/login.action.php HTTP/1.1
Host: 10.9.23.4
Content-Length: 51
Cache-Control: max-age=0
Upgrade-Insecure-Requests: 1
Origin: http://10.9.23.4
Content-Type: application/x-www-form-urlencoded
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/121.0.6167.85 Safari/537.36
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7
Referer: http://10.9.23.4/cms/admin/login.php
Accept-Encoding: gzip, deflate, br
Accept-Language: zh-CN,zh;q=0.9
Cookie: username=admin
Connection: close
username=admin&image.x=55&image.y=59&password=ADMIN
- 報文修改