MiniCMS-1.10审计入门
前言
听说是审计入门选择,开始学习PHP审计了。还有后面的Thinkphp审计
安装
下载源码https://github.com/bg5sbk/MiniCMS
修改install.txt为install.php,在web页面下运行此文件即可
复现
CVE-2018-1000638 反射型XSS
MiniCMS version 1.1 contains a Cross Site Scripting (XSS) vulnerability in http://example.org/mc-admin/page.php?date={payload} that can result in code injection.
在page.php文件下,传入date,赋给filter_date,但是没有任何过滤
直接插入前端代码
反射XSS
成功回显
CVE-2018-18891 越权删除
MiniCMS 1.10 allows file deletion via /mc-admin/post.php?state=delete&delete= because the authentication check occurs too late.
head.php这里根据cookie权限判断
而在post.php中,加载head.php的语句放在删除操作后面,导致还没验证,就执行了删除操作。
删除成功
本地调试,也发现head.php文件是最后才加载的
总结
对用户输入的值要进行过滤。
PHP中键值对使用比较常见,多用于配置和存储。