一个对打击.NET应用程序情有独钟的软件工程师发布了一个新的工具,该工具可以方便使那些没有经验的程序员自行编译程序。
.NET软件工程师和顾问Jon McCoy在黑帽大会2011上发布了一个新的工具,方便程序员使用微软.NET框架逆向开发应用程序。逆向开发对于理解一个应用软件的弱点以及如何保护它免受攻击很关键。在他的“Hacking.NET Applications: The Black Arts(Hacking.NET应用程序:黑色的艺术)”演讲中,McCoy掀开了新工具的面纱,并展示了在磁盘上它如何被用于攻击微软媒体中心,且在不到一分钟的时间内,提供其源代码的访问。
“很不幸,关于媒体中心的安全水平,市场中的90%的都很脆弱。”McCoy说道,“很少有应用可以不断进行自我保护。这并不稀奇,因为这还是一个比较新的范式。”
新工具是一个被称为“GrayWolf”的编译器,它降低了那些想要进行反编译,反向工程和使用.NET程序的程序员的门槛。
“如果你可以获得对内存进行修改的权限,那你就可以改变内存中的任何程序,并操纵和控制任何程序,”在接受SearchSecurity.com的参访时McCoy说道,“我发布的新工具以及在.NET框架基础上发布的新技术,很简单的使对内存修改变容易了。”
反编译帮助计算机程序审核申请,从而了解微软.NET应用程序的安全性问题,即应用程序的潜在的弱点和设计缺陷。例如,一个存储密码的应用程序,可以通过反编译来看它是否拥有强大的加密或其他安全软件开发最佳实践。如果它到处都是潜在的漏洞,且有后门,那它可能泄漏其所存储的密码,反编译过程有助于确定应用程序是否应该被送回开发人员那里并加以改进。
GrayWolf已处于测试阶段。McCoy表示,这是首次免费工具公开发布,对于访问该工具的源代码他收取80美元的费用。他表示,发布该工具的目的是让可供的程序员可以使用。
McCoy说道,他同微软的工程师谈过他的研究,他们认为他的工作是对功能的巧妙使用。当McCoy在台上展示针对.NET应用程序的技术(比如在磁盘上攻击微软媒体中心)时,他表示,从根本上看,这些技术可以用在任何编程语言编写的应用上。他计划在下周的DEFCON 19黑客会议上再次向人们展示GrayWolf工具。
“这就像削一个椅子,没有人可以准确告诉你该怎么做,”McCoy说,“不过,当然实在法律和道德的界限内。”
McCoy作关于如何加固.NET应用方面的咨询,他希望开发人员能够利用该工具,并将其作为加固应用过程中的一部分,使攻击者更难以攻击渗透和窃取数据。
“事实上,它并不能帮助你开发一个更好的应用,”关于GrayWolf McCoy这样说道,“它帮助你了解如何阻止其他人反编译,获得你的源代码或者对你的应用进行损害。”