熟悉功能:

方便管理员对模板html文件进行修改
用户可控变量:
-
$_REQUEST -
$_REQUEST['act'] -
$_GET -
$_GET['tpl_name'] -
$_POST -
$_POST['tpl_name'] -
$_POST['tpl_content']
$_REQUEST['act']无法影响判断
$_GET[‘tpl_name’]
$_GET[‘tpl_name’]为你想要编辑的模板文件名字
1 | elseif($act == 'edit'){ |
没有对$_GET['tpl_name']进行过滤,加上../可以读取web目录以外的内容。
payload = http://bluecmsv16:9990/admin/tpl_manage.php?act=edit&tpl_name=../../../upgrade/upgrade.php

有什么比较有价值的网站文件吗?
可以php文件即读到网站源码
$_POST变量
$_POST['tpl_name']变量:你想要更改的网站模板文件$_POST['tpl_content']变量:你要更改的内容
两个变量均没有经过过滤,可以直接修改网站的源码

编写pocsuite插件:
发现需要root登录状态才行,可以通过之前的登录绕过获取到cookie
手工添加cookie尝试,该漏洞确实是要登录状态才能利用

要配合BlueCMS v1.6 sp1 /admin/login.php SQL注入漏洞一起使用
怎么攻击呢?
可以修改网站下的任何源代码,可以
-
写入一句话木马
-
盗号js
写入一句话木马


总结:
-
有时候多个漏洞组合起来,可以达到一个很好的效果。
-
要写验证和攻击的代码才能更了解漏洞的原理