Apple Pay 在全球多个国家/地区拥有超过1.27亿用户,是最受欢迎的非接触式支付系统之一。与其他的一些竞争支付技术不同,Apple Pay不仅被紧密地集成到了苹果的生态系统中,而且还是苹果设备所独有的。
Apple Pay作为一种数字钱包,能够将用户的支付卡数字化,并在兼容终端上完全取代传统的“刷卡+签名(swipe-and-sign)”以及“芯片+PINchip-and-PIN)”交易。然而,与传统的钱包不同,Apple Pay会保留有关用户POS消费的详细信息。由于系统处理的是大量高度敏感的信息,因此Apple Pay在兼容它的设备中属于受到最安全保护的“金库”之一。在这篇文章中,我们将向你展示这些信息在文件系统中的存储位置和方式、如何从iPhone中提取信息以及如何分析数据。
Apple Pay和隐私注意事项
我们对现代支付系统的期望是什么?举个例子来说,如果我们查看PayPal交易记录,我们几乎可以看到所有与购买相关的信息。具体来说,PayPal会保存诸如交易日期和时间、金额和币种,以及交易双方(“买方”和“卖方”)这样的信息。然而,除了这些信息之外,PayPal还可能会收到(并存储)与所支付的这笔钱相关的更确切的信息。
相对而言,Apple Pay则使用了一种大为不同的模式,至少在涉及到物理交易时是如此的。在Apple Pay发布期间,苹果高级副总裁Eddy Cue表示:“我们的业务不是收集你的数据。所以,当你去一个实体店使用Apple Pay时,苹果并不知道你购买了什么、在哪里买的,或者你花了多少钱。”
这也就是说,接受Apple Pay作为支付方式的商家不会传送任何与用户购买(以及支付)相关的具体信息。一方面,这造成了严重的限制——仅凭Apple Pay数据无法获取到收据(这类似于信用卡账单)。另一方面,苹果不会接收、处理或存储任何超出授权和验证交易所必需的信息。这一限制可以说是Apple Pay被隐私保护倡导者所称赞的一个特点。
“点击支付确实十分便捷,但如今的用户期待的是不断变化的、个性化的购物体验。他们乐于分享自己的个人信息,以获取更多来自Netflix、亚马逊(Amazon)等公司的增值服务体验。与此同时,零售商们也在不遗余力地挖掘有关消费者的一切信息,以便加深这种关系。”Marc Freed-Finnegan和Jonathan Wall在《Apple Pay ‘no-data-collection’ isn’t a feature. It’s a problem》一文中写道。
这是一个特点还是一个严重的限制是极具争议的。但有一个事实是值得肯定的,那就是苹果所收集或存储的信息并不会比传统的信用卡发卡机构多。在了解到这一点之后,我们对于Apple Pay数据到底包含了哪些信息就应该有了一个相应地预期。
Apple Pay数据
Apple Pay交易数据不会在不同的设备之间同步。相反,它们被保存在设备的本地存储上。也就是说,你使用Apple Watch进行的交易绝对不会出现在iPhone上,反之亦然。即使苹果本身在服务器上保留了交易数据,它也没有向用户提供可下载的Apple Pay交易清单。
苹果将Apple Pay交易数据视为高度机密信息。它不与iCloud同步,也不保存在iCloud备份中,而这些数据也不会是iTunes备份的一部分。换句话来说,只能通过物理访问设备(iPhone、iPad或Apple Watch)才能够提取到有关Apple Pay交易的信息。
如果你对Apple Pay的安全性感兴趣,可以抽点时间看看下面这两篇文章:
- 《Apple Pay: Can You Trust It? 》
- 《Apple Pay Do’s and Don’ts》
提取Apple Pay数据
具体来说,Apple Pay数据被存储在以下文件夹中:
private/var/mobile/Library/Passes
尤其应该注意以下这两个文件:
- private/var/mobile/Library/Passes/
/pass.json(包含支付卡信息); - private/var/mobile/Library/Passes/passes23.sqlite(包含交易信息)。
第一个文件包含有关支付方式的信息(激活数据、支付卡的图片和卡号的最后4位数),具体如下:
- Organization (passes23.sqlite)–银行或发卡机构的名称
- Card (pass.json)–支付卡名称
- Card Number (passes23.sqlite)–卡号的最后4位数
- Device Account Number (passes23.sqlite) –设备帐号的最后4(5)位数。每张支付卡可能有多个不同的DAN号码
- Expire Date (pass.json)–支付卡过期日期
- Modification Date (passes23.sqlite)–最后修改日期
- Bank Phone Number (pass.json)–发卡机构电话号码
- Bank Website–发卡机构网站
- Payment Type (passes23.sqlite)–支付卡类型
- Supports Contactless Payment (pass.json)–是否支持非接触式支付
- Active (passes23.sqlite) –支付卡是否主动关联到设备(在设备生产镜像时)
第二个文件,即SQLite数据库passes23.sqlite包含有关交易的信息,具体如下:
- Date–交易日期和时间
- Card Number–支付卡号码的最后4位数
- Merchant–商家的名称
- Category–服务类型
- Location–包括海拔在内的位置数据
- Address–地址,通常只是城市
- Amount–金额和币种
- Status–付款状态(已接受、已拒绝、已失败等)
- Merchant Phone Number-商家电话号码
- Merchant URL–对于在线支付而言,此字段包含WEB站点的地址
- Merchant Location–商家的地理位置数据
- Merchant Postal Address–商家的邮寄地址
- Device Account Number–交易时设备帐号的最后4(5)位数
此外,pass23.sqlite还存储有其他一些信息,如登机牌、门票、预订、折扣和会员卡等。
从技术上讲,我们是可以尝试在iPhone上查看Apple Pay支付卡和交易信息的,这需要借助数字钱包应用程序。有意思的是,诸如登机牌、预订、会员卡这样的数据会与iCloud同步,并保存在本地备份中,但这并不包含苹果Apple Pay交易信息。
苹果限制你只能查看最近的10笔交易。事实上,设备能够存储大量的交易。然而,它们并不能通过iOS用户界面访问。
Apple Pay数据既不会保存到本地备份中,也不会上传到iCloud。因此,数据无法通过逻辑采集或云提取获得。想要访问Apple Pay数字钱包,你需要获得设备的文件系统镜像。
那么,怎样才能从Apple Watch中提取Apple Pay数据呢?它们不会被转移到iPhone或iCloud上,也不会与之同步。虽然你可以备份你的Apple Watch,但Apple Pay交易信息仍然不会出现。想要从Apple Watch中提取Apple Pay交易信息,唯一能做的就是尝试WatchOS越狱。
以下是有关提取文件系统映像的步骤。
重要提示:在安装越狱程序或生成设备镜像时,请不要删除密码,即使越狱程序的开发人员指示你这样做!删除密码会立即抹去Apple Pay数据。如果你删除了密码会怎样呢?在这种情况下,所有支付卡都将解除关联(但仍会保存在文件系统中)。但是,整个交易历史记录将会被删除。值得注意的是,如果设备退出iCloud,也会发生同样的事情。
如果一台设备没有密码,那么它就不会存在Apple Pay数据。虽然你仍可以获得一个文件系统镜像,但其中并不包含Apple Pay交易信息。
1、要为iPhone生成镜像,你首先需要获得超级用户权限。超级用户权限仅可通过权限提升漏洞来获取,其中一些漏洞已经被纳入公开可用的越狱程序中。在撰写本文时,从iOS 10 到11.3.1都存在可用的越狱程序。如果你知道iPhone密码,那么你就可以尝试越狱设备以执行物理采集了。
2、使用iOS Forensic Toolkit或iTunes进行iPhone的本地备份(注意:一定要设置临时密码,以便你能够使用Elcomsoft Phone Breaker解密备份)。然后,下载一个兼容的越狱程序,并进行安装。
3、禁用将要生成镜像的iPhone上的Wi-Fi,或者最好是切换到飞行模式。确保没有其他iOS设备与你的计算机连接到同一个网络。
4、启动iOS Forensic Toolkit。
5、从主菜单中选择“D”,以禁用锁屏。这将阻止设备在超时后锁定屏幕,直到你重新启动iPhone。请注意,禁用锁屏对于访问和提取Apple Pay数据非常重要。
6、使用“F”命令提取文件系统镜像。文件系统镜像将作为TAR文件保存在你的计算机上。
7、提取过程可能需要耗费一定的时间(100 GB数据最多需要2小时)。
提取完成之后,继续分析TAR文件。
分析Apple Pay数据
Elcomsoft Phone Viewer 4.0或更高版本可用于分析Apple Pay数据。
1、启动Elcomsoft Phone Viewer 4.0或更高版本。
2、打开生成的文件系统镜像。
3、点击“Apple Pay”。
你将能够访问有关支付卡的信息:
交易清单:
正如你所看到的那样,Apple Pay交易所包含的信息类似于银行对账单。
结论
iOS包含了大量的高价值数据,这些数据对案件调查来说至关重要。对于像iOS这样复杂的系统而言,我们永远不会止步于发现新的高价值数据。就拿Apple Pay数据来说,它就是一个很好的证据来源。例如,它所提供的位置数据就可以影响到调查,能够帮助调查人员在给定的时间内确认犯罪嫌疑人与案件之间是否存在关联。
声明:本文来自黑客视界,版权归作者所有。文章内容仅代表作者独立观点,不代表安全内参立场,转载目的在于传递更多信息。如有侵权,请联系 anquanneican@163.com。