刷BIOS再到EFI破解,Vista激活的前世今生和未来


2008年5月20日 编辑:武文斌 人气: 评论:0

Vista之家www.vista123.com):刷BIOS再到EFI破解,Vista激活的前世今生和未来

各大BIOS厂商努力为BIOS中加入新元素,如PnP BIOS,ACPI,传统USB设备支持等等,但BIOS的根本性质没有得到任何改变。这迫使英特尔在开发更新的处理器时,都必须考虑加进使效能大大降低的兼容模式。有人曾打了一个比喻:这就像保时捷新一代的全自动档跑车被人生套上去一个蹩脚的挂档器。而EFI的应用给了各个厂商新的希望…… 

虽然Intel对于EFI已经喊了很多年了,直到今年微星才推出了支持EFI的P35主板,当这个产品将会慢慢普及到MSI的P45产品线时,一个新的疑问诞生了?如果说EFI技术将逐步替代原有的BIOS,哪么BIOS破解Vista是否会被终结呢?

★ EFI来了,是好还是坏?

·EFI真的能代替传统BIOS吗?

·使用了EFI就可以避免vista操作系统被破解吗?

◎ BIOS和EFI的区别

·EFI在概念上非常类似于一个低端的操作系统,并且具有操控所有硬件资源的能力;
·EFI和BIOS最显著的区别就是EFI是用模块化;
·EFI较BIOS而言更易于实现,容错和纠错特性更强,缩短了系统研发的时间;
·BIOS的硬件服务程序都已16位代码的形式存在,而运行于32位或64位模式,乃至未来增强的处理器模式下;
·EFI的驱动模型可以使EFI系统接触到所有的硬件功能,在操作操作系统运行以前浏览万维网站; 

● 反盗版的诉讼一直在持续:疑似盗版商反诉微软

在一片如何能更好保护知识产权的讨论声中,关于微软Windows Vista的盗版问题一直饱受争议。近期有国外媒体报道,微软将在美国洛杉矶市一家法院对阿布达拉及其他6名软件销售商提起法律诉讼,称这7名软件销售商涉嫌销售盗版Windows操作系统及其他微软软件产品。而萨米尔·阿布达拉(Samir Abdalla)表示将在欧盟反诉微软,因为微软涉嫌滥用其市场优势地位,并压制合法自由贸易活动。

Vista SP1又被宣告破解

微软Vista SP1反盗版机制WGA验证程序最新版本为1.7.69.2,这一版本是在2008年3月份发布,并于3月18日将其加入到最新的操作系统Vista SP1。但残酷的事实是:Vista SP1最新WGA再次遭黑客破解。 

上图:主板的BIOS成为了破解Vista的第一站

2007年1月30日,Vista零售版正式发布。与微软以及伙伴的群情亢奋不同的是,盗版商们却早已虎视眈眈、蠢蠢欲动。就在Vista发布的一周之后,两位华人工程师Aeno与BinBin对外正式公布,他们已经通过修改主板BIOS,使得系统获得与品牌电脑OEM正版授权完全一样的免激活效果,Vista再度告破。

利用BIOS破解操作系统已经不是第一次。早在2005年的WindowsXP时代,网络上便一再流传通过Aawrd DMI Configuration Utility工具,在BIOS中加入OEM厂商信息,可免费激活OEM版本的Windows XP系统。转入2007年,修改BIOS的方法,OEM版本vista认证信息被成功伪造在非原生支持SLIC段的BIOS里,再次使得大打安全牌的Vista系统陷入尴尬的境况。

● 破解vista激活机制三大方法

全世界的黑客们,都希望找到这个被开发者称为“史上最安全”的操作系统软件的“命门”,为此大家前仆后继。目前,网络上已经透露出三种破解Vista激活机制的方法:

1、时间停止法

原理:TimeStop(时间停止)法,首先更改系统时间为2099年12月31日(Vista支持的最后时间),破解完后更改为当前时间,通过停止Vista中的计数器以达到强行冻结vista验证时间的目的,最终系统激活时间定格在30天。黑客组织已经在网络上提供傻瓜激活程序下载,最新的2.0版可以激活64位操作系统。

缺陷:不享有自动更新以及微软其它服务,一旦把机器设置为自动更新,TimeStop失效,甚至可能导致系统瘫痪。 

2、KMS激活法

原理:此方法主要针对激活Windows Vista Enterprise(企业版)。为了防止在XP时代的免激活企业版的散播,Vista要求集体用户必须激活每一个副本的操作系统。通过与KMS(Key Management Service,密钥管理服务)服务器连接,用户可在电脑上激活vista系统,而破解者们,正是利用VMware Workstation 5.5.3这样一个虚拟机软件,使用VMware镜像和VBS脚本复制一个本地KMS,使得可以绕过微软企业版Vista系统的反盗版机制成功激活Vista系统。

缺陷:Home和Ultimate版不能接受KMS密钥,仅能在 Business(商业版)或Enterprise(企业版)下使用;必须每6个月重新启动KMS服务器激活一次。 

3、OEM激活法

原理:利用的是微软OEM中用于辅助激活的SLP(System-Locked Preinstallation)技术的漏洞(不感兴趣的可以无视),通过修改BIOS中的信息再配合导入的正版OEM证书文件来获得永久性的激活以及正版认证。危险系数最高,但破解后能得到与vista正版相同的升级服务。

缺陷:可能导致主板损坏或者功能缺失的危险。

针对第一、第二种方法,微软早在去年12月便发布了名为Windows Vista Validation UPDAte KB929391的升级补丁,然而就在补丁发布后的3小时内,该方法再次告破!目前,OEM激活法可谓最为火热,因为成功率最高以及破解成功后可以真正实现原版功能。对于现在各大论坛中讨论得最为火热的OEM激活法,网络上的提供的“招数”以及“服务”更是空前。 

● 为何普通DIY兼容机无法成功激活OEM版Vista?

因为DIY兼容机在BIOS中缺少ACPI_SLIC表,无法满足SLP 2.0验证。一切的问题,在于BIOS。目前,最重要的过程便是在BIOS中添加SLP 2.0支持,在无BIOS源码的情况下,添加一个包含SLP证书公钥和SLP标志的ACPI_SLIC表到BIOS中。目前,仅能通过替换现有的、功能较小的ACPI表来实现与OEM版本BIOS的吻合,而要实现动态修改添加尚存在一定的难度。使用静态替换法,可能导致的问题便是在更新完BIOS后,无法再更改内容的容量。 

上图:国内某私人FTP上提供的破解资源下载,甚至超过了破解XP的势头

普通版本的BIOS和OEM版本的BIOS有何区别呢?

经过研究发现,OEM版本中的BIOS多出SLP证书公钥和SLP标志,它们均存储在OEM硬件内,写入在BIOS的ACPI_SLIC表中,而这些是非OEM版本BIOS所不具备的。

在玩家对vista存在的漏洞验证过程中,通过使用MMTOOL分离BIOS文件,发现OEM版BIOS中包含534c4943 (十六进制)字段,这些正是SLIC表格标记。它们一般都可以加入slp20pubkey和slp20marker两个模块338字节地址空间。如果满足大于338字节空余空间及SLIC表格标记,便是OEM版本的BIOS。SLIC(System Liscensed Internal Code)翻译成中文就是预安装系统许可内部固有代码。

这样的方法,成功破解Vista后的几率是多少呢?据一份来自国内vista论坛的投票统计的结果,有38%的用户已经通过该方法成功修改并激活Vista系统,有14%的用户成功修改后却无法激活,而存在着20.3%的用户因修改BIOS失败后,主板返修送回工厂。

传统的BIOS可以被很轻易的破解,不论微软想什么办法都将面临操作系统被破解,哪么EFI的诞生是否会终结操作系统被BIOS破解呢?让我们先从BIOS和EFI说起。

●BIOS的第一印象

电脑的核心是大家口中的BIOS(basic input/output system),因为它是负责在开机程序中启动所有计算机内的组件的代码。计算机开机时,BIOS会测试基本系统功能、启动并进行核心系统硬件组态,再加载操作系统(OS),以交由OS来控制使用者与计算机之间的互动。同时,BIOS也扮演OS与底层硬件之间的桥梁。

BIOS当初是针对简单配备计算机中的DOS所设计的,后来持续因应Windows以及日趋复杂的系统,不断进行修改,加入许多扩充功能,包括启动电源自我测试(POST)、电源管理、系统管理,以及支持系统外围组件的自动仿真与资源分配功能。

但事实上,BIOS并未因此改变其运作规模。因为BIOS是针对每部系统的硬件组合量身打造,所以仅会启动开机流程中相关的核心系统外围组件 – 包括键盘、序列I/O端口、USB、屏幕,以及磁盘接口 ,换句话说,就是让PC主要还是依赖OS指令以运作所有PC功能。 

上图:有时简单的翻译并不能解决根本问题

复杂、非中文的BIOS阻碍了人们对它的了解,于是BIOS慢慢变成了只有少数专业人士才能操作的禁区。在PC 3.0时代这陈旧的设计和现在全新的需求,称为了一个不可调和的矛盾。

制造业者需求,传统的BIOS无法满足

以PC制造商为例,若能透过BIOS进行制造测试,业者将因此在制造过程中大幅受益,像是透过网络即可轻松加载磁盘镜像(disk image)、或是执行未经开机程序(non-boot)的硬件,以及不必进入操作系统就进行系统故障的除错作业。面对每年超过55种系列产品、逾250种不同产品问世的情况,系统研发业者亟需一种高效率的方法来调整BIOS以支持其系统硬件。而传统的BIOS已无法符合这些需求。

● EFI-业内的BIOS革命声音

何谓EFI?其实EFI(Extensible Firmware Interface)的概念很简单,就是由模块化的C语言,藉由参数堆叠传递,并以动态连结形式架构的简易型操作系统,其工作责任在于肩负起连结硬件与操作系统的桥梁,理论上来说,其设计难度要远低于由汇编语言所架构而成的传统BIOS。

EFI的现状:

目前的EFI系统可以运作于32位元或64位元模式之下;
对未来的出现了128甚至更高位元的处理器,EFI系统也能很平顺的过渡支持。

◎ 其概念非常类似于目前的高端操作系统

由于EFI等同于一款简易型的操作系统,为了与硬件沟通,就必须透过驱动程序来对硬件进行识别与操作,这些驱动程序是专门应用于EFI系统下的机器指令,必须透过硬件抽象层来转译执行,其概念非常类似于目前的高端操作系统,不同的处理器平台(X86、RISC、Itanium)之间只要抽换不同的硬件抽象层,驱动程序便可以沿用,可以大幅简化跨平台应用的开发复杂度。

相较之下,传统BIOS基于真实模式之下,必须利用中断模式来增加硬件功能,而这些操作都必须完全针对个别的处理器规范来进行,不同的处理器平台之间,即便芯片组或外围完全相同,依然完全无法互通,且传统BIOS基本上都是运作于16位元模式下,对目前的32位元或64位元操作系统来说,都是极为沉重的存取瓶颈。

◎ EFI取代传统BIOS还需时日

既然EFI能够做到这么强大的控制功能,那么是否有可能取代传统操作系统的地位?目前我们只能说根据应用不同,部分产品有可能选用EFI。而大多数的产品还是会延续传统的BIOS设计,毕竟EFI在PC平台上依旧处于推广初期,尚无余力将触角过度延伸,而相对于传统的BIOS来说EFI对存储器的控制能力非常有限,不具备保护模式服务等不足。

通过上面的简短介绍,这样的设计是否会杜绝传统的BIOS破解Windows操作系统模式呢? 

EFI真的是无孔不入吗?EFI真的是破解的终结者吗?

● EFI不会威胁操作系统

EFI在概念上非常类似于一个低阶的操作系统,并且具有操控所有硬件资源的能力。不少人感觉它的不断发展将有可能代替现代的操作系统。事实上,EFI的缔造者们在第一版规范出台时就将EFI的能力限制于不足以威胁操作系统的统治地位。

EFI的组成

一般认为,EFI由以下几个部分组成:

1. Pre-EFI初始化模块

2. EFI驱动执行环境

3. EFI驱动程序

4. 兼容性支持模块(CSM)

5. EFI高层应用

6. GUID 磁盘分区

首先,它只是硬件和预启动软件间的接口规范;其次,EFI环境下不提供中断的访问机制,也就是说每个EFI驱动程序必须用轮询的方式来检查硬件状态,并且需要以解释的方式运行,较操作系统下的驱动效率更低;再则,EFI系统不提供复杂的存储器保护功能,它只具备简单的存储器管理机制,具体来说就是指运行在x86处理器的段保护模式下,以最大寻址能力为限把存储器分为一个平坦的段,所有的程序都有权限存取任何一段位置,并不提供真实的保护服务。

● EFI也可以被破解,但是大规模应用还需时间

我们知道EFI技术最早被Intel提出,早在2006年就已经出现在X86硬件环境中,也就是苹果计算机,由于苹果的操作系统OS X具备了原生支持EFI的能力。EFI的升级是为了提升系统的性能和修正BUG,这也就给了破解者新的机会。 

虽然市面上已经有相当多传统BIOS的取代方案,但无一能够撼动传统BIOS的江山,虽然是传统BIOS技术应用面很广,但想要EFIPC产业界瞬间达到一呼百诺的效应,仍然是遥不可及的,因此BIOS的先期有可能就从提供双向支持的方式,也就是说,既提供了EFI的先进架构,能够让最新的操作系统执行于纯粹的EFI环境下,也可利用切换的方式切换回传统的BIOS架构,借以执行不支持EFI的操作系统。当然,这样的方式仅是作为过渡时期应急之用,当消费者逐渐接受EFI环境,且操作系统都已经革新到可原生支持UEFI,那么就可在主板上直接内建纯粹的EFI环境,无须再考虑传统BIOS的支持。

Vista之家www.vista123.com),爱上网,爱上Vista123.com

      

热门文章

软媒旗下软件: 魔方 | 旗鱼浏览器(极速核心) | 闪游浏览器 | 软媒时间 | 酷点桌面 | Win7优化大师 | Win8优化大师 | Vista优化大师 | Windows一键还原 | 软媒手机APP应用

软媒旗下网站 IT之家 | 辣品 | IT圈 | 6655网址之家 | Win10之家 | iPhone之家 | Win8之家 | Win7之家 | Vista之家