【AICon】探索八个行业创新案例,教你在教育、金融、医疗、法律等领域实践大模型技术! >>> 了解详情
写点什么

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

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

关注

评论

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

2022年Flutter真的会一统大前端吗?

坚果

Flutter 小菜 1月月更

SparkSQL高并发:读取存储数据库

华为云开发者联盟

数据库 高并发 Sparksql 存储 读取

无服务器计算Serverless能否引领云计算下一个十年?

用友BIP

云计算 容器 无服务器计算

Python监督学习之分类算法的概述

王小王-123

Python 人工智能 机器学习 分类算法

起个变量名,好的代码应该是这样的

蜜糖的代码注释

Java 互联网 开发 后端技术

从重大漏洞应急看云原生架构下的安全建设与安全运营(上)

腾讯安全云鼎实验室

云原生 安全漏洞 安全服务

教程直播第7期|如何对 OceanBase 进行 SQL 诊断和调优

OceanBase 数据库

数据库 直播 课程 OceanBase 开源 OceanBase 社区版

数智融合加速驱动企业商业创新

用友BIP

大数据 数据中台

【重构前端知识体系之HTML】HTML5给网页音频带来的变化

归子莫

html 前端 1月月更 audio

M1 用不了 Vagrant 只能用这个代替了“ Multipass” 一个 如Docker般的虚拟机

edd

☕【Java深层系列】「并发编程系列」让我们一起探索一下CyclicBarrier的技术原理和源码分析

洛神灬殇

并发编程 AQS CyclicBarrier Java 线程 1月日更

企业可以定级吗?可以自己确定等保等级吗?

行云管家

网络安全 等保 等级保护 等保2.0

【监控体系】全面系统的Zabbix讲解 | 含源码&监控类型整理

云智慧AIOps社区

运维 监控 zabbix 智能运维 监控工具

恒源云(GPUSHARE)_Teacher Forcing训练小技巧来啦~

恒源云

深度学习 语音识别

《火绒安全2021终端安全情报年鉴》发布 拦截弹窗广告45亿次

火绒安全

网络安全 终端工具 终端安全 勒索攻击 弹窗

深入浅出Apache Pulsar(4)Pulsar Functions

云智慧AIOps社区

Apache kafka 云原生 pulsar 消息中间件

8节深度学习干货课程,帮你轻松点亮AI项目开发技能

OpenI启智社区

人工智能 深度学习

服务网格的落地探索和实践

ZEGO即构

微服务 istio 服务网格 音视频开发

markdown-it 插件如何写(三)

冴羽

JavaScript 前端 vuepress markdown-it markdown-it插件

字节跳动数据湖技术选型的思考与落地实践

字节跳动数据平台

数据湖 数据流 Apache Hudi

【安全漏洞】Struts2漏洞集合总结

H

网络安全 安全漏洞

架构实战训练营- 模块8 -作业

温安适

「架构实战营」

Python 判断图片和文件真实类型(qbit)

qbit

后缀

首批+唯一!阿里云实时计算 Flink 版通过信通院大数据产品稳定性测试

Apache Flink

大数据 flink 阿里云 实时计算

面试官:知道 Flutter 生命周期?下周来入职!

百瓶技术

前端 生命周期 客户端 Flutter 小菜

SAP ABAP 业务开关和 SAP 电商云的 Feature Level

Jerry Wang

angular abap 1月月更 增强包 增强技术

迭代发布后,为什么还需要开迭代回顾会议?

LigaAI

团队管理 敏捷开发

腾“云”架“雾”,3DCAT带你进入元宇宙

3DCAT实时渲染

云渲染 元宇宙

国内公有云首个支持保留消息功能!百度智能云天工物联网核心套件技术再升级

百度大脑

人工智能

科技,让春节团圆再无距离

Anthony

Hoo虎符研究院2022年0124期区块简报

区块链前沿News

Hoo虎符 Hoo 虎符交易所 区块链资讯

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