微波EDA网,见证研发工程师的成长!
首页 > 通信和网络 > 通信网络业界新闻 > 新黑客技术 能够利用普通编程错误

新黑客技术 能够利用普通编程错误

时间:06-25 来源:IT专家网 点击:
Watchfire研究公司的研究人员称,他们发现了一种利用普通编程错误安全漏洞的可靠方法。到目前为止,这些普通的编程错误一直被简单地认为是质量问题,而不是安全漏洞。

  Watchfire的研究人员Jonathan Afek和Adi Sharabani在对一台网络服务器运行该公司的AppScan扫描软件的时候意外遇到了一种远程利用悬摆指针安全漏洞的方法。那台服务器在扫描的过程中崩溃了。经过调查,这两个研究人员发现,一个悬摆指针是造成系统崩溃的元凶。这并不是一个令人感到意外的结果,因为这些编码错经常引起系统崩溃是众所周知的。但是,经过进一步的实验,Afek和Sharabani发现,他们能够通过向这台服务器发送特殊制作的URL故意造成服务器崩溃,并且开始在那台目标机器上寻找运行自己的代码的方法。

  Watchfire的高级安全研究人员Afek将在8月份在拉斯维加斯召开的黑帽大会上演示这个技术。

  悬摆指针是没有指向合法对象的软件编码错误。经常是在没有改变这个指针的值的情况下删除了被指向的对象。

  悬摆指针是很普通的。但是,安全专家和开发人员多年以来一直说没有实际可行的方法利用这种错误。因此,他们一直把悬摆指针当成软件质量问题,而不是安全漏洞。但是,现在这个事情发生了变化。

  位于马萨诸塞州Waltham的Watchfire公司的研究经理Danny Allan说,普通的想法是这种问题是不能当作安全漏洞利用的。但是,我们考察了这个问题,我们认为如果我们在这个服务器中注入我们的代码,这个服务器还会很好吗?以前,这个问题是你必须废除这个指针指向的位置。这被认为是不可能的。但是,我们发现了一种使用普通的悬摆指针完成这个任务的方法并且运行了我们自己的外壳程序代码。

  由于这种编码错误非常普遍,Afek和Sharabani的研究结果是向前迈了一大步,并且是非常惊人的一步。这些研究人员最初是在微软的ISS 5.1软件中利用这个问题的漏洞。但是,Allan说,这个技术在许多有悬摆指针问题的应用程序中都好用。微软7月份发布的MS07-041安全补丁修复了IIS软件中的这个安全漏洞。

  Allan说,这个结果与缓存溢出安全漏洞非常相似,是非常严重的。这有点像潘多拉的盒子。一旦我们打开了它,它将仅仅是冰山的一角。这是一个非常普遍的问题,特别是在低级编程语言中。有许多时候你也许不知道悬摆指针。

  位于纽约的Matasano安全公司的Thomas Ptacek说,虽然他们又看到Watchfire的研究结果,但是,这些研究结果确实令人难以置信,可能是一个重要的进步。

  Ptacek说,如果这是一种新的可靠的利用这个问题的方法,这就是重要的一步,因为这不仅仅是一个安全漏洞,而是一种新的安全漏洞种类。人们现在都没有认真对待悬摆指针的问题。但是,我们很多人都在等待有人能够提出可靠地利用这个安全漏洞的方法。

  Ptacek说,悬摆指针对于C++程序员来说是一个特别可怕的问题。这些问题总是在发生。但是,这种问题主要依赖于环境。无论这个悬摆指针是长还是短,如果你能够确定这个指针的值,游戏就玩完了。

  Allan说,当Watchfire提醒微软安全反应小组Afek和Sharabani发现的这个问题时,他们遇到了怀疑,这是可以理解的。Watchfire是从2005年报告IIS安全漏洞之后闻名的,但是,那是一个简单的拒绝服务攻击问题,而不是能够被远程利用的安全漏洞。

  Allan说,这通常是理论和学术问题。但是,一旦我们向他们提供概念证明代码,他们会非常担心。他们对这个问题背后的研究工作非常感兴趣。

  Allan指出,基于Java的应用程序不会受到这种安全漏洞的影响,因为Java语言有一种内置的解除分配内存的机制。

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top