【TechTarget中国原创】两名安全工程师在上周推出一种基于Ruby的新framework,能够发现和攻击在OS X、Unix和其他操作系统上运行的常见应用软件存在的漏洞。
这个新的framework叫做“RE:trace”,它利用苹果公司Leopard操作系统中的DTrace性能监控工具,为安全专家和逆向工程师提供了同时在堆栈和堆发现漏洞的能力,然后运行各种有趣的测试。DTrace是由Sun Microsystems开发的,最初是想帮助应用软件和操作系统进行疑难问题解决,但安全专家也将它运用在其他工作任务的用途上。
在华盛顿的黑帽大会上,高级安全工程师Tiller Beauchamp和安全工程师David Weston演示了如何使用RE:trace。它基于DTrace,不仅可以发现堆和堆栈溢出漏洞,还可以检测到缓冲区溢出,并在溢出对存在漏洞的软件造成真正的崩溃前,加以阻止。当数据在某给定应用软件中流通时,该framework还可以让用户对该数据进行追踪。
“花在漏洞分析的时间大大减少。”Weston说。
DTrace是在内核中运行的,这样就可以易于访问整个操作系统,Weston说。由于它具有的特性广泛,本质上而言,它是一个“友好的、可编程的rootkit”。但是DTrace不是特意作为逆向工程工具而编写的,所以它不包括逆向工程师可能需要的便利工具。所以Weston和Beauchamp通过使用Ruby语言,增加了特性,包括用面向对象的方式在内存和追踪应用软件中dump搜索的能力。
RE:trace还为用户提供了所查看的应用软件正在发生什么的反馈信息。比如,framework能够告诉用户谁分配了某字节的内存;谁使用了它;在一次攻击中,有多少的内存溢出;是否内存曾被释放。
Weston和Beauchamp计划继续开发RE:trace,并将在接下来的几个月内增加更多的特性和功能。