macOS/iOS交互数据库深度解析:interactionC.db与APOLLO模块技术更新

本文深入探讨了macOS/iOS系统中CoreDuet组件的interactionC.db数据库结构及其在数字取证中的应用,详细介绍了APOLLO模块的技术更新,包括新增查询功能、附件关联分析和联系人交互追踪等关键技术特性。

社交隔离仍在互动!macOS/iOS CoreDuet interactionC.db APOLLO模块全新升级

2020年6月21日 · iOS, APOLLO, macOS, 分析

interactionC.db数据库确实没有其犯罪伙伴knowledgeC.db那样受到广泛关注。但我认为它具有相当大的调查潜力。我之前在博客中曾写过相关文章,但在此我想给予更多关注。

这个周末我更新了APOLLO模块,增加了更多上下文支持,并改善了与旧版iOS的向后兼容性。该数据库也随10.15版本引入了macOS端。

我为该数据库的ZKEYWORDS表添加了新查询。该表似乎捕获了各种日历(com.apple.mobilecal)事件中包含的关键词。看起来只选择了某些特定事件,因为并非我所有的日历事件在此表中都有关键词。

完整尺寸图片

主要的interactionsC.db查询有许多新更新,包括附件和发件人/收件人关联。总的来说,该数据库跟踪"最近"的联系人互动。例如,我在几天前从iPhone复制的iOS数据库上使用此查询,显示约28,000个条目,一直追溯到今年1月,超过6个月!

下面的截图显示了Heather Mahalik与我之间的Messages(com.apple.MobileSMS)对话。模糊处理的项目是我们的电话号码。GUID是我们的联系人ID,这些可以与iOS通讯录数据库中的信息关联。为什么某些收件人信息为空,我不确定。我滚动查看了我们的对话历史记录,时间戳完全准确。此对话的内容可以(且应该)与Messages数据库(sms.db)关联。

完整尺寸图片

这些数据不仅适用于Messages,可能还包括其他应用程序包ID。我在数据中看到的一些包括:

  • com.apple.InCallService - 电话呼叫
  • com.apple.MobileSMS - 消息
  • com.apple.Preferences - 设置
  • com.apple.ScreenshotServicesService - 截图
  • com.apple.mobilecal - 日历
  • com.apple.mobilemail - 邮件
  • com.apple.mobilesafari - Safari
  • com.apple.mobileslideshow - 照片

联系人互动与附件

再举一个例子,让我们看看照片应用(com.apple.mobileslideshow)的一些互动。并非每个互动都有与之关联的附件。下面的截图包含来自此设备的一些AirDrop活动。一些图像是从照片应用本身AirDrop的,而一张图像是从Messages应用程序内AirDrop的,如目标包ID列所示。它还显示了发送对象的联系信息 - 很有帮助!

这些附件中的一些在UTI列中有关联的类型(HEIC/PNG),另一个有关联的附件ID,以十六进制显示(0xDCCB49C2FC74461EAD90DAB0C537DBF7)。这是图像UUID的十六进制表示。似乎并非每个图像都有此附件ID。

完整尺寸图片

此图像UUID可以在照片数据库中搜索,如下所示,以确定具体是哪张图像被AirDrop。

完整尺寸图片

除了我之前在"AirDropping some Knowledge"中强调的一些统一日志外,这可能是另一个值得关注的项目。这是Elwood的手机在进行各种项目AirDrop后的样子。

完整尺寸图片

分离但未被遗忘的附件

似乎一些附件不再与ZINTERACTIONS表中的那些关联,但不一定从ZATTACHMENTS表中删除。这也有取证潜力。APOLLO不会提取这些,因为似乎没有与之关联的时间戳,但我强烈建议在调查时至少简要查看此表。

下面的示例显示了可能与联系人互动关联的不同类型的多个附件文件:

  • PDF
  • 图像(PNG、HEIC、JPG)
  • 联系人VCard
  • 文本
  • 归档文件
  • 电影
  • 文档

不幸的是,我们在这里失去了联系人上下文。但我们仍然可以找到有用的信息片段,如文本、文件类型、URL、图像UUID等。

完整尺寸图片

其他示例包括复制/粘贴的文本,或URL,如Google搜索链接或发送的YouTube视频。

完整尺寸图片

关于账户和收件人计数的说明

邮件(com.apple.mobilemail)的另一个示例显示了ACCOUNT列。此GUID可用于将互动与账户数据库(Accounts3.sqlite/Accounts4.sqlite)中的特定电子邮件账户关联。

收件人计数列可能有些误导。我标记为"收件人计数"的列是互动中的收件人数量。此示例显示2,但这不包括我自己。这是Heather、Lee、Phil和我之间的电子邮件线程示例。我原以为此列中至少会有3,但情况似乎并非如此。这是一个不要假设的好例子!

传入/传出发件人/收件人计数列更具误导性 - 我还没有完全弄清楚这些,但我认为这可能是互动总数与这些互动上的"收件人"数量。

完整尺寸图片

InteractionsC.db确实可以是一个有用的数据库,特别是当它与APOLLO提取的所有其他数据一起使用时 - 上下文可能就是一切!

标签: interactionC.db, APOLLO, sqlite, 联系人, knowledgeC, 照片, airdrop

comments powered by Disqus
使用 Hugo 构建
主题 StackJimmy 设计