林渊选择了相对温和的“用户层溢出”方案。打个大白话的比方,这就好比去偷袭一座堡垒,他伪装成送外卖的,试图通过Safari浏览器的PDF漏洞,从正门混进去修改系统权限。
他飞速敲击着键盘,将一段包含越狱引导程序的代码打包,推送到手机里。进度条缓缓走到70%。
突然,电脑屏幕上弹出一串红色的报错代码。
林渊眉头一皱。他算错了一个极其微小的内存地址偏移量。就差了那么几个字节,导致外卖员在进门的一瞬间踩到了警报器。
桌上的 iPhOne 4 屏幕瞬间熄灭,紧接着亮起了一个白色的苹果LOgO。然后,就死死卡在这个画面,一动不动。
“操,白苹果了。”林渊骂了一句。系统死循环,第一台机子,废了。
第二次尝试:
林渊把那台变成“白苹果”的废机扔到一边,拆开了第二台。
既然走正门行不通,他决定直接上核武器——去炸地基。他采用的是极其底层的 BOOtrOm(启动引导只读存储器)硬件级漏洞。
他通过物理按键的组合,强行把手机拖进了 DFU 模式(设备固件升级模式)。
这相当于把手机打了一针全麻,让它处于毫无防备的深度昏迷状态。接着,他开始往引导区强行注入自己写的 PaylOad(破坏性代码)。
但2010年的硬件缓存实在太小了。林渊习惯了未来大内存的编程思维,他写的底层权限挟持代码,体积超出了这台初代神机缓存区规定的阈值。
“滴——”
电脑发出一声USB设备断开的提示音。
第二台 iPhOne 4 的屏幕彻底黑了下去。无论林渊怎么按电源键、怎么连数据线,这台手机都像一块纯正的黑色板砖,再也没有任何反应。
基带芯片被撑爆,硬核变砖。一万多块钱,连个响都没听见就没了。
第三次尝试: