电脑技术学习

独家揭秘 他击碎了Vista系统的"防盗窗"

dn001

  本文转自:电脑报

  微软在Vista中升级了反盗版技术,期望这个“达到全新高度”的技术能阻止全球技术好手对Vista的破解。

  然而,一条细小的缝隙——反盗版技术SPL2.0中的漏洞,再次让人们找到了完美的“破窗而入”的途径。不过,与以往不同的是,此漏洞的发现者,不是那些曾经无数次在软件界扬名的破解组织,而是中国的一个普通的程序员——Binbin(网名)!

  他发现了SLP2.0的漏洞

  “Binbin”是国内某著名软件论坛中的一个账号,此前,大家除了知道这个账号的主人对许多技术问题非常痴迷之外,这个账号并没有太多特别之处。

  不过,在2007年2月5日后,这个账号注定将成为众人关注的焦点。因为在这一天,这个账号的主人,一个喜欢天天听五月天和信乐团歌曲的内向男孩,突然用这个账号在论坛里宣称:通过改BIOS可以突破Vista采用的SLP2.0加密技术的防御,成功激活Vista!

  一个普通用户,发现了Vista激活机制中的漏洞,无论这是不是炒作,都会引来极大的关注。更重要的是,此前,国人并没有在这个领域走在前列。

  然而,正当大家将信将疑地关注着事态进一步发展的时候,Binbin却又突然消失了,难道说发布突破Vista正版加密技术的消息是一场恶搞?直到大年三十这一天,Binbin再次出现,同时带来的还有最新研究的利用软件模拟BIOS的方法。经过网友验证,正如Binbin所言,Vista中的反盗版技术SLP2.0的确存在漏洞,已经有人利用这个漏洞突破了SLP2.0的防御,成功打开了激活Vista的大门。

  至此,SLP2.0被攻破成为铁板钉钉的事实。Binbin也随之声名鹊起,有人称他为中国的“Officevista”(officevista是俄罗斯发明时间停止法的黑客代号)。

  究竟Binbin是如何解开微软SLP2.0之谜的呢?Binbin接受了《电脑报》的独家采访,披露了研究SLP2.0技术漏洞的过程。

  “绕过”SLP2.0验证

  很早以前,Binbin就开始研究各种加密解密技术,因为了解这些技术可以提升自己开发软件的安全效果,他认为“做这个没有什么技术难度,走对路很快就有成果”。

  他说:“很多相关的信息都可以在网上找到,比如这次的SLP2.0技术,我最开始就在微软公开的文档里看出了一些端倪,他们的文档里本身就写到了ACPI的SLIC表中储存验证数据内容。”

  也正是因为这个“小小的发现”,Binbin一开始就走上了一条正确的研究之路。

  OEM产品有自身的特殊性,“尽管Vista中的SLP技术(用于OEM产品的辅助激活技术)升级到了2.0版,得到了强化,不过它最大的弱点就是将加密的数据放置在ACPI中,而绝大多数电脑的BIOS都会将ACPI数据放置到可写入的内存区域”。因此,突破OEM版本Vista的SLP2.0防御成为最可行,也可能是最快的途径。

  虽然从Vista的OEM版入手研究没有错,不过当时Vista还只是RC2版,市面上还没有带验证的BIOS数据,所以使得通过修改BIOS验证数据来达到突破漏洞的实验无法开展。

  真正的进展是在微软1月30日发布Vista之后开始的。2月初Binbin新买了华硕笔记本电脑,这款电脑带上了验证数据的BIOS,这就为他提供了实验的环境。

  最初,Binbin选择了在VMware虚拟机的环境下来进行试验。他通过将笔记本电脑BIOS里的验证数据移植到VMware的BIOS中,发现Vista能够被顺利激活。虚拟机中的试验成功让他异常兴奋,也证明了他开始的思路是正确的。

  也就是说,只要能成功地将华硕笔记本电脑的验证数据写入其他机器的BIOS中,Vista就会认为是华硕的OEM版本,从而自动通过验证。随即,他开始着手研究在实际环境中的BIOS验证数据问题。

标签: