阅读更多

4顶
0踩

编程语言

原创新闻 Ruby的REXML库缺陷将导致DOS攻击

2008-08-23 22:49 by 见习编辑 robbin 评论(4) 有5268人浏览
Ruby官方网站在8月23日发布了安全通告:http://www.ruby-lang.org/en/news/2008/08/23/dos-vulnerability-in-rexml/,在Ruby当前使用的XML解析库REXML在解析具有嵌套递归元素的XML文件的时候,将会出现拒绝服务攻击的缺陷,导致服务器资源耗尽!

凡是在Rails应用程序当中使用到了XML文件解析功能的都存在上述缺陷,需要进行修复。在Rails当中的修复办法如下:

1、Rails2.0.2和以前的老版本

下载修复文件,拷贝到RAILS_ROOT/lib目录下,并且在environment.rb当中加入语句
require ‘rexml-expansion-fix’


2、Rails 2.1.0以上版本

下载修复文件,拷贝到RAILS_ROOT/config/initializers目录下即可。




4
0
评论 共 4 条 请登录后发表评论
4 楼 老熊 2008-08-25 11:15
还好我们没用
3 楼 loamy 2008-08-24 10:50
还好修复的咚咚不多。
2 楼 rainux 2008-08-24 00:44
暴露出更多的安全问题说明更多人开始关注 Ruby,这是好事情,问题暴露才可以被修复。
1 楼 robbin 2008-08-23 22:51
ruby最近暴露出来的安全问题可真不少呀

发表评论

您还没有登录,请您登录后再发表评论

相关推荐

  • 解析C语言中的sizeof.rar

    析Sizeof的用途

  • C/C++ sizeof(下)

    sizeof作用于基本数据类型,在特定的平台和特定的编译中,结果是确定的,如果使用sizeof计算构造类型:结构体、联合体和类的大小时,情况稍微复杂一下。

  • c++预处理指令#if、#endif表达式的限制(chatGPT)

    在上面的例子中,我们定义了一个名为PLATFORM的宏,并使用#if指令检查它是否等于“WINDOWS”或“MAC”。在这个例子中,我们定义了一个名为VERSION的宏,并使用#if指令检查它是否大于“1.0.0”。在这里,VERSION被视为字符串表达式,但是#if指令会把它转化为字符序列比较,因此比较的结果将是正确的。在这个例子中,我们定义了一个名为NUM的宏,并使用#if指令检查它是否大于“10”。在这里,NUM被视为字符串表达式,但是#if指令会把它转化为字符序列比较,因此比较的结果将是错误的。

  • 为什么被调函数内部不能用 sizeof(arr) / size(arr[0]) 计算数组长度?

    C语言100问之一 考点:数组作为函数参数的使用、sizeof 操作符的使用

  • ObjectC基础之字符串常量、#define、const、sizeof使用

    (一)在OC中字符串的使用是用引号包起来的,如下: NSLog(@“这是一串可用的字符串”); (二)OC中两种定义常量的方式: #define 预处理 const 使用案例如下: #import <Foundation/Foundation.h> #define LENGTH 10 #define WIDTH 25 #define NEWLINE '\n' /* 使用const关键字作为前缀来声明具有特定类型的常量 */ const int HEIGHT1 = 10; c

  • C语言宏定义实现sizeof功能

    可以使用如下两个宏定义实现类似sizeof的功能 //针对T为一个类型名的情况 #define _sizeof_type(T) (size_t)((T*)0 + 1) //针对T为一个变量或者数组名的情况 #define _sizeof(T) ((size_t)(&T + 1) - (size_t)(&T)) 测试代码 #include <stdio.h&gt...

  • C++学习代码--sizeof

    #includeusing namespace std;int main() {    cout     cout     cout     cout     cout     cout     return 0;}

  • 自定义宏实现sizeof,解决多年来对利用0地址计算的疑惑

    自定义宏实现sizeof运算符功能,可以对类型名或者变量名进行计算,同时讲解了对利用0地址计算偏移值的过程。

  • C语言:sizeof用法

    使用sizeof计算数组时,结果为数组长度*数组元素占用空间的大小,当数组为字符数组时,sizeof的功能是一致的,只不过当使用字符数组定义字符串的时候,对于字符串比如hello,数组中会自动增加一个元素’\0’,所以sizeof计算的结果为6,而strlen是计算字符串长度的,遇到’\0’结束,但是不把’\0’计算在内,因此strlen计算的结果为5,这与我们感觉上的字符串的长度为5的感觉是一致的,这就是strlen和sizeof在计算字符数组的时候的区别。操作数的存储大小由操作数的类型决定。

  • 解析C语言中的sizeof

    解析C语言中的sizeof 出自:http://www.china-pub.com 甄坚益 2002年01月08日 14:02 一、sizeof的概念   sizeof是C语言的一种单目操作符,如C语言的其他操作符++、--等。它并不是函数。sizeof操作符以字节形式给出 了其操作数的存储大小。操作数可以是一个表达式或括在括号内的类型名。操作数的存储大小由操作数的类型决定。  二、s

  • 【C语言】如何正确使用sizeof

    sizeof用过吧?你肯定用过,至少你刚开始学C或者C++的时候,学到类型这一节,你一定会写如下代码测试每个类型的长度。 printf("%d", sizeof(int)); printf("%d", sizeof(char)); printf("%d", sizeof(short)); printf("%d", sizeof(long)); printf("%d", sizeof(float)); printf("%d", sizeof(double)); 对,这就是sizeof

  • strlen与sizeof的区别

    strlen 1,一个函数(运行时计算) 2,计算字符串的长度,字符串以/0结尾 3,参数必须是字符型指针(char*)。 当数组名作为参数传入时,实际上数组就退化成指针了。 4, 实际完成的功能是从代表该字符串的第一个地址开始遍历,直到遇到结束符NULL。返回的长度大小不包括NULL。 sizeof 1,一个单目运算符 2,求的是数据类型所占空间的大小[以字节为单位] 3,

  • sizeof,宏,静态,操作符

    关于sizeof对某些参数求大小,单位是字节,如下: 按位取反操作符: 原码,反码补码初步了解: 负数在计算机中存储的补码,最高位代表符号位,0为整数,1为负数。正数原码补码和反码都一样。负数要先写出原码,最高位为1,低位补成10进制的大小即可,然后符号位不变,其余位按位取反得到反码,反码再加1得到补码。下面显示了111111---的原码转变为补码的过程,但是打印出来还是打印原码。 关于自增和自减: 上面的第一个结果为a=11,第二个结果为b=10;a=11,b=11。 强制类..

  • C语言 free ,_msize 的使用

    文章目录前言一、free的使用:二、_msize的使用 :总结 前言 一、free的使用: free: 用来释放 malloc 所申请的空间。malloc 申请的空间,如果不使用需要释放,否则会造成内存泄露。 free 不能释放非malloc 申请的空间,不能重复释放空间。 free 的函数原型: void free ( void* _Balock ); free ( p); / /直接释放首地址即可。 演示: 二、_msize的使用 : _msize :用来得到合法空间的大小。 si

  • c语言基础之sizeof的简单用法

    c语言基础之sizeof的简单用法 一、sizeof的概念 Sizeof是C语言的一种单目操作符。它并不是函数。简单的说,Sizeof操作符以字节形式给出了其操作数的存储大小。操作数可以是一个表达式或括在括号内的类型名。操作数的存储大小由操作数的类型决定。er 二、sizeof的使用方法 1、用于数据类型 ...

  • sizeof 在C语言的作用,C语言中的sizeof的用法详解

    C语言中的sizeof的用法详解一、sizeof的概念sizeof是C语言的一种单目操作符,如C语言的其他操作符++、--等。它并不是函数。sizeof操作符以字节形式给出了其操作数的存储大小。操作数可以是一个表达式或括在括号内的类型名。操作数的存储大小由操作数的类型决定。二、sizeof的使用方法1、用于数据类型sizeof使用形式:sizeof(type)数据类型必须用括号括住。如sizeof...

  • go-sizeof-tip:Go 类型的 Sizeof 提示

    Go 类型的 Sizeof 提示 只是在组织结构时检查自己的一个小技巧。 import . "unsafe" 固定尺寸 类型 Sizeof()字节 struct{} 0 [0]Type 0 bool 1 int8 , uint8 , byte 1 int16 , uint16 2 int32 , uint32 , rune 4 float32 4 int , uint 4 或 8 int64 , uint64 8 float64 8 complex64 8 uintptr 8 *struct{} , *Type 8 map[Type1]Type2 8 chan Type 8 func() 8 string 16 complex128 16 []Type 24 大批 公式: Sizeof([N]Type) = N

  • C语言-sizeof()的使用以及计算数组的长度

    sizeof()是C语言中常用的运算符,可以计算操作数的大小。sizeof的结果是无符号整数类型,通常用size_t表示。sizeof可以应用于各种数据类型,包括基本的数据类型,例如整数和浮点类型,指针类型和符合数据类型,结构体等等。 sizeof() sizeof() operator is used in different way according to the operand ty...

  • sizeof(i++)是多少?

    这里我们来看看具体的一道题: #include <stdio.h> int main() { int i; i = 10; printf("%d\n", i); printf("%d\n", sizeof(i++)); printf("%d\n", i); return 0; }  这三行输出应该是什么?   答案是:   10   4   10

Global site tag (gtag.js) - Google Analytics