InfoQ

InfoQ

新闻

我的书签

登录注册 以永久保存书签。

该内容已经被标记书签!

标记书签错误,请重试!

Quicksort算法标准实现中发现严重安全漏洞

作者 Ryan Slobojan 译者 郭晓刚 发布于 2009年4月1日

领域
语言 & 开发,
架构 & 设计,
过程 & 实践,
企业架构
主题
架构 ,
SOA ,
Ruby ,
Java ,
敏捷 ,
.NET ,
安全
标签
虚拟机 ,
框架

L0pht Heavy Industries黑客组织的一位研究者发现了Quicksort算法标准实现中的一处缺陷,论影响之广,这个漏洞肯定会在所有已知安全漏洞中名列前茅。InfoQ向L0pht组织的Dildog询问了漏洞的详情及可能造成的后果。

Dildog解释说这个漏洞属于利用缓冲区溢出的类型。在这类漏洞中,当用户执行带漏洞的程序时,其权限就会被恶意程序利用来执行任意代码。

本次发现的Quicksort安全漏洞代码还没有公开,但已有两家独立的安全分析公司确认Quicksort算法的标准实现中确实存在漏洞。Wikipedia上给出的Quicksort算法伪代码如下:

 function quicksort(array)
     var list less, greater
     if length(array) ≤ 1  
         return array  
     select and remove a pivot value pivot from array
     for each x in array
         if x ≤ pivot then append x to less
         else append x to greater
     return concatenate(quicksort(less), pivot, quicksort(greater))

目前已确认以下库、运行时、产品受到此漏洞的影响:

  • 多个JVM实现(包括来自Sun、IBM、Oracle/BEA和Apache的实现)
  • .Net CLR,3.5 SP1及以下版本
  • Microsoft Visual C Runtime,9.0及以下版本
  • Adobe Flash运行时,10.0及以下版本
  • glibc,2.6及以下版本
  • Apache HTTPD,2.2.13及以下版本
  • 众多集线器、交换机、路由器,包括部分来自Cisco、Juniper、D-Link、Netgear及Linksys的产品

据Dildog所说,该漏洞是在对一台受到未知恶意程序侵害的计算机分析取证时发现的。该恶意程序将受害计算机的所有系统声音都替换成了一曲80年代流行歌的片段(译注:Rick Astley,Never Gonna Give You Up),所有系统图片和图标都替换成了笑猫图Lolcat)。

尽管目前尚未发现第二例感染报告,但我们建议所有InfoQ读者提高警惕,若您在电脑上发现任何Rick Astley或者Lolcat的踪迹,请立即向有关部门报告。

查看英文原文:Critical Security Vulnerability Found in Quicksort

译者 郭晓刚 是InfoQ中文站架构社区编辑,创建并终结过数家软件小企业,翻译过多本技术书籍。

可怕 发表人 焕新 陈 发表于
Re: 可怕 发表人 Zhao Jeffrey 发表于
应该是假消息 发表人 统贤 唐 发表于
Re: 应该是假消息 发表人 Guo Xiaogang 发表于
去年的时候就搞过类似的事情 发表人 乔 木 发表于
Re: 去年的时候就搞过类似的事情 发表人 霍 泰稳 发表于
Re: 去年的时候就搞过类似的事情 发表人 Zheng Robin 发表于
........ 发表人 Wei Fisher 发表于
  1. 返回顶部

    可怕

    发表人 焕新 陈

    因为今天是4月1日!

  2. 返回顶部

    Re: 可怕

    发表人 Zhao Jeffrey

    我同意你的看法……

  3. 返回顶部

    应该是假消息

    发表人 统贤 唐

    文章中“请立即向有关部门报告”
    点击进去后,竟然是有关April_Fools'_Day的链接,哈哈

  4. 返回顶部

    Re: 应该是假消息

    发表人 Guo Xiaogang

    没有人点“提高警惕”的链接么?

  5. 返回顶部

    去年的时候就搞过类似的事情

    发表人 乔 木

    好像说是微软把Spring给收购了。。。。。。
    今年多长个心眼

  6. 返回顶部

    Re: 去年的时候就搞过类似的事情

    发表人 霍 泰稳

    看来这样的把戏不能玩太多 :)

  7. 返回顶部

    ........

    发表人 Wei Fisher

    要不是看了回复,我还真被骗了……

  8. 返回顶部

    Re: 去年的时候就搞过类似的事情

    发表人 Zheng Robin

    SPRING被收购的事也把我吓了一跳.....害我一阵狂搜....这不是真的吧.....

深度内容

"伤得起"的云计算应用——对云端应用之架构的思考

2011年4月21日至22日是值得云计算从业者纪念的日子。Amazon的IaaS服务出现故障,导致许多商业网站的服务中断,影响非常严重。作为云计算用户,我们需要思考的是,如何保证即便在云服务不可用的情况,我们的应用架构仍然能够屹立不倒?本文正是站在云计算用户的角度试图探讨这一问题。

让交付的速度跟上思考的速度

12人的技术团队,4组刀片服务器,每月20亿的访问量,每日1次准时部署,99.9%的可用性。这可能吗?当然。想知道如何做的吗?百姓网将与您分享他们在DevOps实践过程中的经验和技巧。
本次演讲视频录制于QCon杭州2011

架构之路——穿行在产品和业务之间

篱笆作为一家起源于社区的电子商务公司,反映到技术层面就是同时要面对产品和业务,以及经营战略的变化调整。如何在产品和业务的夹缝之间完成技术架构的抽象与平衡,寻找更有效的价值定位,这当中有些经验教训和个人感悟愿与众人分享。
本次演讲视频录制于QCon杭州2011

特性注入:成功三部曲

本文将对特性注入以及相关方法做一个扫盲性的介绍。我们会解释这个框架的关键要素,并附上实例来证实它们。为了让文章保持相对较短,我们不会深入到某个工具或方法中,而是会给出一些参考资料,以便大家做进一步的研究。

解析JDK 7的动态类型语言支持

随着JDK 7的发布,字节码指令集终于迎来了第一位新成员——invokedynamic指令。这条新增加的指令是JDK 7实现“动态类型语言(Dynamically Typed Language)”支持而进行的改进之一,也是为JDK 8可以顺利实现Lambda表达式做技术准备。在这篇文章中,我们将去了解JDK 7这项新特性的出现前因后果和它的意义。

Java Remoting远程服务(下)

随着互联网应用的发展,Java分布式远程服务技术受到越来越多的关注,本文将对各种相关实现以示例的形式逐一介绍,并总结其中的优缺点,使读者能够在技术选型时有所准备。这是文章的下篇。

深入浅出Node.js(四):Node.js的事件机制

专栏的第四篇文章《Node.js的事件机制》。之前介绍了Node.js的模块机制,本文将深入Node.js的事件部分。

采访和书评:精通HTML5和CSS3设计模式

《精通HTML5和CSS3设计模式》一书记录了目前HTML5应用程序的许多常见设计模式。InfoQ对该书作者之一Dionysios Synodinos进行了采访,谈到了该书以及HTML5应用的相关内容。