CVE-2018-20129: DedeCMS V5.7 SP2前台文件上传getshell漏洞预警

栏目: 编程工具 · 发布时间: 5年前

内容简介:2018-12-11 在经过分析验证。该漏洞要求管理员权限登录。并且要开启会员功能,这个功能在默认情况下是不开启,需要管理员手动开启。

CVE-2018-20129: DedeCMS V5.7 SP2前台文件上传getshell漏洞预警

0x00 漏洞背景

2018-12-11 在 CVE中文申请站 公布了一个 DEDECMS 5.7 SP2 最新版本中存在文件上传漏洞,具有管理员权限者可利用该漏洞上传并getshell执行任意 PHP 代码。

经过分析验证。该漏洞要求管理员权限登录。并且要开启会员功能,这个功能在默认情况下是不开启,需要管理员手动开启。

经过360CERT判断,该漏洞危害小,影响面有限。但还是推荐使用DedeCMS的用户进行相关验证,并执行修复建议。

0x01 漏洞详情

include/dialog/config.php 在dialog操作的时候,针对用户权限进行校验。这就限制了必须是管理员。

CVE-2018-20129: DedeCMS V5.7 SP2前台文件上传getshell漏洞预警

随后 include/dialog/select_images_post.php 进行图片的校验,在这里可以明显的看到逻辑错误,这里针对文件名中的异常符号进行了替换为”的操作,并且随后的正则过滤条件限定宽松。导致漏洞产生。

CVE-2018-20129: DedeCMS V5.7 SP2前台文件上传getshell漏洞预警

对数据包进行修改

CVE-2018-20129: DedeCMS V5.7 SP2前台文件上传getshell漏洞预警

漏洞

CVE-2018-20129: DedeCMS V5.7 SP2前台文件上传getshell漏洞预警

同时在分析中发现一处有意思的点

CVE-2018-20129: DedeCMS V5.7 SP2前台文件上传getshell漏洞预警

CVE-2018-20129: DedeCMS V5.7 SP2前台文件上传getshell漏洞预警

CVE-2018-20129: DedeCMS V5.7 SP2前台文件上传getshell漏洞预警

如果要开启会员功能,需要访问到sys_info.php, 但这个文件最终会调用到dede_random_bytes, 其中有个一个关于MCRYPT_DEV_URANDOM的检测。

如果不是用的集成环境包,而是手动配置服务器,以Debain9为例,若没有安装libmcrypt-dev 这个package则会导致访问不存在的函数is_php

进而导致无法进行系统基本参数设置。

0x02 修复建议

1.文件后缀名检测进行重写。 2.对上传文件名进行统一重命名,后缀名只允许为image type类型。 3.对上传文件夹进行限制,不允许执行php。

除了上述方式以外,还可以直接进行代码层面的修改

对于受影响的正则表达式进行强化。限定$cfg_imgtype固定结尾的文件。

include/dialog/select_images_post.php

if(!preg_match("#\.(".$cfg_imgtype.")#i", $imgfile_name))
->
if(!preg_match("#\.(".$cfg_imgtype.")$#i", $imgfile_name))

0x03 时间线

2018-12-11 CVE中文申请站进行细节公开

2018-12-21 360CERT发布预警

0x04 参考链接

CVE-2018-20129:DedeCMS V5.7 SP2前台文件上传漏洞 – CVE中文申请站


以上所述就是小编给大家介绍的《CVE-2018-20129: DedeCMS V5.7 SP2前台文件上传getshell漏洞预警》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

Viral Loop

Viral Loop

Adam L. Penenberg / Tantor Media / 2009-10-27 / USD 34.99

From Google to Facebook, a respected journalist delves into how a "viral loop" can make an online business a success.一起来看看 《Viral Loop》 这本书的介绍吧!

JS 压缩/解压工具
JS 压缩/解压工具

在线压缩/解压 JS 代码

JSON 在线解析
JSON 在线解析

在线 JSON 格式化工具

在线进制转换器
在线进制转换器

各进制数互转换器