学习
实践
活动
专区
工具
TVP
写文章

犀牛CMS3.0任意文件下载漏洞CVE-2018-18760

关注圣博润了解更多!

1

漏洞描述

RhinOScms是一套Web开发框架,可以为Web门户提供快速的访问和管理。内置允许使用数据库进程和解析器模块快速访问数据库,购物车,标签和参数化文件,配置参数,Intranet访问,数据库会话,电子邮件发送,验证码安全系统,快速过滤,列表和详细信息的模块。RhinOScms 3.0 build 1190版本中download.php存在任意文件下载漏洞,远程攻击者可利用该漏洞下载任意文件。

2

漏洞细节

漏洞存在于demo/admin/php/download.php文件中,查看文件download.php可以看到文件读取路径的拼接操作。

图1

然后看一下getParam函数,函数位置/admin/php/connect.php文件中:

图2

简单判断GET方式和POST方式获取到图1中的参数file,参数file没有做任何限制,控制参数file即可实现任意文件下载。

在文件download.php中包含了文件inicio.php:

代码对变量inculde进行判断,只有符合php/xxx.php格式,才能包含include变量,poc为http://xxx/admin/inicio.php?include=php/download.php&name=文件命名&file=文件名,name变量实现文件下载命名,可参考图一图二代码。因admin为后台路径,所以实现任意文件下载需登入后台才能进行操作。尝试下载mysql.php文件。

3

修复方案

1. 过滤.(点),使用户在url中不能回溯上级目录

2. 正则严格判断用户输入参数的格式

4

参考链接

https://packetstormsecurity.com/files/150018/RhinOS-CMS-3.x-Arbitrary-File-Download.html

https://www.exploit-db.com/exploits/45729

检索最新漏洞信息

提供漏洞预警、通告及响应服务

作为一家专业的网络安全服务供应商

圣博润特别注重对最新安全漏洞的发现和追踪

以“及时性、准确性、层次性”为宗旨

为用户提供漏洞预警、通告及响应服务

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20181220G11TCN00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

关注

腾讯云开发者公众号
10元无门槛代金券
洞察腾讯核心技术
剖析业界实践案例
腾讯云开发者公众号二维码

扫码关注腾讯云开发者

领取腾讯云代金券