专栏名称: 雷峰网
中国智能硬件第一媒体
目录
相关文章推荐
36氪  ·  「穷鬼」中产,挤进奥莱抢3折Prada ·  5 天前  
新浪科技  ·  【#爱奇艺上线亲情卡#】@爱奇艺VIP会员 ... ·  5 天前  
新浪科技  ·  【消息称#苹果或不会推出大屏iPhoneSE ... ·  6 天前  
51好读  ›  专栏  ›  雷峰网

盘古越狱破解锤子手机 Bootloader,这里有详解

雷峰网  · 公众号  · 科技媒体  · 2017-02-08 18:00

正文

2014 年,罗永浩声称要开放锤子手机的 Bootloader 功能 ,两年后,44 岁的他因食言而站上被告席,之后罗永浩发布微博致歉,表示该计划因安全理由被技术人员否决掉了。

然而以苹果越狱闻名世界的盘古团队却 “不务正业”,开始搞锤子。就在 2 月 6 日,他们发布微博表示已成功破解锤子手机的 Bootloader 功能,满足发烧友们的期待。

不少读者朋友可能对 Bootloader 并不太了解,以至于会产生如下疑问:

  • 老罗的计(qing)划(huai)为何会被否决?

  • Bootloader 是什么?解锁后意味着什么?

  • 发烧友们为什么希望厂商开放 Bootloader?

  • 众多手机厂商为何紧抓 Bootloader 不放?

  • 盘古团队又是如何将之破解的?

今天雷锋网宅客频道就用通俗易懂的方式和大家聊聊——盘古破解锤子手机 bootLoader 锁 那些事儿 。

Bootloader 是什么? —— 启动引导器、球队教练

BootLoader ——启动引导器,简单来说就是在操作系统内核运行之前运行的一段小程序。通过这段小程序,我们可以初始化硬件设备、建立内存空间的映射图,从而将系统的软硬件环境带到一个合适的状态,以便为最终调用操作系统内核准备好正确的环境。

不严谨的讲,Android 系统中的 Bootloader 和 PC 的 BIOS 有些类似,它可以引导 Android 系统正确启动。

有人曾把 Android 系统比喻为在球场上疯狂砍分的科比,Bootloader 就是传奇教练菲尔 · 杰克逊,只有他才能调动起科比的情绪,布置好进攻方式和防守阵型,把科比的潜能充分激发出来。只要这些都准备好了,科比就能攻无不克战无不胜;此外,教练也能从球员中选出发挥稳定、适合自己球队风格的球星(官方 ROM 或基于官方 ROM 的第三方固件)上场比赛,而拒绝一些与球队风格不合的球员加入(民间 ROM)

BootLoader 既然要执行硬件初始化,那必然和硬件相关,所以它的代码并非通用的,不同的硬件需要不同的 BootLoader 代码,各大厂商可能都有自己的,也可能有一些通用的。使用高通处理器的手机通常 Bootloader 都是基于一个叫 LK(little kernel) 的东西做的,比如锤子手机。

Bootloader 与 刷机有什么关系?

据雷锋网了解,发烧友们常说的刷机,一般分为 "卡刷" 和 “线刷”,两种方式都可以将第三方的手机系统 ROM 包刷入设备当中。

不同的是,卡刷是把 ROM 包放在手机内存卡里刷;“线刷” 是手机连着电脑,用电脑来输入刷机指令。无论卡刷还是线刷,都是在 Bootloader 之后进行的, Bootloader 大门一锁 ,什么刷都没得玩。

在 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 口中的打脸)。


点击关键词可查看相关历史文章


● ● 

热门文章


业内专家:工业机器人四大家族的技术哪家强?

去掉 “汽车” 字样,特斯拉为建立能源帝国正名

何搏飞时期的格灵深瞳,吹过哪些别人不忍戳破的 “泡泡”

乐视疑云:“造谣” 与 “辟谣” 背后的内部混战

李飞飞:“情绪” 和 “情感”,是人工智能的下一个春天

iPhone 十年,回望这款伟大产品诞生传奇


● ● 

车和家 英伟 | 法拉第未来 | 哈苏

小程序 | 扎克伯格开发笔记 | 共享单车

GoPro | 春运刷票原理 | AI 美颜

物联网年终盘点 | AI 医疗影像公司盘点

华为 5G | Autopilot 2.0 | 京东 X 事业部

商用性爱机器人 | 淘宝 Buy+ | 张小龙内部演讲

小米 MIX 小米 VR | 华为麒麟 960

锤子 M1/M1L | 龙芯 3A3000 三星 Note 7

大疆 “御”Mavic | Google Home

国产多线激光雷达 | 谷歌 Daydream VR 头盔