蝉知企业门户系统v7.7 - 命令执行漏洞
Posted H3rmesk1t
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了蝉知企业门户系统v7.7 - 命令执行漏洞相关的知识,希望对你有一定的参考价值。
环境搭建
- 解压后将文件放在 web 目录下即可访问
![](https://image.cha138.com/20210915/b6aa331ca09e4492b686b688aa0c7f5f.jpg)
漏洞复现
- 首先登录后台,找到模板编辑的地方(设计 -> 高级)插入恶意代码,但保存文件时显示需要存在指定文件时才能进行模板修改
![](https://image.cha138.com/20210915/55e287dfe5e24f8fa7681d4e4e2e515a.jpg)
- 找到设置,选择微信设置,在这里添加一个公众号,原始ID填写的内容为需要创建文件的路径加上一个
/0
,即类似于../../../system/tmp/bmet.txt/0
- 这里需要先创建⼀个正常的接⼝,然后再重新创建⼀个⽬录穿越接⼝,否则会报错
![](https://image.cha138.com/20210915/6c83563bcf8d4167824cc609871b7f71.jpg)
![](https://image.cha138.com/20210915/be0f4acb5c044e22a6efba4de06fa21e.jpg)
- 再回到模板编辑处,插入恶意代码,成功保存文件
![](https://image.cha138.com/20210915/ee12db3d13114d15b56b3eda39490865.jpg)
- 访问前台页面,成功触发插入的恶意代码
![](https://image.cha138.com/20210915/b7700506078e4d1e8a9da423c6cc22b1.jpg)
漏洞分析
![](https://image.cha138.com/20210915/5965f10fd5ba4555ab77ea18db216172.jpg)
- 全局搜索一下该方法,跟进
system/module/ui/model.php
,发现存在file_exists
函数,这个函数可以使用文件或者文件夹绕过,所以此时只需要找一个地方能够创建文件或者文件夹的就能绕过这里从而写入恶意代码
![](https://image.cha138.com/20210915/e83ea4260aa84c39bec00f030c3b55d6.jpg)
- 全局搜索
mkdir
关键词找到一个可控可利用的地方,跟进system\\module\\wechat\\model.php
,在这里调用了mkdir
方法来创建一个文件夹,通过这里创建一个模板编辑时需要的文件即可
![](https://image.cha138.com/20210915/8dea0feaba0f4371974e388dc19a5386.jpg)
以上是关于蝉知企业门户系统v7.7 - 命令执行漏洞的主要内容,如果未能解决你的问题,请参考以下文章