透过 Sysdiagnose 窥见不一样的iOS
这一次,终于可以摆脱对jailbreak的依赖去提取iOS系统数据!!!
在提取iOS应用数据时,可以不依赖jailbreak
,直接通过iTunes备份等手段获取数据。但是,同样的方法并不适用于iOS系统数据的提取。这时候jailbreak
似乎成了唯一的选择,随之而来的就是iOS系统攻与守的死循环。
情况虽是这个样子,但总得支棱起来呀!
通过几天的努力,终于从iOS开发者社区找到了突破口 —— Sysdiagnose。
Sysdiagnose 经常被用于获取app的电量测试。说起电量测试,让我想起了最近在研究的另一个数据库CurrentPowerlog.PLSQL
,但是后者仅能通过jailbreak
提取。这两者之间会不会有什么联系?
1. 如何使用Sysdiagnose
根据文档说明:

但尴尬的是,按照文档操作下来,这个iphone SE并不Work。。
看来还是盘得不够圆润。几经尝试验证,操作步骤如下:
- 同时按住电源键,音量上下键(会有震动反馈)
- 等大概10s(文档说等十分钟。。)
- 打开
设置 > 隐私 > 分析 > 分析数据
(会看到有Sysdiagnose 开头的文件) - 点击文件并点击在右上方的分享可以取出文件
寥寥几步, 似乎很简单嘛 。。
不过以上查看文件的方式只适用于iOS 12.x 噢。。
对于iOS 11.x 或更低的版本可以在 隐私 > 诊断与用量 > 诊断与用量数据
中看到文件。
对于更低的版本会有一个问题: 可能一波操作下来,打开一看 ——— 空空如也 ~~
此时,心中默念 I believe .. 即可(只要在操作时有震动反馈就会生成日志)
2. 怎么提取文件
正如先前所说,对于高版本系统可以直接文件页面点击右上角的分析按钮。
对于低版本可以通过iTools
, PP助手
。在工具箱 > 崩溃日志
下也可以看到该文件;
什么, 这操作太花里胡哨 !!!
还有更骚的操作!!
还可以通过iTuns
拿到文件,具体步骤如下:
- 手机连到iTuns
- 点击
同步
(见下图) - 打开路径
C:\Users\<用户名>\AppData\Local\Packages\AppleInc.iTunes_<device_name>\LocalCache\Roaming\Apple Computer\Logs\CrashReporter\MobileDevice\<你>的 iPhone\DiagnosticLogs\sysdiagnose

最终, 得到了一个压缩包。

当文件解压开来,我就知道这事情不简单 …
3. 有哪些数据
3.1 资源管理器

3.2 文件系统数据

3.3 WiFi数据

这么详实的WiFi配置信息可以说很有诚意了。
ps: 有了这些数据似乎就可以实现通过wifi定位,获得手机的活动位置。
3.4 同步至iCloud中的WiFi信息

3.5 连接过的WiFi信息

3.6 设备参数

4. 惊喜总得放到最后嘛
powerlog_2019-02-15_17-26_920D23F8.PLSQL
这个文件的发现可以说是最大的惊喜了。细细比对下来,该文件与越狱后所提取到的CurrentPowerlog.PLSQL
内容居然 完 全 一 致。该数据库详细记录了当前设备在什么时间在做什么样的事情,处于于什么样的状态。
下面先看几个代表性的数据表:
4.1 每个应用在每个小时内在前台或者后台运行的时间

4.2 每个应用的安装-卸载时间

4.3 详细的应用使用记录

4.4 设备麦克风, 扬声器, 耳机使用记录

4.5 设备电话使用记录

当然,该数据库中记录的数据远远不止这些,这里就不一一赘述啦。。。
Sysdiagnose的发现,为iOS数据取证提供了新的途径。但这只是开端,前面还有更广阔的星辰大海。撒花~~~
注:以上所有数据的获取都不需要jailbreak。更过分的是,该方法适用于任意iOS版本(包括最新的iOS 12.1.4)。更夸张的是,在某些场景下,提取该数据甚至都不需要去解锁手机屏幕。