NVIDIA 初创加速计划,免费加速您的创业启动 了解详情
写点什么

Ruby 1.8.x 中 BigDecimal 的 Dos 漏洞

  • 2009-06-14
  • 本文字数:639 字

    阅读完需:约 2 分钟

Ruby 1.8.x 的所有版本中发现了一个易被 DoS 攻击的漏洞:

将 BigDecimal 对象转换成 Float 数的时候会导致一个问题,这个问题使得攻击者能够很容易得到段错误。
由于 ActiveRecord 即依赖于这个方法,所以大多数 Rails 应用程序都会被影响到。虽然这个并不只是 Rails 的问题。

Riding Rails 博客也指出了这个漏洞

即将发布的 Rails 2.3.3 将会有一些小改动,减少了一些这个漏洞中可能被攻击的 vectors 数量。但是这些改动不会关闭每一个可能遭受攻击的方法,用户仍然需要不断尽快升级升级他们的 Ruby 安装程序。

这篇博文同样指向了了 NZkoz 的 bigdecimal-segfault-fix,无法升级 Ruby 的用户的一个临时修复方法这篇文章,这也是一个解决办法,但是这个修正版本可能会破坏应用程序,所以升级是唯一一个合适的解决方法。

所有的 Ruby 1.8.x 版本都被影响了,第一个修正的 Ruby 版本Ruby 1.8.6-p369 1.8.6 FTP 下载链接)和Ruby 1.8.7-p173 1.8.7 FTP 下载链接)。

JRuby貌似也被影响了。 Bug JRUBY-3744 跟踪了这个问题:

JRuby 貌似也同样被影响了。它不会崩溃,但是会陷入无限循环中。

这个样例输出记录了这种行为。

一个实验的结论揭示了在 bigdecimal-segfault-fix 中使用的解决方法是一个临时的解决方法,因为它仅仅是修改了 BigDecimal 类,然后在使用过大的数的时候抛出异常。但是在 JRuby 中,这种代码却失败了,而不是保持 JRuby 线程继续工作;很显然这种代码的修改不能够支持更大的数。

Ruby 1.9.x的用户不会被影响

查看英文原文: DoS Vulnerability in BigDecimal

2009-06-14 04:261193
用户头像

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

关注

评论

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

软件测试 | 测试开发 | 分布式锁的实现方案

测吧(北京)科技有限公司

测试

禅道的工时管理

禅道项目管理

项目管理 工时 禅道

软件测试 | 测试开发 | Thinkphp5 集成 Swoole

测吧(北京)科技有限公司

测试

软件测试 | 测试开发 | Lambda表达式介绍和底层实现分析

测吧(北京)科技有限公司

测试

软件测试 | 测试开发 | 提高Android云真机稳定性的方法

测吧(北京)科技有限公司

测试

ESP32-C3 学习测试 蓝牙 篇(二、蓝牙调试APP、开发板手机连接初体验)

矜辰所致

ESP32-C3 9月月更 蓝牙APP

全方位助力数据科学组织协同&个人研究:ModelWhale 产品功能介绍与版本选择指引

ModelWhale

云计算 科技 数据科学 编程建模 组织协同

华为应用市场审核指南解读课程上线,面向开发者讲解应用审核2022年更新要点

最新动态

软件测试 | 测试开发 | ThinkPHP 接口开发过程

测吧(北京)科技有限公司

测试

软件测试 | 测试开发 | 一种基于视频帧差异视频卡顿检测方案

测吧(北京)科技有限公司

测试

一文读懂TDengine的三种查询功能

TDengine

数据库 tdengine 时序数据库 企业号九月金秋榜

全网首发!马士兵内部共享—1658页《Java面试突击核心讲》

Geek_0c76c3

Java 数据库 开源 程序员 开发

软件测试 | 测试开发 | 用模拟器实现视频流的音画分离

测吧(北京)科技有限公司

测试

软件测试 | 测试开发 | Tornado 异步性能分析

测吧(北京)科技有限公司

测试

哪7个场景影响研发效能?

LigaAI

敏捷 LigaAI 企业号九月金秋榜 #敏捷开发 #程序

Java岗史上最全八股文面试真题汇总,堪称2022年面试天花板

Geek_0c76c3

Java 数据库 开源 程序员 开发

软件测试 | 测试开发 | 堆排序原理及实现

测吧(北京)科技有限公司

测试

软件测试 | 测试开发 | 相似图像的检测方法

测吧(北京)科技有限公司

测试

ESP32-C3 学习测试 蓝牙 篇(三、认识蓝牙 GATT 协议)

矜辰所致

蓝牙 ESP32-C3 9月月更 GATT

一加是OPPO的子品牌?我来说说我的看法

Geek_8a195c

软件测试 | 测试开发 | Pandas数据分析及可视化应用实践

测吧(北京)科技有限公司

测试

字节跳动基于Doris的湖仓分析探索实践

字节跳动数据平台

数据仓库 数据湖 Doris Hudi 湖仓一体

我与CI流水线的羁绊,任谁也无法斩断!

极狐GitLab

DevOps 持续集成 jenkins CI/CD 极狐GitLab

当下企业数字化转型,PaaS是基础解

ToB行业头条

Trending热榜关闭前,我把Github今年最火Java面试题汇总扒下来了

Geek_0c76c3

Java 数据库 开源 程序员 开发

软件测试 | 测试开发 | Aiomysql 与 Sqlalchemy 的使用

测吧(北京)科技有限公司

测试

软件测试 | 测试开发 | Android App 保活服务的配置与禁用

测吧(北京)科技有限公司

测试

史上最全499道Java面试题:JVM+分布式+算法+锁+MQ+微服务+数据库

Geek_0c76c3

Java 数据库 开源 架构 面试

喜迎华诞!10月月更伴随着国之盛庆向你走来!

InfoQ写作社区官方

热门活动 10月月更

IDC发布《中国边缘云市场解读(2022)》:阿里云蝉联中国公有云市场第一

阿里云视频云

边缘计算 公有云 边缘云

Vue3入门指北(五)条件渲染

Augus

Vue 3 9月月更

Ruby 1.8.x中BigDecimal的Dos漏洞_Ruby_Werner Schuster_InfoQ精选文章