用侧信道攻击与暴力搜索恢复iPhone用户口令

VSole2021-10-26 05:13:17

掌控你的iPhone仅需两步!

撰文 | 王  菁 

编辑 | 心  玫 

概述

近年来,智能手机已成为越来越重要的存储设备,若损害其安全性和数据保护机制会极大地影响用户的隐私。iPhone对于数据的保护,是通过设备的唯一用户标识符UID和用户自定义口令passcode共同作用实现的。2021年,Oleksiy Lisovets等人在CHES上发表了基于iPhone 4的攻击[1],其论文的贡献在于:

1. 通过侧信道攻击恢复出iPhone 4的256位UID密钥;

2. 破解UID后,再使用GPU高度并行计算,对passcode进行离线暴力搜索。

第一步:侧信道攻击恢复UID

在执行侧信道攻击之前,需要对iPhone应用一组非永久性的软硬件修改,以便于波形采集。论文采用了电磁攻击和能量攻击两种侧信道攻击方法,需要进行不同的硬件修改。

对于电磁攻击,需要进行如下操作:

1. 断开外围设备的连接、去除CPU的金属屏蔽层,使电磁探头能够放置在芯片顶部;

2. 使用PodBreakout连接器和FT232RL接口转换芯片构建UART连接器,实现iPhone与PC之间的通信;

3. 从音量减小键处连接到SoC GPIO引脚来进行触发等。

对于能量攻击,其硬件修改更为复杂,需要在VDD端串联一个1Ω电阻,卸下电感和电容等操作。但不论是电磁攻击还是能量攻击,其硬件修改都是可逆的。

软件修改对于电磁攻击和能量攻击则相同,都是通过已有的BootROM漏洞来执行代码,来控制AES引擎选择UID 进行加密(或解密),并实现加密(或解密)时所选明文(或密文)的查询。

左图为作者采集到的电磁信号波形,这是500条波形叠加显示的结果,右图为将左图波形进行对齐、滤波预处理后得到的波形。

实验采集的波形如上图所示。论文作者采集了一千万条电磁信号波形,作者对预处理后的波形执行了t检验以进行泄露评估,从而找到加密或解密区间,以便于下一步攻击。

t检验结果如下图所示,分析得知,介于0.3μs和0.6μs之间的时间段对应于CPU和AES引擎之间的IO通信,1.2μs、1.4μs和1.6μs附近的尖峰则与CPU和AES之间的反向IO通信相关。

上图为t检验结果曲线,大于4.5的位置表示存在泄露。

因此,论文作者假设解密发生在0.8 µs至1.2 µs之间,如下图所示,集中在这段时间进行攻击。

AES解密区间范围内t检验结果曲线。

论文作者针对AES算法最后两轮进行CPA攻击,以恢复256位的AES密钥(即UID)。

攻击最后一轮时,使用的泄露模型为:

HW(SR○SB(P⊕K1)⊕P)

攻击倒数第二轮时,使用的泄露模型为:

HW(SR○SB(K2⊕MC○SR○SB(P⊕K1))⊕SR○SB(P⊕K1))

进行CPA攻击的结果如下图所示。论文作者通过CPA逐字节对密钥进行攻击,成功恢复了256位UID。

上图中,图a展示的是AES算法单轮CPA结果;图b展示的是AES算法多轮叠加的CPA结果,通过颜色可以很容易地区分出不同轮;图c展示的是几个AES的CPA结果。

上述电磁攻击实验,使用了共三周时间得以完成,其中采波时间为两周,执行CPA攻击时间为一周。实验使用了大量对齐的波形以猜测正确UID,对于UID某些字节,需要大约三千万条波形,如下图所示。

进行CPA所使用的波形数与相关性关系曲线图。

论文中的能量攻击与电磁攻击的过程基本相同,其区别在于,能量波形采集的波形不易识别AES特征,无法对齐,因此只能用未经处理的波形进行攻击。从波形数量级上看,能量攻击不比电磁攻击有效,尤其考虑到对硬件的修改,能量攻击对硬件操作难度更大。

第二步:GPU离线暴力搜索passcode

通过执行侧信道攻击恢复了UID后,就可以使用GPU高度并行地搜索用户passcode了。在搜索passcode时,验证passcode正确与否是根据以下过程:

UID与passcode经过密钥派生函数(KDF)得到派生密钥(derived key),之后,通过尝试用derived key解锁keybag(keybag可通过软件漏洞从设备下载获得)中的每个class key,来验证所猜测的derived key的正确性。如果使用猜测的derived key可以成功解锁每个class key,则对应猜测的passcode为正确的passcode。

恢复passcode后,便可以解密用户存储在设备上的所有文件,以及用户存储在iCloud上的数据了。

其中,论文使用GPU高度并行计算,大大缩短了暴力搜索的时间。使用iPhone设备和GPU执行暴力搜索,在最坏情况下针对不同密码长度查找数字密码所需的时间之间的比较如下表所示:

总结

论文作者对iPhone 4实施攻击,重点介绍了两部分内容:

1. 使用已有的BootROM漏洞,通过侧信道攻击方法,采集大量波形,使用CPA恢复出iPhone 4的256位UID密钥;

2. 破解UID后,再使用GPU高度并行计算,暴力搜索passcode,大大缩短了搜索时间。

根据论文作者描述,此攻击也适用于更新的iPhone型号。但从iPhone 5s开始,iPhone具有Secure Enclave协处理器(SEP)负责数据保护,从iPhone 6s开始,采取DPA对策来保护AES引擎,这些数据保护措施加大了侧信道攻击的难度,论文暂时无法对更新型号iPhone攻击的成功与否作出任何声明,面临着一定的挑战性。

参考资料

[1] Lisovets, O., Knichel, D., Moos, T. and Moradi, A. 2021. Let’s Take it Offline: Boosting Brute-Force Attacks on iPhone’s User Authentication through SCA. IACR Transactions on Cryptographic Hardware and Embedded Systems. 2021, 3 (Jul. 2021), 496–519. DOI:https://doi.org/10.46586/tches.v2021.i3.496-519.

iphoneaes
本作品采用《CC 协议》,转载必须注明作者和本文链接
而iOS呢肯定是iPhone了,但是如何选系统如何自己越狱呢?比如手机越狱后,发现开不开机无法进入主界面,有可能是注入的插件有问题。然后进入frida-ios-dump脚本的目录直接执行./dump 包名。
概述近年来,智能手机已成为越来越重要的存储设备,若损害其安全性和数据保护机制会极大地影响用户的隐私。上图为t检验结果曲线,大于4.5的位置表示存在泄露。AES解密区间范围内t检验结果曲线。上述电磁攻击实验,使用了共三周时间得以完成,其中采波时间为两周,执行CPA攻击时间为一周。其中,论文使用GPU高度并行计算,大大缩短了暴力搜索的时间。
按说,作为一款密码产品,安全性应该是做的“非常优秀”的,但是,谁能想到呢,这居然是LastPass这款“密码神器”在2022年第二次被黑了……有用LastPass的朋友,改一下密码吧。
Zoom、Microsoft Teams、FaceTime等9款视频聊天应用程序的安全性如何?
以往工作揭示了所涉及协议中的一些安全性和隐私性问题,这些工作对AirDrop进行了广泛的研究。对将目标连接到攻击者控制的Wi-Fi网络的PWS进行攻击。最近,有几项研究发现了苹果专有的无线协议中的严重漏洞。AWDL协议和对AirDrop的中间设备攻击。到目前为止,迄今为止的工作已经深入分析了一种服务,即。但是,所涉及的上层协议仍然是未知的。
它通过解压缩 APK 并应用一系列规则来检测这些漏洞来做到这一点https://github.com/SUPERAndroidAnalyzer/super9、AndroBugs 框架是一种高效的 Android 漏洞扫描程序,可帮助开发人员或黑客发现 Android 应用程序中的潜在安全漏洞。它可以修改任何主进程的代码,不管是用Java还是C/C++编写的。
2021 年 7 月, 以色列间谍软件“监听门”事件成为国际焦点。这款间谍软件以神话中的“飞马”(Pegasus)命名, 由以色列网络武器公司 NSO Group 开发,可以“通过空中飞行”感染手机,它可以秘密安装在运行大多数版本的 iOS 和 Android 的手机(和其他设备) 上。“飞马”攻击事件经媒体曝光后,国际舆论一片哗然,在国际社会引起轩然大波,影响巨大,被称为 2021 年度的一大标
许多 iOS 应用程序正在利用推送通知触发的后台进程,来收集有关用户数据,从而允许创建用于跟踪的指纹配置文件。
近日,卡巴斯基安全研究人员Boris Larin披露了iPhone历史上最复杂的间谍软件攻击——三角测量(Triangulation)的技术细节。
有网友爆料称,自己丈母娘的iPhone手机开启了Apple ID双重验证,但仍然被钓鱼盗刷。该网友称,事发7月12日晚,当晚23点,丈母娘的iPhone突然被抹掉资料,变成出厂设置状态,在设置过程中,手机陆续收到银行短信。赶紧联系银行和微信支付冻结,冻结完毕,已经产生了20多笔订单,共计1.6万元,赶紧报警。让该网友诧异的是,全程居然没有弹出双重认证的弹窗。
VSole
网络安全专家