要想征服天空,你需要的不是一雙翅膀,而是一個想飛的夢。
sql注入過程中需要用到一些函數來完成測試過程。
- mid()函數
mid(column_name,start[,length])
這個函數作用是從指定字段中提取出字段的內容。
column_name:
字段名
start:
開始位置
length:
長度
例子:
SQL
SQL
SQL
- limit()
返回結果中的前幾條數據或者中間的數據
SELECT * FROM TABLE LIMIT M,N;
m是指記錄開始的index,從0開始,表示第一條記錄。
n是指從第m+1條開始,取n條。
SQL - concat()、concat_ws()、group_concat()
concat()函數可以連接一個或者多個字符串
concat(str1,str2,str3,....)
返回結果為連接參數產生的字符串,但是如果其中一個參數為NULL ,則返回值為 NULL。
SQL
concat_ws()
concat_ws()(separator,str1,str2,...)
第一個參數是分隔符,看例子。
SQl
group_concat()
分組拼接函數
group_concat([DISTINCT] 要連接的字段 [Order BY ASC/DESC 排序字段] [Separator '分隔符'])
SQL
-
Count() 聚集函數,統計元祖個數
SQL - rand() 產生一個0~1的隨機數
SQL
-
floor() 向下取整
wing - group by 根據想要的規則對結果進行分組
WING
- Substr() 截取字符串
substr(a,b,c)
a 所要截取字符串
b 截取的位置
c 截取的長度
WING
- Ascii() 返回字符串的ascii碼
SQL
- Left()函數
left(string,num)
得到字符串最左邊指定個數的字符
wing
wing
- ORD()函數,此函數為返回第一個字符的ASCII碼,可以和上面的函數進行組合使用。
ORD(MID(DATABASE(),1,1))>119
-->檢測database()的第一位ASCII碼是否大于119,也即是‘r’
wing
WING
這兩種方法都可以把數據庫的名字猜出來。