91手機維修論壇
標題: 最近寫(xiě)了幾篇關(guān)于DELL機的BIOS分離文章,有興趣的網(wǎng)友可看看. [打印本頁(yè)]
作者: ibmpass 時(shí)間: 2008-9-24 19:55
標題: 最近寫(xiě)了幾篇關(guān)于DELL機的BIOS分離文章,有興趣的網(wǎng)友可看看.
DELL D700M BIOS分離過(guò)程
近日,網(wǎng)友回復自己一臺DELL D700M的機器,由于刷新過(guò)程中出錯,造成刷新失敗,機器無(wú)法啟動(dòng);從DELL網(wǎng)站下載的BIOS文件,是一個(gè)直接運行的EXX文件,采用BIOS維修網(wǎng)站以前關(guān)于DELL BIOS文件分離的文章,無(wú)法分出BIOS文件,因此尋求耗子。
網(wǎng)友通過(guò)QQ傳過(guò)來(lái)的BIOS文件,其就是一個(gè)文件名為DELL 700M的EXE自解壓文件;由于是EXE自解壓程序,選擇文件鼠標右鍵--使用WINRAR打開(kāi),將文件解壓出。 L( W ]& u6 b, m9 M% {
解壓出的文件只有三個(gè),看文件名,其中的A06應為自刷新文件
使用ULTRAEDIT打開(kāi)A06.EXE文件,從文件頭部看出,此文件應是WIN環(huán)境下自動(dòng)運行的程序,因此按以前分離DELL BIOS的經(jīng)驗,首先在ULTRAEDIT 32工具欄中--“搜索”--“查找”--輸入“NAPI”
由于順利搜索到NAPI,下面的工具簡(jiǎn)單的。由于主板使用4M的BIOS文件,因此只要從NAPI開(kāi)始,分出7FFFF地址的字節即可。
從上圖可看到,NAPI的首地址是AC030H,因此簡(jiǎn)單的方法是,首先刪除AC030H以前的內容,然后再刪除7FFFFH地址以后的內容,然后將文件保存即可。
刪除16進(jìn)制AC030H地址的內容,我們先將AC030H轉換成10進(jìn)制,即使用WIN自帶的計算器,選擇計算器--查看--16進(jìn)制,選擇十六進(jìn)制,輸入AC030(注意:H不需要輸入,那是16進(jìn)制的標識符,表明AC030為16進(jìn)制),然后選擇十進(jìn)制,計算十進(jìn)制數值“704560”
因此我們在ULTRAEDIT32中,將鼠標移到文件頭部,即00000H地址處;在ULTRAEDIT32--工具欄--“編輯”--“HEX 插入/刪除”--選擇刪除,輸入需要刪除的10進(jìn)制字節數:“704560”
確定后刪除,此時(shí)文件頭部即00000H地址處,應正常好為NAPI
然后使用簡(jiǎn)單的方法。將鼠標移到地址7FFFFH處,只要刪除7FFFFH后面所有內容,然后將剩余的文件保存即可;鼠標移到8000H處,在ULTRAEDIT32--工具欄--“編輯”--“HEX 插入/刪除”--選擇刪除,輸入需要刪除的10進(jìn)制字節數:“XXXXXXX”,在這里XXXXX可隨意輸入,只要確定7FFFF后面所有無(wú)用內容刪除即可。(注意)XXXXXX必須是純數字。
刪除后文件尾部如下圖:
操作完成后,點(diǎn)擊ULTRAEDIT32工具欄--“文件”--“另存為”保存為文件,網(wǎng)友使用編程器寫(xiě)入后,開(kāi)機一切正常。
作者: ibmpass 時(shí)間: 2008-9-24 19:55
DELL DMC521 BIOS分離維修過(guò)程
今天一網(wǎng)友回復耗子,自己一臺DELL DMC521機器,由于刷新BIOS時(shí),沒(méi)有關(guān)閉殺毒程序,造成刷新過(guò)程中出錯,重啟無(wú)法開(kāi)機。由于是刷新BIOS出錯后無(wú)法開(kāi)機,因此只要重寫(xiě)BIOS即可解決問(wèn)題;但目前面臨的問(wèn)題是,DELL機器的BIOS比較特殊,其提供的BIOS文件都是EXE自刷新的文件,因此分離比較麻煩,而且網(wǎng)友按主頁(yè)以前提供的DELL BIOS文件分離的文章,無(wú)法分離出BIOS文件--參考文章:如何分離DELL(戴爾)機整合型BIOS文件(過(guò)程分析及相關(guān)參數介紹);因此詢(xún)問(wèn)耗子是否可以從EXE自刷新程序中分離出BIOS文件。2 }/ A5 O |$ b$ K
收到網(wǎng)友傳來(lái)的BIOS文件,其就是個(gè)EXE文件。首先選擇使用WINRAR打開(kāi)EXE文件,確定文件是否自解壓的EXE文件,雖然可以使用WINRAR打開(kāi)這個(gè)EXE文件,但是解壓出的文件卻是一個(gè)名為A17AS.BIN的文件,但其只有128K(1M)大小,這顯然不對,因此排除直接分出BIOS文件的想法。
) d: D3 j3 Q* m7 r 無(wú)法直接分出BIOS文件,使用ULTRAEDIT32,直接打開(kāi)DMC521.EXE文件,從文件頭部可看出,其就是一個(gè)WIN32程序,當然這個(gè)對我們并沒(méi)有多少幫助;直接向下搜索,意外竟在0277D2H地址處,發(fā)現了“LH5”字符,我們都知道“LH5”是AWARD BIOS的標識字節,因為AWARD BIOS都是使用LH5壓縮的。找到此字節,說(shuō)明文件應是AWARD BIOS,也可通過(guò)此確定BIOS文件的頭部,這真是意外中的意外呀。
雖然現在確定文件是AWARD的,而且也可確定文件頭部。但是在LH5前還有約64K的FF空字節,因此要分出的文件有兩種可能。一種是從LH5處,直接向下分出7FFFFH字節的文件,其就是完整的BIOS文件。二是從LH5前64K空字節處,開(kāi)始分出7FFFFH字節的文件,即包括LH5前的64K空字節。
由于無(wú)法確定文件的頭部,本來(lái)耗子想按兩種方法分別分出BIOS文件,對比確定一下;但又想投機取巧,于是讓網(wǎng)友將已經(jīng)損壞的BIOS芯片中的內容讀出來(lái),如果芯片中還有數據的話(huà),可以方便的確定,呵呵;還好芯片網(wǎng)友還沒(méi)有擦除,備份出文件,通過(guò)網(wǎng)絡(luò )傳過(guò)來(lái),使用ULTRAEDIT32打開(kāi)備份出的已經(jīng)損壞的文件。
通過(guò)分析備份出的損壞BIOS芯片的中文件,確實(shí)是文件前面有64K的空字節(機器無(wú)法啟動(dòng)的原因是,BIOS文件沒(méi)有刷新完成,12FFFH地址后面全是空字節)。
確定了文件的頭部,以下操作就簡(jiǎn)單了。正確分出BIOS文件,并傳給網(wǎng)友測試;網(wǎng)友寫(xiě)入后回復,可以正常開(kāi)機,但進(jìn)入系統后檢測不到機器的型號,顯示全是空白。即然機器可以啟動(dòng)了,但是機器型號等資料檢測不到,看來(lái)BIOS中還有部分信息沒(méi)有加入。
重新打開(kāi)網(wǎng)友備份出的已經(jīng)損壞的BIOS文件,在文件頭部位置果然發(fā)現機器的詳細信息,如下圖:
復制文件中的這部分資料,然后對應地址覆蓋在分出的BIOS文件的文件中。重新保存成文件,傳給網(wǎng)友測試,經(jīng)網(wǎng)友回復,一切正常。至此維修修復完成。
注意:
1、如是刷新失敗后,先不要急于寫(xiě)芯片,一定要先備份出文件,這樣以后需要時(shí)使用。
2、此方法是否適應于其它DELL的機器,耗子沒(méi)有時(shí)間測試。因此有興趣的網(wǎng)友可自行測試一下。
3、分離文件時(shí),文件的大小按BIOS芯片的大小確定即可。
作者: ibmpass 時(shí)間: 2008-9-24 19:56
DELL系列機器BIOS文件分離分析
使用DELL系列機器的網(wǎng)友都知道,DELL系列機型的BIOS文件很特殊,DELL廠(chǎng)家提供的BIOS文件,多都是EXE自運行程序,在WIN環(huán)境下直接運行EXE文件,即可自動(dòng)完成刷新;但其EXE文件并不只是一個(gè)簡(jiǎn)單的自解壓程序,無(wú)法使用WINRAR打開(kāi),因此也就無(wú)法解出其中的BIOS文件;無(wú)法解出BIOS文件,在主板損壞后,就無(wú)法使用編程器來(lái)重新修復BIOS。% W3 `& [6 N; t" p
在此以前,好多網(wǎng)友都說(shuō)其DELL的BIOS文件升級,只是升級需要升級的某一部分,即BIOS升級文件只是一個(gè)補丁,并不是全部文件升級,但實(shí)際,DELL BIOS刷新程序是一個(gè)特殊的可執行程序,本身已經(jīng)包括刷新程序和BIOS文件,有32位和16位兩種運行模式,也就是說(shuō),它可以在Windows平臺下以32位程序運行(非實(shí)模式),也可以在純DOS環(huán)境中運行。運行后系統會(huì )自動(dòng)重啟,BIOS刷新完畢。在某些特定的情況下,它可能必須在純DOS環(huán)境中運行,在Windows平臺下會(huì )有錯誤報告,代碼0x00000610。9 S; a7 K8 `! j" q/ V( H& c% L
耗子經(jīng)過(guò)尋找一些國外網(wǎng)站的資料,加上在自己DELL機上的實(shí)際測試,將一些DELL BIOS的初步分析說(shuō)明一下。
& G( w/ x( h9 L4 r8 D# j( [ 其實(shí)下載的DELL的BIOS刷新程序中含有完整的GZip壓縮的BIOS鏡像。我們可以使用使用-writehdrfile或-writeromfile參數很容易的分離出BIOS文件。注:GZip壓縮格式:這是一個(gè)開(kāi)源的壓縮格式,Windows 用戶(hù)可能對其并不熟悉,但是Linux下它的應用十分廣泛(Linux最流行的壓縮方式莫過(guò)于tar打包加上gz壓縮)。
@5 g) H9 z$ x& Y2 C' }$ ~; }- O 首先下載機器對應的BIOS文件,當然其都是EXE的可運行程序;在WINDOS命令行狀態(tài)下,輸入文件名 -writehdrfile或-writeromfile參數,這里說(shuō)明一下,文件名即為下載的BIOS文件(即EXE格式的文件)。
% a. D& A7 b* @: _' @; O 如我的DELL 630M機器的BIOS,下載最新版本BIOS為MX51_A04.exe文件,在XP命令行狀態(tài)下,分動(dòng)運行MX51_A04 -writehdrfile和MX51_A04 -writeromfile,可分別在當前目錄下得到一個(gè)文件;文件名為MX51_A04.hdr和MX51_A04.rom- K2 e# J; @, v2 L
分離出的MX51_A04.rom文件即為BIOS文件,大小為1,048,576字節,正好為1M?芍苯佑镁幊唐鲗(xiě)入BIOS芯片中。MX51_A04.hdr的BIOS鏡像,大小為1,048,668字節,等于1MB+92字節,這92字節分別是頭部的84字節和結尾的8字節,除去這92個(gè)字節即可得到ROM文件。其中頭部的84字節是以$RBU開(kāi)頭的版權字符串,結尾的8字節中前4字節是ROM文件的CRC32校驗和的補碼,后4字節是前面84字節+1MB完整ROM鏡像+4字節ROM校驗和的CRC32校驗和的補碼。 文件頭對比: 文件尾部對比: 通過(guò)對比我們發(fā)現,我們只要去掉xxxx.hdr頭部的84字節,及尾部的8字節。然后保存即為需要的BIOS文件,不過(guò),我們可以直接分出BIOS文件,這一步就不需要了。 對于HDR文件的用處,是在純DOS環(huán)境下刷新BIOS時(shí)使用。如MX51_A04.exe -readgzfile這條命令將在當前文件夾下尋找D610_A06.gz文件,如果找到,它把該文件解壓得到D610_A06.hdr文件,校驗其中的CRC信息,并把該hdr文件中所包含的1MB ROM鏡像刷新到BIOS中。所以,如果我們手頭有ROM鏡像,只須先添加92字節成為HDR鏡像,然后用GZip打包成gz文件就可以刷新了。其實(shí)DELL機器的BIOS,可直接在WIN環(huán)境下運行并刷新,在DOS環(huán)境下刷新基本用不上,這只是讓網(wǎng)友了解一下HDR文件的作用。 簡(jiǎn)單一句話(huà),就是如果想分離DELL機器的BIOS文件,只要使用文件名加 -writeromfile參數即可。但其命令并不針對所有DELL機型,這一點(diǎn)網(wǎng)友需要注意。另附命令其它參數,有興趣的網(wǎng)友可自行測試。+ A; R* a+ s n4 x
|
-classic4 Z& c0 {; M4 R
-reportstatus1 t" Q1 v5 w$ P9 I I
-norburesults! K& ?. ]* C& t& h( _
-rburesults
( z3 ?3 N0 t1 L, y: [6 ^1 E -writeromfile x3 w4 A N& e# t- F9 J: b# K% u3 f
-writehexfile
- O' [; P8 z2 }+ f7 n( F r4 c -writehdrfile B+ {! J& n3 Q4 s1 u& x, k
-wipeclean- y) x0 \9 L, S# x3 Y( ]/ i
-wipeall0 ]9 {# I! O) s! Y" ~
-verbose
' O3 P) \* Q2 t -prgboot
: `5 s0 j: ]& X4 |) q -noreboot; `" j/ Q' E. @0 G( S2 F
-nopause
. q7 V2 _6 P% H! L- B* f -info0 h e N6 ~ F% o1 r; a( `
-forcetype, _8 ?, E0 W6 ^2 F. {: T$ |) m7 y
-forceit4 B% F5 y3 X' y( ?- a2 @
-factory8 u: k. ?6 V; Z6 t2 V
-edvu
8 ]& E6 w" I. g5 y -boot
$ _0 C G2 [# v4 M- P . T! \1 q5 n! g- A1 O
注意:1、DELL機器的BIOS文件,一定要從DELL廠(chǎng)家下載,最好不要從第三方網(wǎng)站下載。) _8 O# A. J$ u- d6 \
2、在分離BIOS時(shí),注意使用的參數及格式。/ Z! o7 u* K/ _( n* ? R# V* L
|
作者: caven1222 時(shí)間: 2008-10-2 21:13
牛!~學(xué)習了
作者: lidexia1984 時(shí)間: 2008-10-2 21:49
學(xué)習了
作者: 91xiubbss 時(shí)間: 2008-10-2 23:51
好像寫(xiě)了很久了吧,
作者: 小小本本維修 時(shí)間: 2008-10-3 10:18
太辛苦了樓主 謝謝
作者: tianjf 時(shí)間: 2008-10-23 18:39
標題: 謝謝分享
學(xué)習了,牛
作者: tjj181513 時(shí)間: 2008-10-23 18:56
太辛苦了樓主 謝謝
作者: 小呂TT 時(shí)間: 2008-10-26 19:10
太厲害了. ~6 o3 }! u' { d( P! L
高
作者: 晨吉 時(shí)間: 2008-10-26 20:10
辛苦了 挺復雜的 慢慢學(xué)吧
作者: 鄭州華誠科技 時(shí)間: 2008-10-26 20:20
試過(guò),挺好用的
作者: woshililixin 時(shí)間: 2008-11-20 23:13
值得佩服,太感謝了
作者: kai2045 時(shí)間: 2008-11-20 23:35
頂一下.學(xué)習了
作者: sunny217 時(shí)間: 2008-11-25 14:59
請教樓主.DELL的BIOS在哪下載.官網(wǎng)怎么查不到..不像IBM的那樣好查啊.能不能給個(gè)具體地址..
作者: sdjnlfc 時(shí)間: 2008-11-25 15:07
太辛苦了樓主 謝謝
9 u$ S8 s* V- W# A) S9 \6 P本文來(lái)自: 中華維修論壇(www.91xiubbs.com) 詳細出處參考:http://www.91xiubbs.com/thread-119035-1-1.html
作者: qjklwidt 時(shí)間: 2008-12-8 22:03
標題: ==
太歷害啦,但是還是看不懂太深了吧
作者: idallyc 時(shí)間: 2008-12-8 22:06
有必要寫(xiě)得這么夸張嗎??????突出專(zhuān)業(yè)嗎?
作者: 遠洋科技 時(shí)間: 2008-12-10 18:15
太牛了支持,
作者: NORMAN 時(shí)間: 2008-12-10 18:45
真的太復雜了,不懂
作者: 戴廣 時(shí)間: 2008-12-15 14:52
學(xué)習了,但我還是不會(huì )啊,我沒(méi)親手做過(guò),遺憾啊
作者: JKX 時(shí)間: 2008-12-16 10:16
樓主辛苦了,謝謝分享,
作者: yyw1975 時(shí)間: 2008-12-16 16:39
牛,學(xué)習了實(shí)在是高
作者: 初心 時(shí)間: 2008-12-22 08:05
不錯,謝
作者: chenbo1987 時(shí)間: 2008-12-22 13:12
高手啊,頂起,,,,,
作者: wjx6841 時(shí)間: 2008-12-26 16:52
謝謝了真的辛苦了
作者: 楓mjj 時(shí)間: 2008-12-30 23:18
太強了,可惜看得我頭都大了。。。
作者: 筆記本之星 時(shí)間: 2009-1-2 00:21
果真是高手啊
作者: 本本易修 時(shí)間: 2009-1-2 21:56
太厲害了$ ~& ?; F( J3 Q+ T+ Y+ a
& P" y6 p' R9 m4 G高
作者: 大東10 時(shí)間: 2009-3-14 19:19
牛 人 太厲害了。
作者: lrh123 時(shí)間: 2009-3-15 15:00
實(shí)在是高
作者: sdjnlfc 時(shí)間: 2009-3-15 15:10
太辛苦了樓主 謝謝
作者: heju123 時(shí)間: 2009-3-16 19:11
有點(diǎn)看不懂呀
作者: xingdongli2006 時(shí)間: 2009-3-16 19:40
這個(gè)是真的,我就碰到一個(gè)高人,DELL 1000的BIOS真的被他分離出來(lái)了,一個(gè)字牛
作者: trl254948510 時(shí)間: 2009-3-28 23:12
不懂啊,還得學(xué)習學(xué)習/!
作者: jsc335 時(shí)間: 2009-3-30 09:53
呵呵,一直佩服樓主BIOS和解密的技術(shù),希望以后多多賜教
作者: 惠州維修 時(shí)間: 2009-3-30 10:33
不錯;究吹拿靼。
, u( e& L/ i# m. AULTRAEDIT這個(gè)軟件要下載的吧。
+ a' p) r* `$ T2 n: m能不開(kāi)介紹下IBM的分離法。謝謝
作者: jing799940141 時(shí)間: 2009-4-27 14:34
辛苦了.
作者: xinok08 時(shí)間: 2009-5-14 12:34
hao xuexi haodongxi!!!
作者: luoxianhua2003 時(shí)間: 2009-5-14 20:25
真是個(gè)高手啊
歡迎光臨 91手機維修論壇 (http://www.jstransmit.com/) |
Powered by Discuz! X3.4 |
惠州市|
天长市|
平舆县|
新河县|
成都市|
盐池县|
白朗县|
托里县|
阿合奇县|
库尔勒市|
江川县|
枣庄市|
滦平县|
壤塘县|
盘锦市|
上蔡县|
乐至县|
合作市|
威宁|
察雅县|
琼海市|
濮阳县|
肥西县|
调兵山市|
克拉玛依市|
柳河县|
潞西市|
台安县|
凌云县|
紫云|
云和县|
沅陵县|
平潭县|
太湖县|
侯马市|
博乐市|
洞口县|
浦江县|
游戏|
阿城市|
应城市|