(CVE-2019-5418)Ruby on Rails路径穿越与任意文件读取漏洞复现 – 作者:whhbtl

漏洞简介:

Ruby on Rails是一个web应用程序框架,是相对较新的web应用程序框架

构建在Ruby语言上

威胁类型

远程代码执行,任意文件读取

威胁等级

漏洞编号

CVE-2019-5418

受影响系统及应用版本

Rails全版本

其中修复版本

6.0.0.beta3,

5.2.2.1

5.1.6.2

5.0.7.2

4.2.11.1

漏洞复现:

1、搭建环境

Ruby On Rails环境建设

1、安装git图片[1]-(CVE-2019-5418)Ruby on Rails路径穿越与任意文件读取漏洞复现 – 作者:whhbtl-安全小百科

2、安装rbenv到/ .rbenv目录图片[2]-(CVE-2019-5418)Ruby on Rails路径穿越与任意文件读取漏洞复现 – 作者:whhbtl-安全小百科

3、安装rbenv的插,用于编译安装ruby图片[3]-(CVE-2019-5418)Ruby on Rails路径穿越与任意文件读取漏洞复现 – 作者:whhbtl-安全小百科

4、用来管理 gemset, 可选, 因为有 bundler 也没什么必要图片[4]-(CVE-2019-5418)Ruby on Rails路径穿越与任意文件读取漏洞复现 – 作者:whhbtl-安全小百科

5、通过 gem 命令安装完 gem 后无需手动输入 rbenv rehash 命令图片[5]-(CVE-2019-5418)Ruby on Rails路径穿越与任意文件读取漏洞复现 – 作者:whhbtl-安全小百科

6、通过 rbenv update 命令来更新 rbenv 以及所有插件图片[6]-(CVE-2019-5418)Ruby on Rails路径穿越与任意文件读取漏洞复现 – 作者:whhbtl-安全小百科

7、使用 Ruby China 的镜像安装 Ruby, 国内用户推荐图片[7]-(CVE-2019-5418)Ruby on Rails路径穿越与任意文件读取漏洞复现 – 作者:whhbtl-安全小百科

8、然后需要将下面两句代码放在bash的配置文件中:图片[8]-(CVE-2019-5418)Ruby on Rails路径穿越与任意文件读取漏洞复现 – 作者:whhbtl-安全小百科

9、执行下面的命令使其生效

source ~/.bashrc

10、安装ruby图片[9]-(CVE-2019-5418)Ruby on Rails路径穿越与任意文件读取漏洞复现 – 作者:whhbtl-安全小百科

在demo路径下执行“rails s”,开启服务

指定9876端口图片[10]-(CVE-2019-5418)Ruby on Rails路径穿越与任意文件读取漏洞复现 – 作者:whhbtl-安全小百科

访问“chybeta”路径:图片[11]-(CVE-2019-5418)Ruby on Rails路径穿越与任意文件读取漏洞复现 – 作者:whhbtl-安全小百科

我们使用浏览器自带的开发者工具进行漏洞复现,按“f12”打开工具,修改这条请求,修改内容如下:

图片[12]-(CVE-2019-5418)Ruby on Rails路径穿越与任意文件读取漏洞复现 – 作者:whhbtl-安全小百科图片[13]-(CVE-2019-5418)Ruby on Rails路径穿越与任意文件读取漏洞复现 – 作者:whhbtl-安全小百科  漏洞复现成功,成功读取到passwd文件的内容:图片[14]-(CVE-2019-5418)Ruby on Rails路径穿越与任意文件读取漏洞复现 – 作者:whhbtl-安全小百科

2、修复建议

  1. 使用已经修复该漏洞的版本

参考链接:https://www.sohu.com/a/306334931_354899

ps:参考链接这篇文章讲解的非常细,对我在本漏洞复现过程中的理解有很大帮助,先给大佬跪了。

来源:freebuf.com 2020-07-26 16:10:15 by: whhbtl

© 版权声明
THE END
喜欢就支持一下吧
点赞0
分享
评论 抢沙发

请登录后发表评论