SAY討論區

標題: 老羅怎麼看?盤古破解錘子手機Bootloader [打印本頁]

作者: 武神張    時間: 2017-2-8 07:51:21     標題: 老羅怎麼看?盤古破解錘子手機Bootloader

2014 年,羅永浩聲稱要開放錘子手機的Bootloader ,兩年後,44歲的他因未能兌現承諾而站上了被告席,之後他發佈微博致歉,表示該計劃因安全理由被技術人員否決掉了。
z1l1ghhrzqc21.jpg
然而以蘋果越獄聞名世界的盤古團隊卻“不務正業”,研究了個錘子!就在2月6日,他們發佈微博表示已成功破解錘子手機的 Bootloader,滿足了不少發燒友的期待。
不少朋友可能對 Bootloader並不太了解,以至於會產生如下疑問:
老羅的計(qing)劃(huai)為何會被否決?
Bootloader 是什麼?解鎖後意味著什麼?
發燒友們為什麼希望廠商開放 Bootloader?
眾多手機廠商為何緊抓 Bootloader 不放?
盤古團隊又是如何將之破解的?
今天雷鋒網宅客頻道就用通俗易懂的方式和大家聊聊——盤古破解錘子手機 bootLoader鎖 那些事兒 。
Bootloader 是什麼? —— 啟動引導器、球隊教練
BootLoader ——啟動引導器,簡單來說就是在操作系統內核運行之前運行的一段小程序。通過這段小程序,我們可以初始化硬件設備、建立內存空間的映射圖,從而將系統的軟硬件環境帶到一個合適的狀態,以便為最終調用操作系統內核準備好正確的環境。
不嚴謹的講,Android 系統中的 Bootloader 和 PC 的 BIOS有些類似,它可以引導 Android 系統正確啟動。
有人曾把 Android 系統比喻為在球場上瘋狂砍分的科比,Bootloader 就是傳奇教練菲爾?傑克遜,隻有他才能調動起科比的情緒,佈置好進攻方式和防守陣型,把科比的潛能充分激發出來。隻要這些都準備好了,科比就能攻無不克戰無不勝;此外,教練也能從球員中選出發揮穩定、適合自己球隊風格的球星(官方ROM或基於官方ROM的第三方固件)上場比賽,而拒絕一些與球隊風格不合的球員加入(民間ROM)
15zofeeaqqc21.png
BootLoader 既然要執行硬件初始化,那必然和硬件相關,所以它的代碼並非通用的,不同的硬件需要不同的 BootLoader 代碼,各大廠商可能都有自己的,也可能有一些通用的。使用高通處理器的手機通常 Bootloader 都是基於一個叫LK( little kernel ) 的東西做的,比如錘子手機。
Bootloader 與 刷機有什麼關系?
據雷鋒網了解,發燒友們常說的刷機,一般分為"卡刷"和“線刷”,兩種方式都可以將第三方的手機系統 ROM 包刷入設備當中。
不同的是,卡刷是把 ROM 包放在手機內存卡裡刷;“線刷”是手機連著電腦,用電腦來輸入刷機指令。無論卡刷還是線刷,都是在 Bootloader 之後進行的, Bootloader 大門一鎖 ,什麼刷都沒得玩。
uklx4z1zmct21.png
在 Bootloader 初始化手機硬件之後,通常可以用組合鍵(比如開機鍵 音量鍵 )進入Fastboot 模式,用電腦對手機輸入指令,可以理解為實現了一個簡單的通信協議。
如果沒有進入Fastboot 模式,則可以通過另一個組合件進入 Recovery 模式,Recovery ——“恢復模式”,相當於PC上常見的“一鍵還原精靈”、Ghost系統等,可以用來刷手機系統的 ROM 包。
如果既沒有進 Fastboot 模式也沒有進 Recovery,那麼 Bootloader就開始通過 Boot image 讀取手機的系統內核,然後啟動 Android。
廠商為何緊抓 Bootloader 不放?
看懂 Bootloader 的重要性,就會知道手機廠商一旦開放 Bootloader ,至少要面對這三大麻煩:
1、運營商受損
手機廠商通常和網絡運營商合作推出合約機,難免內置預裝軟件 ,預裝軟件通常無法自行刪除,一旦開放 Bootloader,運營商及合作夥伴的利益無法保障。
2、可能淪為單純制造商
手機廠商各自的UI實則是最鮮明的品牌烙印,一旦 Bootloader解鎖,用戶買了你的手機卻用別人家的系統,手機廠商就有可能淪為單純的制造商。
羅永浩此前曾語帶輕浮地諷刺過魅族不提供該解鎖 Bootloader 功能,是對自家UI 系統的“不自信”。想必老羅剛開始計劃開放 Bootloader 功能,也是出於對 Smartisan OS 爆棚的自信。
3、手機穩定性、安全性均難以保證
手機刷入的第三方固件可能會存在各種各樣的Bug,輕則影響用戶體驗,重則引發手機睡死、過熱、漏電等現象,穩定性難以保證。從數據安全方面考慮,當用戶的手機不慎遺失,如果 Bootloader 沒鎖,對方可以隨心所欲地刷入第三方系統,輕而易舉取得手機中的隱私信息,“查找我的手機”、“遠程抹除數據”之類安全功能完全失效。
正因為牽扯太多問題,手機廠商們對待 Bootloader 的態度由緊到松又到緊,經歷了一次倒U型變化。目前大多數廠商都鎖了Bootloader,不同的是,有的提供了官方的解鎖渠道,比如“發燒”的小米,但解鎖之後仍會失去保修,有的則幹脆禁止 Bootloader 解鎖。
盤古搞定錘子手機 Bootloader
事實上,正如老羅所說,其實2014年他們可能確實考慮對 Smartisan OS 開放Bootloader ,因此在初代ROM中保留了解鎖的功能,但其後該功能的大部分指令都被“閹割”,也許正是考慮到安全等問題。
對於T1和T2手機,2.6.7 是最後一個可以解鎖的 ROM 版本號。
根據盤古在微博中所述,在被破解的錘子T2 手機中,其中涉及 Bootloader解鎖的一個安全分區使用了 RSA MD5 兩種加密算法進行簽名校驗,在這個過程中,盤古發現了由於技術人員對加密算法不太熟悉,導致了兩個的邏輯漏洞:
在 RSA 加密算法中,有公鑰和私鑰兩把“鑰匙”,公鑰是公共的,私鑰掌握在加密者手裡,原本這兩把鑰匙應該是相互獨立的,但一個小錯誤讓盤古團隊直接通過公鑰推導出私鑰。
第二個漏洞是其中MD5算法中的某個值可以任意指定,盤古團隊將其設置為 0 之後,可以讓原本瞬息萬變的哈希值固定為某一個數值。
通過這兩個漏洞,他們成功構造校驗簽名,將一臺裝載 2.6.7版本 Smartisan OS 的錘子手機解鎖。
盤古團隊在文中表示,目前錘子手機的系統已經升級到 3.x 版本,解鎖需要先將系統版本降級至 2.6.7 的版本,利用舊版 Bootloader 存在的漏洞進行解鎖,解鎖完成後再在不更新 Bootloader 的情況下升級回原來版本的系統,操作相對繁瑣。
據雷鋒網了解,從原理上看來,錘子科技如果一心要防止用戶利用該漏洞解鎖 Bootloader,隻需通過ROM簽名驗證等方式,讓用戶無法降級回 2.6.7以下版本即可讓此破解方式失效。
錘子科技將如何處理此次破解事件,目前還尚未可知。但無論如何,安全總是第一位的,借用盤古團隊對老羅未兌現承諾一事的評價:“ 能從認為加鎖是對系統的不自信,到後來發現解鎖是安全隱患,絕對是個進步(loser口中的打臉)”

附件: [z1l1ghhrzqc21.jpg] z1l1ghhrzqc21.jpg (2017-2-8 07:51:21, 0 Bytes) / 下載次數 0
http://say.go2tutor.com/forum.php?mod=attachment&aid=ODYwMjI4fDc1NjMyOTBhfDE3ODY2OTQ5NzJ8MHww

附件: [15zofeeaqqc21.png] 15zofeeaqqc21.png (2017-2-8 07:51:21, 0 Bytes) / 下載次數 0
http://say.go2tutor.com/forum.php?mod=attachment&aid=ODYwMjI5fGQzNDRjZmIwfDE3ODY2OTQ5NzJ8MHww

附件: [uklx4z1zmct21.png] uklx4z1zmct21.png (2017-2-8 07:51:21, 0 Bytes) / 下載次數 0
http://say.go2tutor.com/forum.php?mod=attachment&aid=ODYwMjMwfDExNTViYjM2fDE3ODY2OTQ5NzJ8MHww
作者: nh88    時間: 2017-2-8 12:45:48

呵呵,等著就等著...
作者: hkgordan    時間: 2017-2-8 12:56:05

強人,佩服死了。呵呵,不錯啊
作者: 牛奶陽光    時間: 2017-2-8 13:13:03

好奇心,我打開看看
作者: 十兵衛    時間: 2017-2-8 13:37:56

好貼壞貼,一眼就看出去
作者: frankyhui    時間: 2017-2-8 14:48:22

這帖子勢必造成迴響
作者: Gopper    時間: 2017-2-8 15:32:36

支持一下吧
作者: oh~my~gag    時間: 2017-2-8 15:44:53

支持一下吧
作者: 北極蝦    時間: 2017-2-8 15:47:36

回貼賺學識,不錯了
作者: 9394    時間: 2017-2-8 15:58:25

這個站不錯!!  
作者: frankyhui    時間: 2017-2-8 15:59:10

你喜歡貼子還是發貼子的人
作者: hkgordan    時間: 2017-2-8 16:01:14

也許似乎大概是,然而未必不見得。
作者: ng015856    時間: 2017-2-8 16:33:06

謝謝分享了!
作者: lreneMOON    時間: 2017-2-8 17:13:03

樓主分享的好東西,我幫你宣傳
作者: yan4327    時間: 2017-2-8 17:59:16

一個子 沒看懂
作者: 現實999    時間: 2017-2-8 19:02:14

發貼看看自己積分
作者: 現實999    時間: 2017-2-8 19:28:17

要是能在多一點就好了
作者: 傻QQ    時間: 2017-2-9 01:51:23

我的媽呀,愛死你了
作者: 鬼谷先生    時間: 2017-2-9 05:43:24

真是佩服得六體投地啊
作者: vol1210    時間: 2017-2-9 08:06:21

不錯啊! 一個字牛啊!
作者: easonchan    時間: 2017-2-9 08:08:39

尼伊達看起來是個不錯的站喔
作者: 底褲超人    時間: 2017-2-9 20:19:13

不錯啊! 一個字牛啊!
作者: kenneth_sweet    時間: 2017-2-10 03:45:17

暈  不信啊
作者: hkgordan    時間: 2017-2-10 08:11:57

讀10年書,不然看樓主一篇帖子
作者: 北極蝦    時間: 2017-2-10 12:42:56

加油啊!!!!頂哦!!!!!
作者: alvinsiusiu    時間: 2017-2-12 09:42:41

挺好啊
作者: 前程    時間: 2017-2-12 09:46:38

說的不錯
作者: 牙`蔚    時間: 2017-2-14 03:24:30

好看的程度,心照不宣
作者: xiao丸子    時間: 2017-2-14 07:31:26

這樣的帖子,一定會引起轟動
作者: 鬼谷先生    時間: 2017-2-14 07:39:02

看或者不看,貼子就在這裡,不急不忙  
作者: 北極蝦    時間: 2017-2-16 08:13:56

熱情分享好文章,看了都要來回覆
作者: oh~my~gag    時間: 2017-2-17 06:03:17

慢慢來,呵呵
作者: 曾冇權    時間: 2017-2-17 13:33:30

要是能在多一點就好了
作者: mic167    時間: 2017-2-17 13:34:44

每天都要來尼伊達論壇逛一逛




歡迎光臨 SAY討論區 (http://say.go2tutor.com/) Powered by Discuz! X2