写点什么

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

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

关注

评论

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

七面阿里淘宝,工程项目经验为0,所以被死磕Java,最终拿p7职级

公众号_愿天堂没有BUG

Java 编程 程序员 架构 面试

工业互联网+VR,打破企业发展局限

一只数据鲸鱼

数据可视化 工业4.0 vr 数字孪生 虚拟仿真

JVM运行时数据区域

W🌥

Java JVM 8月日更

为什么VR视频的清晰度不高?

爱奇艺技术产品团队

编码 vr 编解码 8k 解码

牛啊!长这么大还是头一次见24W字的SpringBoot从入门到实战文档

公众号_愿天堂没有BUG

Java 编程 程序员 架构 面试

奥哲以完善的低代码产品矩阵,为泛行业企业客户数字化赋能

海比研究院

ClickPaaS:SaaS2.0下打造极致的PaaS能力

海比研究院

走出回归测试困境,爱奇艺精准测试体系建设

爱奇艺技术产品团队

测试 开发 精准测试 i技术会

教你用python爬虫下载1w+『ppt模板』,再也不用付费去购买啦!

Python研究者

8月日更

北鲲云告诉你足够的存储空间在高性能计算有多重要

北鲲云

SphereEx 创始人张亮云咖访谈回顾:构建数据服务的新思路

SphereEx

数据库 开源

基于 Web 端的屏幕共享实践

ZEGO即构

大前端 音视频 web端屏幕共享

JavaScript 正则表达式的 5 个方法

devpoint

regex match 8月日更

Linux云计算-MySQL-表操作-索引-外键-视图

学神来啦

MySQL 数据库 Linux 运维

疫情闭关期间,读完这些“Java技术栈”,拿下阿里Offer没问题

公众号_愿天堂没有BUG

Java 编程 程序员 架构 面试

美国黑帽网络安全大会:移动平台和开源软件正在成为网络安全关键威胁

BeeWorks

微步在线TDP:拯救被IDS折磨的安全人员

BeeWorks

数据应用的变与不变,ShardingSphere 正在影响未来数字体验的建设理念

SphereEx

数据库 开源

开源应用中心 | 快来一键体验,这款仅有400KB的开源博客程序!

开源

一周信创舆情观察(8.2~8.8)

统小信uos

别慌!阿里专家破SpringBoot:入门+基础+进阶+项目

Java spring 程序员 架构 面试

你敢信?清华毕业大佬用了一个坦克大战项目就讲完了23种设计模式

公众号_愿天堂没有BUG

Java 编程 程序员 架构 面试

25岁阿里120W年薪架构师推荐学习的750页微服务架构深度解析文档

公众号_愿天堂没有BUG

Java 编程 程序员 架构 面试

拒绝焦虑!Alibaba巨擎随手甩来的一本Java性能优化让我收获满满

Java 编程 架构 面试 阿里

云太多了怎么管?你需要一个中立开放的云管平台

BeeWorks

极客星球|基于加权DBSCAN的工作地居住地计算方法

MobTech袤博科技

如何查看github和gitee评论消息

Albert

GitHub

HarmonyOS学习路之开发篇—— Java UI框架(组件与布局说明)

爱吃土豆丝的打工人

HarmonyOS 布局与组件 java UI

抢占风口,赢得先机——中国PaaS市场风口深度分析

海比研究院

linux服务器网络编程之线程模型

Linux服务器开发

reactor 线程模型 Linux服务器开发 Linux网络编程 服务器模型

Dubbo No provider问题排查思路

捉虫大师

dubbo no provider

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