大体来说这个 CMS
还是比较安全的,but
部分功能写法完全不统一。写 sql
查询的时候有些用了 PDO
,有些直接带入查询
预处理分析
除了编辑器以外的 php
都会引用 system/inc.php
或者 system/library.php
library.php 处理函数和单双引号转义处理
inc.php 引用了system目录里的所有文件
大概分析
首先是 install/index2.php
,写入数据库和生成 install.lock
文件的处理
首先加载了 /system/library.php
可以看到,对所有的请求对单双引号进行了转义
if (!defined('PCFINAL')) {
exit('Request Error!');
}
if (!get_magic_quotes_gpc()) {
if (!empty($_GET)) {
$_GET = addslashes_deep($_GET);
}
if (!empty($_POST)) {
$_POST = addslashes_deep($_POST);
}
$_COOKIE = addslashes_deep($_COOKIE);
$_REQUEST = addslashes_deep($_REQUEST);
}
之后 index2.php
的流程
1.判断了install.lock文件是否存在
2.将数据库配置信息写入到system/data.php
3.往数据库导入sql
由于过滤了特殊符号,这里单引号没法闭合。无法利用
安装完默认后台: admin/123456
xss
templatewapianmovie.php
getPageHtml
函数是用来模板渲染的
看了一下 payload
主要还是 $yourneed
参数,跟踪发现来自 360.php
无任何过滤
payload:m="11111111111"><script>prompt(/xss/)</script><
貌似 payload
并不会因为 addslashes_deep
函数而失效
个人信息修改处,无任何过滤造成存储型 xss
payload: "><script>prompt(/xss/)</script><"
申请友链的存储xss
后台处理
留言板和这个差不多一致,省略
sql注入
虽然使用了 addslashes_deep
函数。导致登录处和代单/双引号的 sql
无法闭合,数据库也不是 GBK
,but
还是有一处盲注
cookie爆破后台绕过验证码
任意文件读取
在开启了 allow_url_fopen
和 allow_url_include
后会变成 RCE
小结
这套 CMS
靠着一些奇怪的方法来导致原本可利用的漏洞无法利用,例如后台功能大部分可以越权利用。但是另外的函数找不到,导致利用失败
总的来说,这套 CMS
有点水
关注公众号后台回复 0001
领取域渗透思维导图,0002
领取VMware 17永久激活码,0003
获取SGK地址,0004
获取在线ChatGPT地址,0005
获取 Windows10渗透集成环境,0006
获取 CobaltStrike 4.9破解版
加我微信好友,邀请你进交流群
往期推荐
Java审计之CMS中的那些反序列化漏洞
日常记录对某站点的实战渗透
Subconverter订阅转换RCE漏洞
D-Link DAP-X1860:远程命令注入
国产之光IDE,自带国产特色VIP功能!
JeecgBoot SSTI以及JDBC RCE 复现
谈一谈我是如何入门安全的,七年安全生涯总结
聊聊PE文件免杀
Threadless Inject - 一种新颖的进程注入技术
记一次从linux打进域控
记一次从外网到拿下域控
备用号,欢迎关注
原文始发于微信公众号(刨洞安全团队):KKCMS 1.371 代码审计
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论