时隔16年Jeff Barr重返10.23-25 QCon上海站,带你看透AI如何重塑软件开发! 了解详情
写点什么

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

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

关注

评论

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

CRMEB 单商户 v4.0 升级,稳得很!

CRMEB

java零基础入门-Java反射机制

喵手

Java 7月月更

LeetCode-141. 环形链表(java)

bug菌

Leet Code 7月月更

实现 ABAP 条件断点的三种方式分享

汪子熙

debug SAP abap Netweaver 7月月更

Android adb常用命令

沃德

android 程序员 7月月更

一种基于 HiveMetaStore 的跨源查询方案实践

移动云大数据

hive JDBC

浅析 Region split 引入 HFileLink 优化子 Region 操作实现原理

移动云大数据

HBase

不习惯的Vue3起步一

空城机

Vue3 7月月更

恭喜这2个大模型开源项目进入OpenI启智社区孵化培育管道

OpenI启智社区

人工智能 开源 大模型

直播APP系统源码——短视频直播系统源码

开源直播系统源码

直播系统源码 开源源码 短视频系统源码

基于OpenHarmony的智能指南针

OpenHarmony开发者

OpenHarmony

Qt|使用QWebEngineView加载HTML使用及问题

中国好公民st

qt 7月月更

恭喜,成功入坑 GitHub 。。。

攻城狮杰森

git GitHub IP DNS 7月月更

Yunikorn 在云上大数据平台中的应用

移动云大数据

Apache Pulsar 跨地域复制方案选型实践

移动云大数据

Java应用的优雅停机总结

陈德伟

Java tomcat Spring Boot web开发 优雅停机

ABAP 编程语言中 Class(类)的设计原理剖析

汪子熙

服务器 SAP abap Netweaver 7月月更

科普达人丨漫画图解SGX加密计算黑科技

阿里云弹性计算

加密计算 TEE

Javva基础:多线程重点回顾

百思不得小赵

Java 多线程 7月月更

并行计算的量化模型及其在深度学习引擎里的应用

OneFlow

深度学习 模型

【C语言】进阶指针One

謓泽

7月月更

【Python技能树共建】python autoscraper 模块

梦想橡皮擦

Python 7月月更

Qt | 定时器实现动画效果时卡住了

YOLO.

c++ 定时器 qt 动画效果 7月月更

JavaWeb Dubbo使用

沃德

Java 程序员 7月月更

基于物联网设计的老人防摔倒报警系统(华为云IOT)

DS小龙哥

7月月更

Web预览附件

源字节1号

软件开发 前端开发 后端开发 小程序开发

GAN简介及原理分析

秃头小苏

GAN 7月月更

数字化需要安全沙箱技术与零信任架构

FN0

安全 数据安全 零信任

首个先进级!阿里云大数据+AI平台通过信通院数据平台整体解决方案最高等级评测

阿里云大数据AI技术

人工智能 机器学习 大数据 运维

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