写点什么

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:052015
用户头像

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

关注

评论

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

解开命运之"结",重拾现实自由——《1Q84》中的奇幻现实与人生哲学

少油少糖八分饱

读书笔记 命运 村上春树 小说推荐 1Q84

SketchUp Pro2023中文集成破解版【含草图大师2023序列号和验证码】

Rose

ACCDB MDB Explorer for mac 专业的MDB和ACCDB数据库查看器

Rose

AI是助力还是取代我们?

Bruce Talk

AI Copilot

【线上问题】记一次公司日志基础组件SPI使用不当导致业务中断

Disaster

bug java 并发

深入学习 XML 解析器及 DOM 操作技术

小万哥

xml 程序人生 编程语言 软件工程 前端开发

博客平台选择指南:找到适合程序员的完美舞台

何书悦

程序人生 写作

Kubernetes反模式避坑指南

俞凡

Kubernetes 最佳实践

WorkPlus行政单位内部即时通讯软件的最佳解决方案

BeeWorks

精美和令人震撼的3D动态桌面壁纸Mach Desktop 4K for Mac

Rose

兼容m1 Lightroom Classic 2021 for mac(lr 2021 中文大师版)

Rose

移相全桥DC-DC变换器快速设计与开发

芯动大师

芯片 DC-DC 电源控制

使用 Gateway API 在命名空间之间发送流量

Gingxing

kong API网关 kong-plugin Kong 网关 Kong Gateway

玩转数据-Python数据采集的方法-淘宝商品详情接口

技术冰糖葫芦

API 接口

1688API接口推荐:1688店铺所有商品数据接口

tbapi

1688API 1688店铺所有商品接口 1688店铺数据接口

华为配置Hotspot2.0无线网络示例

知孤云出岫

网络安全

关于云交互与实时的云渲染技术

3DCAT实时渲染

实时云渲染 云交互

WorkPlus领先的IM厂家,为企业提供高质量的沟通解决方案

BeeWorks

WorkPlus Meet局域网视频会议软件的领先解决方案

BeeWorks

Github每日热榜2024.03.17

天马行空的大杂烩

程序员 最新 开源软件

在 Windows 上利用Qwen大模型搭建一个 ChatGPT 式的问答小助手

Hunter熊

大模型 cuda Qwen Torch

SQL注入攻击有什么解决办法

德迅云安全杨德俊

散热利器来袭,TG Pro for Mac让你告别Mac过热问题!

Rose

path finder for mac 激活码 最好用的文件管理浏览器

Rose

Waves12破解版安装教程 Mac版全套音频效果处理工具 支持M1/M2

Rose

如何让 iPhone 无线投屏到 Mac 上呢?airserver mac专业投屏工具

Rose

简单实用的鼠标右键助手专业版MouseBoost Pro mac版

Rose

macOS 的专业音乐播放器和 MIDI 文件编辑器QMidi Pro for Mac破解版

Rose

Vben-Admin 错误 Cannot destructure property 'VITE_GLOB_APP_TITLE' of 't' as it is undefined

麦兜

iot的10种常见协议,特点,组网模式及其使用场景

了了

IoT 技术选型 组网

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