Tag: 取证

iOS取证技巧:不进行完全备份就拉数据库

在上一篇文章中,我写了关于滥用iOS DeveloperImage中的某些功能的信息,包括在监狱中的设备上启动带有自定义环境变量的应用程序。 适用于iOS的Xcode乐器:撤消和滥用 仪器服务器 medium.com 老实说,我的动机是寻找沙盒逻辑问题,但失败了。 但是至少我发现这个技巧可以滥用某些功能来提取SQLite数据库(这是常见的取证目标),而无需进行全新的完整备份。 这种情况下需要屏幕解锁和受信任的USB连接。 要运行实验,您需要使用以下工具: https://github.com/libimobiledevice/libimobiledevice https://github.com/libimobiledevice/ideviceinstaller https://github.com/emonti/afcclient(可选。如果您不想自己在libimobiledevice上编码,请使用此功能) 当前iOS上内置的SQLite支持调试选项:如果设置了SQLITE_SQLLOG_DIR环境,则每个数据库在给定目录中都有一个副本,每个sql查询也以纯文本格式。 迈克尔·蔡(Michael Tsai)–博客– SQLITE_ENABLE_SQLLOG 该文件包含实验性代码,用于记录来自实时SQLite应用程序的数据,这些数据可能对离线使用非常有用… mjtsai.com SQLite:文档 ** 2012年11月26日** **作者拒绝对此源代码进行版权保护。 代替**法律声明,这里是…… www.sqlite.org 我们的实验从越狱的设备开始。 只需使用SQLITE_SQLLOG_DIR指向其有权写入的地方启动Gmail应用程序即可: 修改上一篇文章中的脚本,向环境添加新密钥: const env = ObjC.classes.NSMutableDictionary.alloc()。init(); env.setObject_forKey_( ObjC.classes.NSString.stringWithString _(’/ private / var / mobile / Containers / Data / Application / {THE_ACTUAL_UUID_ON_YOUR_DEVICE} / tmp’), ObjC.classes.NSString.stringWithString _(’SQLITE_SQLLOG_DIR’)); 这是它生成的目录: 您好:/ private / […]