vulfocus——rails任意文件读取(CVE-2019-5418)

描述

Ruby on Rails[1]是一套使用 Ruby 开发的,非常有生产力、维护性高、容易布署的Web 开发框架,是全世界 Web 应用程式开发的首选框架之一。

每获取一个请求,Ruby On Rails就会使用Render file(没有指定参数)的渲染模式来渲染目标。这样就会在我们攻击的时候,将目标文件当做模板来渲染,然后返回给浏览器。
在控制器中通过render file形式来渲染应用之外的视图,且会根据用户传入的Accept头来确定文件具体位置。我们通过传入Accept: ../../../../../../../../etc/passwd{{头来构成构造路径穿越漏洞,读取任意文件。

(通过“../../../../”来达到路径穿越的目的,然后再通过“{{”来进行模板查询路径的闭合,使得所要访问的文件被当做外部模板来解析。)

复现

2.访问chybeta文件并抓包

3.传入Accept: ../../../../../../../../etc/passwd{{ 漏洞复现成功,成功读取到passwd文件的内容:


4.通过传入Accept: ../../../../../../../../proc/self/environ{{   获得flag

 

要复现CVE-2020-27986漏洞,你可以按照以下步骤进行操作: 1. 首先,确保你已经安装好了Python,并且已经下载了相应的脚本。 2. 下载并运行SonarQube,你可以使用Docker运行SonarQube容器并设置端口。运行以下命令创建并启动SonarQube容器: ``` docker run -d -p 9000:9000 -p 9092:9092 sonarqube ``` 这将在你的本地主机上的9000端口上启动SonarQube服务。 3. 下载并运行CVE-2020-27986漏洞检测脚本。你可以从提供的CSDN链接中找到脚本并下载。确保将脚本保存在你的本地环境中。 4. 打开终端或命令行界面,并导航到保存了CVE-2020-27986漏洞检测脚本的目录。 5. 运行脚本,使用以下命令: ``` python 检测脚本.py ``` 替换"检测脚本.py"为你实际保存的脚本文件名。 6. 脚本将开始检测CVE-2020-27986漏洞。***0-27986漏洞。 请注意,复现漏洞是为了测试和研究目的,必须在合法和道德的框架内进行。在复现漏洞之前,请确保你已经获得了相应的授权,并且仅在合法的环境中进行。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *3* [CVE-2020-27986(SonarQube敏感信息泄露)漏洞复现](https://blog.csdn.net/dreamthe/article/details/121617470)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] - *2* [CVE-2020-8163:CVE-2020-8163-在Rails中远程执行用户提供的本地名称的代码](https://download.csdn.net/download/weixin_42151305/15663762)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值