某代刷网代码审计

  • 某代刷网代码审计已关闭评论
  • 38 views
  • A+
所属分类:代码审计

最近在学代码审计,逛了逛一些安全社区,发现了YanXia师傅写的一篇关于代刷网的代码审计,舔了个B脸问了YanXia师傅要了源码,因为网络上大部分代刷网源码都是有加密过的,我太菜了不会解密

今天使用的环境是Apache+PHP7.0n

首先使用Seay源代码审计系统,自动审计一下,发现大部分都是可能存在注入的,我们仔细看几个

某代刷网代码审计

只有特定函数+可控变量存在的地方才可能存在漏洞

我们这里随便找找,发现/admin/classlist.php这里可能有注入存在

某代刷网代码审计

这里大概就是get请求传入一个my的参数,然后get请求传入一个cid的参数,追踪一下这个get_row方法

get_row()方法的代码如下

1
2
3
4
public static function get_row($q){
$result = mysqli_query(self::$link,$q);
return mysqli_fetch_assoc($result);
}

大概就是查询出来的结果拿一行作为关联数组,就是返回存在的行数,所以这里用时间盲注吧

随便测试一手,毕竟跑盲注得拿sqlmap或者自己写个exp

某代刷网代码审计

我们往上一翻,发现还有一个add_submit的操作里有个insert语句

某代刷网代码审计

这里的name也没有进行过滤

这里和上面一样,也直接构造payload即可,但是这里是post传入name参数,我就用Burpsuite来演示了

某代刷网代码审计

继续往下翻,还有一个delete的操作,这里也一样存在时间盲注

某代刷网代码审计

注入漏洞先演示这么多,但是我这里好像有点问题,验证是可以验证出来的,但是继续深入爆数据就有时候不行,不知道是为什么。

继续找,可以试着去找功能点然后找对应的代码,在后台有个添加商品,可以上传文件,我们试着分析一下他的代码

某代刷网代码审计

可以看到他这里验证图片上传应该是在ajax.php下

某代刷网代码审计

但是这里对file和tmp_name都进行了md5加密,但是type没有,可以通过00截断

这里00截断需要满足两个条件,一个就是PHP小于5.3,一个就是魔术引号要关闭,我魔术引号开着测试了半天,关了才成功

某代刷网代码审计

某代刷网代码审计

相关推荐: Zzcms最新产品版任意文件删除(可导致重装)

0x00 代码审计先来看可以导致任意文件删除的地方/user/delimg.php中第12行:$id=$_REQUEST['id'];$sql="select img,img2,img3,flv,editor from zzcms_main wher…