相关文章推荐

一、Ruby on Rails 简介

Ruby on Rails(官方简称为 Rails,亦被简称为 RoR),是一个使用 Ruby 语言写的开源 Web 应用框架,它是严格按照 MVC 结构开发的。它努力使自身保持简单,来使实际的应用开发时的代码更少,使用最少的配置。

Rails 的设计原则包括 “不做重复的事”(Don’t Repeat Yourself)和 “惯例优于设置”(Convention Over Configuration).

控制器接受向应用发起的特定访问请求。路由决定哪些访问请求被哪些控制器接收。一般情况下,一个控制器会对应多个路由,不同路由对应不同动作。动作搜集数据并把数据提供给视图。视图以人类能看懂的格式显示数据。有一点要特别注意,数据是在控制器而不是视图中获取的,视图只是显示数据。默认情况下,视图模板使用 eRuby(嵌入式 Ruby)语言编写,经由 Rails 解析后,再发送给用户。

Rails框架是以固定的命名习惯来自动判断整个架构,默认下会将网址分析成 http://domain-name/ControllerName/ActionName/Attribute/ 然后执行目标Controller中的Action,并取出指定的View(视图)回传给浏览器显示。面对数据库则以Model(模组)的形式,借由Active Record作为与数据库之间的传输接口。

二、漏洞简介

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

影响版本:
	Rails 全版本。
修复版本:
	Rails 6.0.0.beta3、5.2.2.1、5.1.6.2、5.0.7.2、4.2.11.1。

三、漏洞复现

访问http://your-ip:3000/robots可以正常访问robots.txt文件
修改Accept参数进行文件读取
在这里插入图片描述


参考:https://vulhub.org/ CVE-2018-3760漏洞复现(任意文件读取) 0x00 漏洞介绍 Ruby On Rails是一个著名的Ruby Web开发框架,它使用链轮作为开发环境中的静态文件服务器。Sprockets是一个编译和分发静态资源文件Ruby库。 在Ruby 3.7.1和更低版本中,存在由辅助解码引起的路径遍历漏洞。攻击者可以使用%252e%252e/访问根目录并读取或执行目标服务器上的任何文件。 0x... Ruby On Rails背景介绍解题方向漏洞详情影响版本一、通过burp读取二、利用Metasploit测试漏洞是否存在 Ruby On Rails是一个著名的Ruby Web开发框架,它在开发环境中使用Sprockets作为静态文件服务器。Sprockets是一个Ruby库,用于编译和分发静态资源文件漏洞详情 关于漏洞的相关信息可以查看这篇文章:CVE-2019-5418 通过修改访问控制器的请求包,且会根据用户传入的Accept头来确定文件具体位置。通过Accept: ../ 一、Ruby on Rails 简介 Ruby on Rails(官方简称为 Rails,亦被简称为 RoR),是一个使用 Ruby 语言写的开源 Web 应用框架,它是严格按照 MVC 结构开发的。它努力使自身保持简单,来使实际的应用开发时的代码更少,使用最少的配置。 Rails 的设计原则包括 “不做重复的事”(Don’t Repeat Yourself)和 “惯例优于设置”(Convention Ove RubyonRails5.0.1之前版本存在代码注入漏洞。远程攻击者可利用该漏洞发送特制请求执行任意代码。参考https//github.com/QianliZLP/CVE-2020-8163-即可。RubyonRailsRails团队的一套基于Ruby语言的开源Web应用框架。system(“【具体指令】”);在研判中较为明显,一般为。...... Ruby-On-Rails网站的用户和管理员发现他们正面临着恶意软件的攻击,该攻击利用了今年1月公布的一项Ruby安全漏洞。该漏洞一旦被利用,未打补丁的系统会直接从远程计算机上下载特定代码,编译一份IRC客户端,然后加入特定频道并等待下一步指令。松懈的安全策略暴露了出来,与此同时,这些攻击也尖锐地提醒了我们迅速部署补丁的重要性。\原始的漏洞是通过CVE-2013-0156宣布的,它位于Ruby o... ​ Burpsuite修改Accept字段—>成构造路径穿越漏洞读取任意文件 0x01漏洞介绍 ​ 在控制器中通过render file形式来渲染应用之外的视图,且会根据用户传入的Accept头来确定文件具体位置。我们通过传入Accept: ../../../../../../../../etc/passwd{{头来构成构造路径穿越漏洞读取任意文件漏洞简介 在控制器中通过render file形式来渲染应用之外的视图,且会根据用户传入的Accept头来确定文件具体位置。我们通过传入Accept: ../../../../../../../../etc/passwd{{头来构成构造路径穿越漏洞读取任意文件。 执行如下命令编译及启动Rail On Rails 5.2.2: docker-compose build docker-compose up -d 环境启动后,访问http://your-ip:3000即可看到Ruby on Rai Ruby on Rails是一个 Web 应用程序框架,是一个相对较新的 Web 应用程序框架,构建在 Ruby 语言之上。它被宣传为现有企业框架的一个替代,而它的目标,就是让 Web 开发方面的生活,变得更轻松。 【CVE-2019-5418漏洞公告:公告地址。 Versions Affected: All. Not affected: None. Fixed Versions: 6.0.0.beta3, 5.2.2.1, 5.1.6.2, 5.0.7.2, 4.2.1.
 
推荐文章