HarmonyOS开发者限时福利来啦!最高10w+现金激励等你拿~ 了解详情
写点什么

Ruby on Rails 出现脚本和计时器安全问题

  • 2009-09-26
  • 本文字数:1241 字

    阅读完需:约 4 分钟

最近发现的两个安全问题给 Ruby on Rails 社区带来了一些忙乱,每个 Rails 开发者都必须注意近期发布的升级包。

易受攻击的跨站脚本

第一,可能是最严重的就是 Brian Mastenbook 发现的跨站脚本(XSS)的脆弱,并且在他的博客中报告了这个问题。Brian 描述了他是如何对 Twitter 和 37signals Basecamp 的 Ruby on Rails 进行跨站脚本攻击的。

我的注意力很快地转向了 Twitter ,这是我当时运行的唯一一个 Web 应用程序。一会儿,我发现一个 URL 查询参数中的 Javascript 代码导致溢出,在 twitter.com 的主体中运行。是的!跨站脚本,这就是 Twitter 蠕虫的制作方法。但是这个问题是只针对 Twitter,还是能够在其他站点运行? 我很快用一个测试 Basecamp 账号进行了实验。Basecamp 也是和 Twitter 类似,使用了 Ruby on Rails 作为其 Web 前端,所以这是一个测试上述问题是只针对 Twitter 还是普遍存在于 Rails 中的好办法。果不其然,同样的能够攻击 Twitter 的恶意 UTF-8 字符串也能够影响 Basecamp。

虽然这种攻击的可能性不是很高,但是 Ruby on Rails 团队很快做出了反映,检查了这个报告并且为 Rails 2.0 - 2.3 发布了补丁。

这些补丁是 git-am 格式的,包含两个更新部分。清理多字节字符串的代码和这些代码的相关帮助。 - 2-0-CVE-2009-3009.patch – 2.0 版本补丁

团队建议将不支持的 Rails 升级到现在的版本,因为未来发现的问题解决方案也可能不会支持本次未支持的版本。我们要注意,只有 Rails 2.2.x 和 2.3.x 是将来肯定会支持的。

脆弱的计时器

另外一个问题类似于计时器攻击。这种攻击和Rails 验证储存在cookie 中的消息摘要有关,这个缺陷允许一个攻击者来决定伪造签名能够在什么时候通过验证。这可能诱引其他的攻击,例如伪造摘要。

Rails 团队承认这种攻击是不太可能的,但是他们还是建议打上补丁。补丁现在只是支持 Rails 2.2.x 和 2.3.x:

这些补丁是 git-am 格式的,现在只是包含了单一的代码部分。 - 2-2-timing-weakness.patch – 2.2 版本补丁

Coda Hale 是这个 Rails 计时器问题的发现者。他的网站很好地解释了计时器问题的概念以及它们是如何被利用的。

Ruby on Rails 2.3.4

Rails 开发者还是没有忘记给他们运行在 Ruby on Rails 2.3.4 的 Rails 程序打上最新的补丁,这个补丁修正了一些 bug,并且处理了上述两个安全问题。

安全修复

2.3.4 修复了两个报告给我们的安全问题。欲知详情请查看安全通告。

Bug 修正

感谢 BugMash 的帮助,我们在这个版本中修复了大约 100 个 bug。当然不会修复在开发模式下和 rack 中间件以及 rails metal 封装引起的重载问题。

这个版本也包括了一个新特性,能够通过一个简单的 rake db:seed 命令将 seed 数据添加到项目数据库。

查看英文原文: Ruby on Rails Security Vulnerabilities

2009-09-26 20:051706
用户头像

发布了 90 篇内容, 共 34.2 次阅读, 收获喜欢 5 次。

关注

评论

发布
暂无评论
发现更多内容

带你了解3类预训练语音模型预测方法

华为云开发者联盟

语音 预训练 语音模型 前文 后文

2021年1-9月墨天轮最受欢迎的20篇技术文章

墨天轮

MySQL 数据库 oracle

演讲VIDEO大放送|如何打造实景三维高效业务支撑架构

焱融科技

云计算 分布式 GIS 高性能 文件存储

客户服务CRM系统,提供优质客户服务

低代码小观

软件 CRM 管理工具 客户服务

阿里教学篇:一切从代码出发,Spring Boot从入门到源码到项目

Java Spring Cloud Spring Boot

通过题目来讲一讲计算机系统概述相关知识 3 | 计算机组成与系统结构专题

Regan Yue

计算机组成原理 10月月更

OpenSearch 文档如何进行编译

HoneyMoose

Linux内核漏洞精准检测如何做?SCA工具不能只在软件层面

华为云开发者联盟

Linux 二进制 漏洞 SCA工具

Python代码阅读(第48篇):返回最大元素的索引

Felix

Python 编程 Code Programing 阅读代码

鸿蒙轻内核M核的故障管家:Fault异常处理

华为云开发者联盟

鸿蒙 异常 故障 Fault异常处理 Fault

JSON必知必会【PDF+视频教程】

FunTester

json 教程 视频 接口测试 FunTester

应用开发专家一席谈:开发低代码,上手低门槛,AppCube使能Citizen Developer,人人都是开发者

华为云开发者联盟

开发者 软件开发 低代码 AppCube 应用开发

一周信创舆情观察(10.18~10.24)

统小信uos

保障公有云资源安全运维小技巧-使用内网!

行云管家

公有云 内网穿透 内网 云资源 IT运维

优雅代码技巧

十二万伏特皮卡丘

WebRTC(66 - 96)Release Notes

webrtc developer

WebRTC

银行网点业绩增长缓慢,中科柏诚本地生活高效解决

联营汇聚

AISWare AntDB 亚信科技数据库产品特性解读——平滑弹性扩展 (二)

亚信AntDB数据库

ES入门教程

阿强

elasticsearch elastic ES

精益求精,零代码训练营第五期顺利结业

明道云

你未必知道的 WebRTC – 前世、今生、未来

FinClip

WebRTC

倒计时1天|StarRocks Summit 2021,为您揭开数据分析的秘密!

文本逆序翻转工具

入门小站

工具

Vue进阶(幺伍肆):vue-resource 应用

No Silver Bullet

Vue vue-resource 10月月更

20张图!常见分布式理论与解决方案

Java 架构 面试 分布式 后端

等保办是啥单位?属于哪个系统?有什么作用?

行云管家

网络安全 信息安全 数据安全 等级保护 等保测评

netty系列之:netty实现http2中的流控制

程序那些事

Java Netty HTTP 程序那些事 http2

爱奇艺iOS稳定性测试实践

爱奇艺技术产品团队

ios 测试 稳定性

[ CloudWeGo 微服务实践 - 02 ] 上手

baiyutang

golang 微服务 10月月更

云短信服务孰优孰劣?博睿数据9月云短信评测报告

博睿数据

ffmpeg 推拉流示例

webrtc developer

Ruby on Rails出现脚本和计时器安全问题_Ruby_Robert Bazinet_InfoQ精选文章