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

参考链接https://mp.weixin.qq.com/s/Ok8vzfs1YUOahvU6AY2s5w

注:复现并记录一下。

0x01 简介

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

0x02 漏洞概述

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

0x03 影响版本

Rails 全版本

其中修复版本:Rails 6.0.0.beta3,5.2.2.1,5.1.6.2,5.0.7.2,4.2.11.1

0x04 环境搭建

使用vulhub进行的搭建(需要搭建好docker和docker-compose,搭建方法很简单,百度一下就好)

git clone https://github.com/vulhub/vulhub.git
cd /vulhub/rails/CVE-2019-5418
docker-compose up -d

0x05 漏洞利用

0x06 修复方式

补丁地址:https://github.com/rails/rails/commit/f4c70c2222180b8d9d924f00af0c7fd632e26715

posted @ 2020-06-17 16:51  Paddling  阅读(494)  评论(0)    收藏  举报