ThinkPad T400 and R400+SLIC+白名单图文教程
ThinkPad T400and R400
SLIC++白名单图文教程(完整版)
R400++SLIC
(适合X200的修改、T500系列可以参考)
BIOS的下载地址(3.01-1.03(BIOS ID:7UET71WW),日期:2009/05/29)
官方地址:
www-06.ibm/jp/domino05/pc/download/download.nsf/jtechinfo/MIGR-70350
文件名:
所有工具:及相关模块解压、分解压及压缩工具。
/ls/(这里一般可以下到你所要的工具)。
一、准备工作
叶子希
1、我们先解压文件“”以得到我们所要的BIOS文件,如图1-2所示。最后我们的是压缩的BIOS文件,其文件名为:“$01B8200.FL1”。
2、对文件“$01B8200.FL1”进一步解压,才能得到可修改的BIOS文件,用工具“”
来对其解压,命令格式为:$(T400.ROM是我自己起的,可随便起!)。这样我们就得到了一个8M的可修改的BIOS文件“T400.ROM”。如图3所示:
3、由于8M的BIOS文件用“PBE”软件无法打开,我们只能进行手工修改了。因而必须把它的相应模块进行分离出来。可以用工具“”来完成,其命令格式为: ,如图4:
新年贺卡简单又好看图片
运行后会生成好多的模块,但需要的主要是两种模块“ACPI”和“BIOSCODE”。如图5所示:
本例中的“ACPI”模块为“ACPI00.ROM---ACPI07.ROM”共8个模块;“BIOSCODE”模块为“BIOSCODE00.ROM---BIOSCODE08.ROM”共9个模块。实际上只是修改“BIOSCODE”模块,“ACPI”模块主要是看它的个数,方便我们加入“ACPI”模块时的序号。本例如果要插入“ACPI”的模块的话,应该是“ACPI08”。
二、加入SLIC表
1、前面我们用了相关工具对其进一步解压T400.ROM文件得到相关的模块文件(其中ACPI模块是从00-07(如果说要再加入ACPI模块的话应该是08),BIOSCODE模块是从00-08。
2、用WinHex打开所有BIOSCODE开头的模块文件,搜索RSDT、SLIC关键字,结果在:
<中发现RSDT和SLIC
<中发现RSDT和OEMTABLEID信息“LENOVOTP-7U”
根据赵大的经验和查各种资料,中会有代码把所有表的OEMTABLEID信息改为“LENOVOTP-7U”,我们就以改为:“LENOVOTP-7U(我们有现存的这个表)”为例。如图6--8所示:
3、我们先把“LENOVOTP-7U”表改造成BIOS的标准模块。这个可以用赵大的“ACPI”压缩模块工具来完成。把“LENOVOTP-7U.BIN”改名为“SLIC.BIN”再运行批处理文件“ACPI.bat”即可。其中“ACPI.bat”的内容为:
;ACPI.bat
del ACPI.MOD
fp ACPI.scr
fi ACPI.scr
rom2mod BIOS.ROM ACPI.MOD
del BIOS.ROM
del BIOS.FFV
del_BUILD.TMP
del MODULE.MAP
“ACPI.scr”的内容为:
;ACPI.scr
BANKS-N:1-S:256
COMPRESS LZINT
ACPI SLIC.BIN-x
av女星把这个两个文件和“SLIC.BIN”放在同目录再运行“ACPI.bat”即可。如图9所示:
运行结束后在当前目录下得到一个“ACPI.MOD”的文件,实际上是加一个头部信息的新的SLIC表文件(总长度为18EH)。我们用“”打开它,如图10所示:
头部是从00H--18H,根据赵大的理论其头有如下解释:
字节0、1:固定为F800
字节2:8位校验一
字节3:8位校验二
字节4、5、6:模块长度(包括头部,即从F800开始)
字节7:01--模块未压缩;02--模块是压缩的;F0--还不知道是代表什么
字节8:固定为5F(即下划线“_”)
字节9:模块类型,41H(ACPI),42H(BIOSCOD)
字节A、B:模块的序号(00、02、02、03...........)
字节C---18:基本上是00000000FF00000000000000
因我们要加入ACPI模块的是“ACPI08”,所以要作如下修改,修改完记得保存一下,见图11所示:
关于02H位的校验的计算(71H-8H=69H),我是这样计算的:用“”选中从04H 到18H部分(共14H字节),即图12中的选定部分,从菜单栏中选“计算哈希值”(或按组合键:Ctrl+F2),按确定即可,本例得到的结果为97H,那么校验值:100H-97H=69H。
4、把修改好的ACPI08模块插入到T400.ROM文件中,具体做法是:用“”打开文件“T400.ROM”,以关键字“_A0”来搜索“ACPI”模块的最后一个(实际上ACPI 模块不是按编号顺序来存放的。),把我们改造好的“ACPI08”模块插入到T400.ROM文件中的ACPI模块的最后,本例“ACPI06.ROM”为ACPI的最后一个模块如图13所示:
从上图可以看出“ACPI06”模块的长度是57H,即从7D5698H开始到7D56EEH结束。从7D56EFH开始又是一个模块的开始了,我们就从7D56EFH处开始插入(怎么插入大家应该会操作的吧),如图14所示:三岔口豆瓣
由于我们插入了ACPI08模块(长度为18EH),对整个的T400.ROM文件长度来讲也增加了18EH的长度,我们必须要让它保持原来的长度,也就是要保持原来的长度不变,必须删除没用的相应长度的字节。我们发现在原来ACPI06模块的后面有大片的“FF”,如图15所示:
从上图可以看出“FF”模块的长度为A060H,校验值为10,我们删除了18EH的长度,就要把这个两个地方作一修正,其长度修正为:A060H-18EH=9ED2H,十六进制写法为:D2 9E;校验值修正为(计算方法同上):A0
如图16所示:
到这里为止,我们的SLIC表的加入算是完成了,接下来我们修改它的白名单。
三、修改白名单:狼和鹿的故事
前段时间一直在看汇编,想能不能把它的白名单给破解了,虽然到的跳转语句,但这样做不是很完美,而且需要屏蔽20才行好多功能也有限制,后来想进一步搞下去,可是水平有限,关键的地方足有50多处,只好放弃!回个头来继续看外国的PATCH工具,用法上一直是个问题,既然有这么个工具我
想应该给它好好利用一下,请教了外文老师,终于知道了它的用法。接下来我们就用这个工具来破它的白名单。
1、首先下载PATCH工具,地址为:/ls/phnxpatch.zip。把它解压到一个目录中,然后在解压的目录中再自己建一个目录(随意)为“biosmod”,为了使用上的方便我还在这个目录中建了一个批处理文件,暂且命名为“patch.bat”吧。其内容为:
低糖水果有哪些
phnxpatch patches biosmod
Pause
2、白名单一般都在“BIOSCODE”模块中,经过搜索发现T400/R400、X200/X200S所在的白名单模块都是在“BIOSCODE06”中,我们就把它拷贝到刚才建立的目录“biosmod”中。你如果不清楚到底在哪个模块也不要紧,就把上面分解出来的所有“BIOSCODE”模块全部拷贝到这个目录中,PATCH这个工具还蛮智能的了,它会自动查、对比和个修改。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。