PCEVA,PC绝对领域,探寻真正的电脑知识
打印 上一主题 下一主题
开启左侧

突破ASUS BIOS校验限制,想刷就刷

[复制链接]
跳转到指定楼层
1#
ivis 发表于 2013-7-18 01:11 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
点击数:47044|回复数:23
本帖最后由 ivis 于 2014-7-30 20:43 编辑

特别提示:刷BIOS有风险,刷修改版的非官方BIOS更有风险。请谨慎。
最好你的主板有双BIOS,或者确认你有能力在出现状况后修复。


前面我简单做了个刷MSI BIOS的专题。
由于MSI的BIOS没有做校验的限制,只要你的BIOS没有什么问题,一般都可以刷进去。
但是ASUS的BIOS校验是比较严格的。比如你刷高版本的BIOS,就不能再恢复低版本的BIOS.
或者你修改了BIOS里面的一些模块,导致校验失败,从而无法利用EZ-FLASH刷入。
这个时候,如果还想继续,就比较麻烦一点了。



评分

参与人数 1活跃度 +5 收起 理由
ryoma1836 + 5 资深玩家泥嚎

查看全部评分

2#
ivis  楼主| 发表于 2013-7-18 19:57 | 只看该作者
本帖最后由 ivis 于 2013-7-18 20:04 编辑

第一,不是必须,则不修改BIOS。

一般来说,给ASUS 的BIOS 添加SLIC 2.1 或2.2模块,是不会影响EZ-FLASH的校验的。直接可以用EZ-FLASH刷入。


这样的话,一般修改BIOS就是为了能兼容苹果的电源管理。其实这个时候,有些情况是不用修改BIOS的。前面的专题我有提到过。
我放到这里来。
主板的BIOS如果能够支持苹果原生的电源管理AppleIntelCPUPowerManagement.kext,对于黑苹果来说,已经成功了一半。这个KEXT的作用非常重要,关系到Mac系统能否安装,安装好后能否睡眠唤醒,Cpu能否降频等等一系列重要的方面。有一些主板,比如技嘉的一些板子可以原生支持苹果的电源管理,一时被黑苹果用户奉为神器。如果不巧你手里没有这样的板子,那么我们也是有办法的。
首先是安装了,浅显办法可以用个nullpowermanagement.kext,这是禁用原生电源管理的,一般来说,可以安装了,再找个睡眠的KEXT,进行睡眠或者换新,这都不是根本的解决办法。下面我们来看几个软方法。
如果你的主板BIOS中有HPET功能,那么在BIOS中打开。去掉nullpowermanagement.kext。看看能不能用。如果能用,恭喜你,省掉了一些折腾。
如果你的BIOS没有HPET功能,如果你是变色龙引导的,那么要在变色龙的com.boot.apple.plist文件中加入
<key>ForceHPET</key>
<string>Yes</string>语句。
然后在DSDT中加入HPET代码:
Device (HPET)
                 {
                     Name(_HID, EisaId ("PNP0103"))
                     Name(ATT3, ResourceTemplate ()
                     {
                        IRQNoFlags ()
                            {0}
                        IRQNoFlags ()
                             {8}
                        Memory32Fixed (ReadWrite,
                            0xFED00000,         // AddressBase
                            0x00000400,         // AddressLength
                             )
                     })
                     Name (ATT4,ResourceTemplate ()
                     {
                     })
                     Method(_STA, 0, NotSerialized)
                     {
                        Return (0x0F)
                     }
                     Method (_CRS, 0, NotSerialized)
                     {
                        Return (ATT3)
                     }
                 }
如果是CLOVER引导的,那么需要在CONFIG中加入
<key>AsusAICPUPM</key>
<string>Yes</string>
来试验一下。如果能用,那是万幸。
或者在别人相同主板的打过补丁的AppleIntelCPUPowerManagement.kext来替换下。这些都是权宜之计。日后的升级可能还要修改。

如果这些方法,可以生效,那你完全没必要修改BIOS。






3#
ivis  楼主| 发表于 2013-7-18 19:57 | 只看该作者
本帖最后由 ivis 于 2013-7-18 20:08 编辑

第二,修改的BIOS,需要校验。

注:
ASUS 的主板卖掉了,我用MSI主板做的演示。


修改的方法很简单。

我们知道有些主板是原生支持苹果的电源管理的,比如技嘉的一些板子。被黑苹果玩家奉为神器。关键的地方就在于一个锁定。下一个部分我们再详细说。
现在先来看如何简单的解锁。




  



打开CMD,输入PMPATCH,这是一个玩家做的小工具。
用法很简单。命令如下:
Pmpatch e7733ims.a30 e53.a30
其中E7733IMS.A30Z77IA-E53BIOS,从官网下载。
E53.A30是修改后的BIOS,名字随意取即可。
命令执行完毕,我们可以看到在0037F190这个地方打了个补丁。
这也E53.A30就是修改后的BIOS,一般来说,可以使用了。
但是千万注意,不要着急。要先验证。否则直接刷机,变了砖头得不偿失。


或者是直接修改电源管理模块。



这个步骤,只推荐有动手能力的玩家尝试。或者是失败了,你有办法刷写回来。否则不要尝试,以免烦恼。
我们先把要修改的BIOS打开。

  



我们看到powermangement对应的GUID8C783970-F02A-4A4D-AF09-8797A51EEC8D。原理上是可以用AMI这个MMTOOLAPTIO工具直接解压出来的,但是现在的BIOS已经被搞的比秋香中了面目全非掌还可怕,原厂的工具基本上已经无能为力了。还是求助别的吧。

  



这就是phoenixtool,现在是214版本,也是一个高手的作品。用法简单,导入你的BIOS文件即可。厂商哪里选择对应的,因为是MSIBIOS,选择MSISLIC这里我加如了2.2版,可以激活WINDOWS8 SERVER版和WIN7RW FILE我加了个文件,作为软件工作的参照,不加也可以,加了做的更规范点。如果你不打算加入SLIC,那么这两步可以不做,后面的勾选NO SLIC即可。

状态软件自己选择,不要去勾选。SLP FILE,这里建议不要加。加上就可以激活XP,这个东西加上,有时候会使得软件加入SLIC失败。都完到UEFI了,XP也太老迈了。如果实在想搞,可以用AMI的工具直接写到BIOS里即可,几个字节而已。

然后将软件设置一下。

  

点击ADVANCED然后勾选Allowuser to modify other modules,如果你不打算修改SLIC,就选择NO SLIC。如果还要一并将修改的好的DSDT加入的话,可以勾Allow user to modify dsdt


再谈下RW
工具。  我靠,又Tmd说我文件太大。。。。。。。
  


修改前,先用这个Rw工具打开,点击ACESS,选择ACPITLBLES。读出很多张表,然后点击CTRL+F2 SAVE ALL即可。
当然这个工具也可以查看主板BIOS的信息,比如我这个BIOS已经加了SLIC2.2。便可以点击SLIC,就会看到相应的SLIC信息。
将软件设置好以后,点击开始,软件便开始工作。当出来这个提示

  


然后去DUMP文件夹中,找8C783970-F02A-4A4D-AF09-8797A51EEC8D,类似的一共2个,选择大的那个。大概是25K左右。这里为了说明,我提取了一下。实际修改的时候,可以略过。进入CMD然后
objdump -m i386 -b binary -D8C783970-F02A-4A4D-AF09-8797A51EEC8D_1_353.ROM > pm.asm
提取出PM.ASM。打开。

  


我们搜索这一行,0f bae8 0f,会找到几个相关的。然后看前面几行是不是有mov     $0xe2,%ecx
这里确定我们需要修改的地方在32cajne 75 08
  

细说起来,这就涉及到一个MSR的问题。上面是E31230 V2MSR图。
MSR Model Specific Registers )特殊模块寄存器。MSRCPU 的一组64 位寄存器,可以分别通过RDMSRWRMSR 两条指令进行读和写的操作,前提要在ECX 中写入MSR 的地址。对于RDMSR 指令,将会返回相应的MSR 64bit 信息到(EDXEAX)寄存器中;对于WRMSR 指令,把要写入的信息存入(EDXEAX)中,执行写指令后,即可将相应的信息存入ECX 指定的MSR 中。MSR 的指令必须执行在level 0 或实模式下。注意不同的处理器族有自己不同的MSRINTELAMDCPU是不同的,需要去查对应的PDF
MSR 总体来是为了设置CPU 的工作环境和标示CPU 的工作状态,包括温度控制,性能监控等,一般来说,包括ThermalFrequencyC StateMicrocodeEISTTM Key Features Of CPU VoltageCache ControlMTRRDCA(Direct Cache Access)Machine Check、硬件联机控制等方面。
如果MSR 0xE2 bit 15是锁定的,那么MAC OSAppleIntelCPUPowermanagement.kext就无法很好的控制c-state
C-stateACPI spec定义的CPU工作在G0时的power states,这些状态包括C0,C1,C2,C3Cn.其中C0被称为Active状态,也只有C0的时候CPU才会执行指令;其余的状态则被称为sleeping,这时CPU是不执行指令的,也因而会节省更多的功耗。系统在运行时会根据loading状况在各个C-state之间切换降低功耗,
BIOS可以通过CPUID function 5 check CPU是否支持C-state,以及支持哪些C-stateC1 C1E C3 C6C7),支持的最大的C-state也可以通过MSR去设定,默认情况下增强型C-state以及IO MWAIT Redirection是不支持的,BIOS要根据系统的需求决定是否开启支持该功能的register,对于多核的系统就需要对每颗核都要单独去配置它的C-state的支持。前面的E3 1230 V2,我们可以看到8个核心的MSR配置情况。
解除锁定很简单,只要将跳转指令jne 75 0875改为eb即可。
将原来的
75 08 0F BA E8 0F 89 44 24 30
改为
EB 08 0F BA E8 0F 89 44 24 30
修改完毕后,保存,然后替换到刚才的DUMP里,点击前面那个弹出窗口的确定。然后工具就自从完成BIOS的修改了。
关于MSR这块,也可以不必去深究。INTEL给出的资料基本等于零。很多说法也语焉不详。只要打开8C783970-F02A-4A4D-AF09-8797A51EEC8D_1_353.ROM。搜索



75 08 0F BA E8 0F 89 44 24 30

我们直接找到了这一行。看左边的32c0,从上面看,横着找到第11位置a,正是32ca的75,改成EB保存,去替换即可。





4#
ivis  楼主| 发表于 2013-7-18 19:57 | 只看该作者
本帖最后由 ivis 于 2013-7-18 20:40 编辑

第三部分,ASUS的BIOS修改以后,是无法通过EZ-FLASH验证的。

比如我简单的patch了一下。



我用一个高手写的一个校验软件来做个演示。

官方下载的原版BIOS。





各种校验OK。

修改了电源管理模块以后。






无法通过校验了。

EZ-FLASH,就是这类校验的方法。


当然你可以不用管这些,你只要清楚:你修改了电源管理模块,ASUS为了安全起见,是不让你刷进去的。

当然你修改其他模块也是只要,只要是保护内的部分,你改动了,校验就不能通过,就不让你刷写。






本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
5#
ivis  楼主| 发表于 2013-7-18 19:57 | 只看该作者
本帖最后由 ivis 于 2013-7-18 21:13 编辑

第四部分,几种刷写方法。

1.FLASH BACK 法

ASUS高级点的板子,上面都有个FLASH BACK按钮,防止在BIOS损坏的时候,修复BIOS用。

这个过程是不校验的,直接刷入。但是有个命名的工具,只有改了成默认的名字,FLASH BACK 才认



但不是高级的板子,没有这个按钮。

我曾经给其他的板子移植过这个模块,可不管用。没有这个按钮,无法调用。
如果能设置个中断什么的,用键盘上的某个键来用启动就好了。。。难度先不说,涉及到人家版权问题了。
这条路不通。



2.windows 下的EZ UPDATE法。

我们来看下新的AISuite III ,真是漂亮。


我没有ASUS主板,现在也没法安装。简单看了下程序。
这个修改MY LOGO的,就是集成了一个AMI的CHANG LOGO而已。
至于刷新工具,也就是个AFUWIN和AFUWINX64而已。

根据程序中的东西来看,也就是这样的工程。

EZ Update allows you to manage and update the latest ASUS motherboard drivers, software and BIOS from the internet. With this utility, you can also manually update the saved BIOS and select a boot logo when the system goes into POST. = EZ Update 可用来管理并从网络更新最新的华硕主板驱动程序、软件以及 BIOS 文件。使用该程序,您可以手动更新已保存的 BIOS,并选择系统进入 POST 时的开机画面。
File: = 文件:
Flash = 更新
History = 历史记录
Installed = 已安装
Item = 项目
Manually update Boot logo or BIOS: = 手动更新开机画面或 BIOS:
Model Name: = 主板型号:
Monthly = 每月
MyLogo = MyLogo
Network connection error! Please make sure your system is connected to the Internet. = 网络连接失败。请确认您的系统已连接至互联网。
None = 无
OK = 确定
Please wait for about 3-5 minutes for the BIOS updating process to finish. DO NOT shut down or run any programs during this time. = 请稍候 3-5 分钟等待 BIOS 更新完成。在此期间请勿关机或运行任何程序。
Release Date: = 释出日期:
Schedule = 排程
Select a downloaded BIOS file then click "MyLogo" or "BIOS Update" = 选择已下载的 BIOS 文件,然后点击“MyLogo”或“BIOS Update”。
Select a image file for your boot logo. = 选择图片文件作为开机画面。
Selected BIOS = 已选 BIOS
Setting = 设置
Size(KB) = 大小(KB)
The following process downloads and updates the items for better compatibility and function-upgrade. DO NOT shut down or restart your computer during the system update. Do you want to continue? = 以下过程将下载并更新项目以提高系统兼容性并获得功能升级。在系统更新期间请勿关闭或重启电脑。是否继续?
The following process installed the items on your computer. DO NOT shut down or restart your computer during the system update. Do you want to continue? = 以下过程将在您的电脑上安装或更新项目。系统更新期间请勿关闭或重启电脑。是否继续?
The updates are finished. = 更新已完成。
The updates are finished. Please restart your computer and the settings are applied after the next boot. Save all the files and close the applications before continuing. Do you want to restart your system now? = 更新已完成。请重新启动电脑,设置将在下次启动后生效。继续之前请先保存所有文件并关闭应用程序。是否现在重新启动?
There are %??% item(s) to update. = 有 %??% 个项目可以更新。
There is no need to update the environment. = 此环境无需更新。


————————————————————————————————————

很简单,他提供了一个简单的校验过程,
满足了条件以后,就开刷。

这样就简单了,你可以用这个工具下载BIOS,或者把官方的BIOS放到他的目录下面。

官方的名字一定要保证,比如我下载了个官方的BIOS。
MAXIMUS-VI-EXTREME-ASUS-0711.CAP

名字是这个,先用这个官方的文件,通过验证,这个时候 提示你升级的BIOS Update,这个会亮起来。
然后,把你修改的过的BIOS,改成和官方BIOS一样的名字,到EZ UPDATE这个地方,来替换刚才验证通过的这个BIOS。

搞定以后,开刷,等待重启。OK了。

不必麻烦,我们只是简单的绕过而已。


前面MSI的专题我也说过,你也可以直接去研究AFUWIN的刷写。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
6#
ivis  楼主| 发表于 2013-7-18 19:57 | 只看该作者
本帖最后由 ivis 于 2013-7-18 21:08 编辑

第五部分,一些其他的方法和总结。

其实还可以直接研究AMI的官方DOS下刷写工具,有些时候,可以实现降级刷BIOS
但是对于校验不通过的,用AMI官方工具,也往往报错。


此外就是用FTK来刷,但是有时候会丢失SN信息,需要备份在用FD44Editor写进去即可。
或者你直接破解

要破解你除非得到华硕的RSA PRIVATE KEY,否则也只能是硬破解。比如算一对RSA KEY,然后修改.CAP文件。接着用FLASH BACK刷进BIOS。日后就可以用算出的这一对RSA KEY,随意修改BIOS并且能够用EZ-FLASH刷了。这是一个思路。
其实ASUS官方貌似有个命令,是可以刷入测试版本的BIOS文件的。这样是比较有风险的,自己去琢磨吧。

后续有些方法的补充,要看时间了。






7#
wsy2220 发表于 2013-7-18 21:12 | 只看该作者
8#
ivis  楼主| 发表于 2013-7-18 21:15 | 只看该作者
本帖最后由 ivis 于 2013-7-18 21:16 编辑
wsy2220 发表于 2013-7-18 21:12
广告时间:http://bbs.pceva.com.cn/thread-67714-1-1.html

补充内容 (2012-10-22 21:03):
此方法不支持CAP格式的BIOS



万岁爷,你那个法子,不支持CAP,而ASUS的正是CAP
9#
wsy2220 发表于 2013-7-18 21:15 | 只看该作者
ivis 发表于 2013-7-18 21:15
补充内容 (2012-10-22 21:03):
此方法不支持CAP格式的BIOS

看贴不看完啊,后面还有补充
10#
ivis  楼主| 发表于 2013-7-18 21:17 | 只看该作者
本帖最后由 ivis 于 2013-7-18 21:20 编辑
wsy2220 发表于 2013-7-18 21:15
看贴不看完啊,后面还有补充


这个方法是基于官方的版本,一些人会感觉心里踏实点。

11#
wsy2220 发表于 2013-7-18 21:18 | 只看该作者
ivis 发表于 2013-7-18 21:17
看头不要紧,只要主意真

补充内容 (2013-3-29 19:28):
更新:华硕CAP格式的BIOS可以用winhex去掉前2048字节再刷入
12#
ivis  楼主| 发表于 2013-7-18 21:21 | 只看该作者
wsy2220 发表于 2013-7-18 21:18
补充内容 (2013-3-29 19:28):
更新:华硕CAP格式的BIOS可以用winhex去掉前2048字节再刷入 ...

你那个相当于编程器写入了。
华硕的写入,是要砍头,去掉开始那部分。
13#
coraloneee 发表于 2013-7-19 08:31 | 只看该作者
显卡的有办法破解么~!?
14#
McLaren 发表于 2013-7-19 09:05 | 只看该作者
编程器毫无压力,什么BIOS都直接写芯片
15#
sk1215001 发表于 2013-7-19 09:10 | 只看该作者
这是技术贴 要顶
16#
dubai 发表于 2013-7-19 09:16 | 只看该作者
太高级了。
我和我的小伙伴们都惊呆了。
17#
Pale_Cheung 发表于 2013-7-19 09:36 | 只看该作者
ivis 发表于 2013-7-18 19:57
第四部分,几种刷写方法。

1.FLASH BACK 法

FLASH BACK 在bios已经刷坏的情况下,依然是可以再刷bios进去?
18#
111alan 发表于 2013-7-19 09:48 | 只看该作者
ivis 发表于 2013-7-18 21:15
万岁爷,你那个法子,不支持CAP,而ASUS的正是CAP

CAP用GZUT转过去再弄
19#
buick5000 发表于 2013-7-19 11:00 | 只看该作者
大婶看看可以试下刷BIOS,俺等菜鸟还是别去刷BIOS了,有风险哦。。。没事别去刷
20#
XEON16 发表于 2013-7-19 11:08 | 只看该作者
求资深玩家教导我,如何让开普勒移动显卡突破80度的温度上限,恩恩
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部