独家揭秘 他击碎了Vista系统的"防盗窗"
2007-04-20 14:49:23 来源:WEB开发网攻破BIOS难关
由于虚拟机中采用的是比较通用的Phoenix的BIOS,因此在实际环境中验证可能会比较顺利。然而,当Binbin将华硕的验证数据写入到非品牌机的BIOS里后,却发现并没有像预想的那样让系统激活。
问题出在哪里呢?通过查阅相关BIOS资料,Binbin发现,其实已经出厂的BIOS是由很多部分组成的,并没有留给用户自主添加ACPI验证数据的地方。在虚拟机中验证之所以成功,是因为使用了一款叫做Phoenix BIOS editor的工具,BIOS数据是整体压缩之后再写入的,而直接写入的话则将破坏原有的BIOS数据。
如果要完美地写入ACPI数据,就需要知道BIOS数据加密算法,然后进行逆操作,才知道应该加在什么地方,这似乎难度不小。
不过Binbin想到了另外一种办法,基本原理就是在BIOS的ACPI里面加入一个SLIC表,因为对于大多数BIOS来说,并不允许插入数据。他用替换的方式,换掉许多不重要的数据。
Binbin指出,对于DIY的兼容机而言,BIOS中是不存在ACPI_SLIC表的,故无法通过SLP 2.0验证。但是,利用SLP2.0存在的漏洞,我们可以使用从OEM硬件、各种品牌机中获取的信息,将SLP2.0的各项验证数据移植到DIY的兼容机中,从而顺利通过验证。
果然,按照这种思路操作,实验成功了!这台非品牌机中的Vista被成功激活的消息也让网络瞬间沸腾起来。
职业理想:进入微软
SLP2.0漏洞造就了第一个堪称完美的Vista破解方法。作为漏洞第一发现者的Binbin,也早已成为众多技术人员崇拜的对象。然而,Binbin本人却没有人们想象的那么激动。
他对记者表示,自己仅仅是研究了一下SLP2.0的技术弱点。作为一名技术爱好者,他认为“技术是没有正邪之分的,关键看使用的人出于什么目的使用该技术。我认为我所研究的东西只适用于实验室环境,在生产环境中测试、使用这个漏洞,是很不明智的做法,我也不希望自己的研究成果被用于非法目的”。
更多精彩
赞助商链接