2007年10月23日 星期二

iPhone破解的不歸路

上星期iPhone Elite Dev Team
率先發佈了修補iPhone Dev Team舊版AnySIM的問題之後...
阿瑋就在注意這個Elite Dev Team的消息...
裡面看到幾個關於目前unlock的分析...
有些資訊可以跟大家一起分享、討論...

以下東西是阿瑋自己從網路上獲取的資訊外加自己理解的內容...
並不一定完全正確!但是如果有錯...請各位不吝賜教!!

首先我們先看看一些駭客跟Apple破解的攻防戰...
目前unlock軟體有兩派...
一個是iPhoneSimFree,就是所謂的IPSF...
IPSF需要付費解鎖的,每個客戶的IMEI都要去IPSF註冊...
因為在iPhone上面裝的SimFree解鎖軟體...
會連到IPSF server查詢是不是註冊用戶...
檢查是註冊用戶才給解鎖...

而另外一個是AnySIM
特徵就是免費
舉凡iUnlock跟其他「自己搞不清楚自己是哪一種解鎖的人...」
還有其他亂七八糟的...都屬於這個派系!

大家先對號入座,看看自己是屬於哪一派的...?


自從九月底,Apple更新了iPhone的軟體到了1.1.1!
使用AnySIM 1.02的朋友...升級上去全部都因為IMEI變成0049...
iPhone也就變成華麗的磚頭了!

這是因為AnySIM 1.02在破解iPhone的同時...
也修改了seczone部份資料!
導致Apple在更新1.1.1的時候,讀取了這些被patch的部份...
由於被修改...所以手機就變磚頭囉!

而使用IPSF的朋友,是可以順利升級到1.1.1
但是非AT&T用戶,還是沒辦法activate手機...
因為如果要非法的activate iPhone,是需要Jailbreak的!
1.1.1出來後蘋果重新改變了加密機制...
駭客們被逼的不得重新研究...

而在研究1.1.1的同時,有人發現iPhone上面的Safari跟PSP一樣
有著TIFF的漏洞...用Safari打開某些精心特製的「圖片」...
可以執行一些特別的code!
這個發現讓1.1.1的Jailbreak從不可能變成可能!
利用這個漏洞,駭客們可以輕易的取得系統的讀寫權限!
從而宣佈1.1.1的Jailbreak成功,1.1.1也在不久之後告破!

這時候IPSF的用戶,已經可以透過activate iPhone...
然後正常的使用1.1.1全部功能了!
當時IPSF也被認為是「最安全、最徹底」的解鎖...

但是最近的研究,卻發現IPSF並不是最好的解鎖...
下面就看阿瑋慢慢說來...

根據Elite Dev Team的wiki兩篇文章
http://code.google.com/p/iphone-elite/wiki/TEASecZone
http://code.google.com/p/iphone-elite/wiki/HowIPSFWorks
我們可以了解到AnySIM跟IPSF的基本工作原理!

~AnySIM 1.0x~
解鎖原理是改寫了部份iPhone的BaseBand
另外還修改了seczone+0xc88的lock tables!
重要的是並沒有動到seczone+0x400的「token」

~IPSF~
上面為什麼說IPSF並不是最完美的解鎖?
請大家接著往下看...
同樣的,IPSF也跟AnySIM 1.0x一樣修改了seczone+0xc88的lock tables
但是他們並沒有改寫BaseBand...
IPSF是將seczone+0x400的「token」給「清空」!
來達到破解的目的!
而且IPSF是用了一個RSA的漏洞來清空(zero out)token的!

那麼我們來看一下,上面談到的內容有什麼我們需要思考的?

1.seczone裡面存著各種重要的資料,都是加密的!
包含lock table、IMEI、NCK都在這個裡面!

2.經過解密之後的lock table,在每台iPhone上都是一樣的!
但是經過加密之後,每台iPhone的資料都會不一樣!

3.「token」在所有iPhone上,就像指紋...
每台iPhone都不一樣,都是唯一的!
而且只有Apple才知道這個RSA的private key去加密!
所以如果token的資料沒了...那將會永遠消失...
除非「你」或者「IPSF」有備份!

So?
AnySIM 1.0x造成的傷害,是可以被還原的!
因為沒有動到token的部份,所以可以從壞掉的seczone的資料...
逆向推算出原始資料的!
這也就是Revirgin的工作內容了~
http://iphonegoboom.com/virginizing/virginizing.html

而使用IPSF方法解鎖的人...現在只能祈禱了...
因為那些資料每個人都是唯一的...消失了就沒了...
希望IPSF有備份這部份的資料...
不然哪天Apple心血來潮,修補或者更新seczone的部份...
那所有IPSF的機器都會變磚...

綜合了以上東西...
AnySIM 1.1用的破解方式就比較安全了!
AnySIM 1.1仔細的研究過BaseBand...
只針對BaseBand作patch!也不修改seczone了!

這樣的作法有一個缺點...
就是日後Apple又升級BaseBand...
(現在最新版本是04.01.13_G)
那AnySIM 1.1的破解又會失效了!

但優點就是~安全解鎖!
只要自己重寫BaseBand...
然後在iTunes裡面作個恢復...
那iPhone就跟出廠一樣新了!

當然這也是目前的最新情況而已...
說不定這篇文章發表之後下一秒...
AnySIM 1.1又被發現出其他重大bug...
那也真是夠「囧rz」了!

破解iPhone是一條不歸路...
從你破解的那一秒開始...你就沒辦法回頭了...
勢必要跟Apple不斷周旋下去...
直到你不用iPhone為止...

0 意見:

張貼留言