[手机取证] Apple Watch取证初探
转载文章请注明出处
1. 关于Apple Watch
苹果公司在2015年3月正式发布了智能手表Apple Watch,包括Apple Watch、Apple Watch Sport以及Apple Watch Edition三种版本。
图 1 Apple Watch的三个版本
Apple Watch采用Apple S1处理器,内置512MB RAM和8GB Flash存储,通过Wi-Fi和蓝牙与iPhone进行同步,与其同步的iPhone必须使用iOS 8.2及以上版本。
2. Apple Watch取证思路
目前,Apple Watch使用Watch OS 1.0系统,手表中所有App均来源于与之配对的iPhone手机,开发者可将自己的App进行Apple Watch适配并发布在App Store,在iOS安装后,可在iPhone手机上的Apple Watch应用中选择推送安装至Apple Watch,这是目前Apple Watch唯一的应用安装方式;Apple Watch系统的升级和还原也仅能通过配对的iPhone手机进行,现在市面发售的Apple Watch仅有的一个物理接口是未公开的调试接口,无法进行利用。
另一方面,Apple Watch应用程序的数据多数来源于iPhone手机上对应的程序,且这些程序的通信和数据存储都依赖于配对的iPhone手机(iMessage例外,Apple Watch上的iMessage服务可脱离iPhone独立连接Wi-Fi进行通信),Apple Watch内部存储主要用于保存手机同步的数据。
结合上述特点,我们可以初步确定对Apple Watch的取证思路:与多数智能可穿戴设备取证类似,对Apple Watch的取证工作实际上还是要基于对应的iPhone手机,而目前iPhone手机的取证依赖于iTunes备份进行,故此次研究也将主要利用iPhone的备份进行分析。
3. 取证方式
a) 将Apple Watch与iPhone手机进行配对,并安装支持的应用程序,本次测试选取的是Apple Watch 标准版42mm,使用运行iOS 8.3的iPhone 6进行配对。
b) 使用iTunes为配对的iPhone进行备份,将备份文件导出。
c) 使用取证软件对备份文件进行解析。需要注意的是,如果备份进行了加密,还应先进行解密操作。
4. 结论
Apple Watch的基本信息:
- Apple Watch信息:所有人,版本,区域和语言信息:
图 2 Apple Watch的基本信息
- 配对时间:使用NSDate存储,转换后需按照时区增加8小时,即2015年6月30日16:20:12。
图 3 Apple Watch与iPhone的配对时间
- Apple Watch的配对手机的版本,此处8.2.1指iOS 8.3.
图 4 Apple Watch配对iPhone的版本信息
- Apple Watch数据在iPhone备份中的存储位置
图 5 Apple Watch备份数据的存储位置
- Apple Watch序列号、UDID、Wi-Fi适配器MAC地址、蓝牙MAC地址及存储容量信息
图 6 Apple Watch序列号等信息
Apple Watch所同步的手机数据
- 通讯录和个人收藏联系人
Apple Watch数据文件夹中映射手机AddressBook数据库中的guid字段,但并不直接存储通讯录信息;Apple Watch按下按钮调出的个人收藏联系人也被同步到了手表之中
图 7 Apple Watch中存储的联系人对应guid
图 8 Apple Watch中的“个人收藏”联系人
- iPhone中所有App列表
图 9 Apple Watch所配对iPhone的应用程序列表
- Apple Watch中已安装的App列表
图 10 Apple Watch已安装应用程序列表
- Apple Watch中同步的Passbook信息
图 11 Apple Watch上的Passbook信息,图像等数据采用BLOB存储
- Apple Watch中同步的邮件账户和邮件id
图 12 邮件账户及对应ID
图 13 Apple Watch上所保存的邮件ID
Apple Watch App数据
目前市面上使用WatchKit开发的程序,在Apple Watch上安装后,配对的iPhone手机中均会生成独立的文件夹,并单独保存数据,除非程序额外定义存储位置。
以微信为例,使用Apple Watch的用户在收到微信消息后,iPhone端保存数据并推送给Apple Watch,在Apple Watch对应的数据文件夹下也会保存所有Apple Watch上使用过的表情、语音信息和文本聊天记录,乃至所发送的位置信息。
图 14 Apple Watch版微信好友列表
图 15 Apple Watch版微信聊天记录
5. 后续研究
- 由于Apple Watch上的iMessage可脱离所配对的iPhone手机使用,说明iPhone中已认证的Wi-Fi网络鉴权信息也存储在Apple Watch上,猜测甚至部分keychain信息也被同步到Apple Watch,在有条件的情况下,可以通过Apple Watch提取Wi-Fi鉴权信息。
- Apple Watch上的“信息”应用与iPhone手机上的“信息”进行同步,但就目前的研究来看并非实时同步,iPhone手机删除的部分信息仍存在于Apple Watch中,同时,存储在服务器的iMessage信息即使在iPhone删除后仍然保留在Apple Watch上或由苹果服务器推送至Apple Watch;如能实现针对Apple Watch的完整提取将可以找到较多手机中已被删除的有价值数据。
- 部分Apple Watch上安装的第三方App所保存的数据,在iPhone端删除后并不会在Apple Watch上同步删除,可以作为iPhone App数据删除恢复的来源。
(完)
[手机取证] Apple Watch取证初探的更多相关文章
- [手机取证] Apple正在行动起来封堵后门?
在被爆出“后门”事件后,苹果似乎已经开始了自己的行动,在最新发布的iOS 8 Beta5版本中,iOS取证专家Zdziarski提及的众多后台服务中的packet sniffer服务已经被禁用,体现出 ...
- The Art of Memory Forensics-Windows取证(Virut样本取证)
1.前言 The Art of Memory Forensics真是一本很棒的书籍,其中使用volatility对内存进行分析的描述可以辅助我们对更高级类的木马进行分析和取证,这里对书中的命令进行了笔 ...
- kali linux之取证
取证简介: CSI:物理取证 指纹.DNA.弹道.血迹 无力取证的理论基础是物质交换原则 数字取证/计算机取证 智能设备.计算机.手机平板.loT.有线及无线信道.数据存储 事件响应调查------黑 ...
- CTF取证方法大汇总,建议收藏!
站在巨人的肩头才会看见更远的世界,这是一篇来自技术牛人的神总结,运用多年实战经验总结的CTF取证方法,全面细致,通俗易懂,掌握了这个技能定会让你在CTF路上少走很多弯路,不看真的会后悔! 本篇文章大约 ...
- 内存取证工具-volatility、foremost
内存取证 1. 内存取证工具volatility 猜测dump文件的profile值 root@kali:~/CTF# volatility -f mem.vmem imageinfo Volatil ...
- iPhone手机安全指南
摘要:iPhone手机安全指南 - 1.iPhone解锁使用指纹:2.启用“查找我的iPhone”功能:3.Apple ID启用两步验证:4.修改SIM卡PIN码.5.iPhone被盗或丢失后,登录i ...
- iOS中远程推送实现—在Apple的生产环境上测试Push Notifications功能
1.在“Provisioning Profiles”中点击“Add”按钮. 2.在“What type of provisioning profile do you need?”页面中选择“Distr ...
- Keli Linux与网络安全(2)——初探Keli
Kali是BackTrack的升级换代产品,按照官方网站的定义,Kali Linux是一个高级渗透测试和安全审计Linux发行版.作为使用者,我简单的把它理解为,一个特殊的Linux发行版,集成了精心 ...
- 装B技能GET起来!Apple Pay你会用了吗?
科技圈儿有一个自带光环的品牌 它每次一有任何动静 不用宣传 也不用刻意营销 消息还是能传天下 2月18日 你敢说你的朋友圈儿没有被下面这个词儿刷屏? Apple Pay 这不,我就跟着凑凑热闹,开个小 ...
随机推荐
- JUCE 界面库显示中文乱码问题
JUCE 界面库显示中文乱码问题 环境: Windows7 64位 旗舰版 Visual Studio Ultimate 2012 JUCE 4.1 问题描述: 直接使用juce::String存储中 ...
- iOS 动态下载系统提供的中文字体
使用系统提供的中文字体,既可避免版权问题,又可以减小应用体积 #pragma mark - 判断字体是否已经被下载 - (BOOL)isFontDownLoaded:(NSString *)fontN ...
- github最简单的操作方法
其实,说实话,到目前为止,我还没有研究透那些gitbush上面的命令,所以,往github上面上传自己的文件,我采用最简单的操作方式.嘻嘻.下面,将为大家讲述一下. 首先,要在github上面注册新用 ...
- myeclipse里的调试快捷键
好多时候在调试代码时,有的时候只会用F5,其他的快捷键却一概不知.今天百度查了一下其他快捷键调试的作用,总结如下 F5 (setp into ): 跳入当前执行的方法中 F6 (step over): ...
- UICollectionViewCell选中高亮状态和UIButton的高亮状态和选中状态
UICollectionViewCell选中高亮状态 //设置点击高亮和非高亮效果! - (BOOL)collectionView:(UICollectionView *)collectionView ...
- Flex 监听浏览器关闭
在creationComplete的事件中,添加如下: if(ExternalInterface.available)//外部接口是否可用 { var js:String= " ...
- ie浏览器 jsp中链接参数为中文的处理
在js中,使用 encodeURIComponent(encodeURIComponent("警情抽查"))来处理参数,例如: mini.get("khxmdm" ...
- UART
一.协议部分: 协议部分转自:http://www.s8052.com/index.htm 串行通信的传送方向通常有三种: 1.为单工,只允许数据向一个方向传送: 2.半双工,允许数据向两个方向中的任 ...
- 王爽<汇编语言>实验十
实验十 3.数值显示(以下程序附带测试程序) ;名称: dtoc ;功能: 将dword型数据转变为表示十进制数的字符串,字符串以0为结尾 ;参数: (ax)=dword型数据低字 ; (dx)=dw ...
- 在laravel下關於blade模板的嘗試
Blade模板 關於模板繼承和分區段 @section和@yield的實驗 ①關於@section...@show嘗試 測試1 {{--appV2test.blade.php--}} <html ...