使用图数据库进行安卓智能手机上的证据关联
摘要
如今,智能手机已成为日常生活中流行的通信设备,是人们之间进行通信的主要工具。此外,智能手机还保存了个人的各种活动信息,其中包括许多隐私信息,如通讯录、短信消息、图片、视频、通话记录、位置日志、网页浏览历史、电子邮件等等。这些文档反映了个人的行为、活动或私人活动的信息,如果有足够的合法证据证明某人有罪,则这些信息在法庭上可作为有价值的数字证据。因此,移动设备也是一个重要的渠道和分析工具,对智能手机中存储的内容和数据关联性进行调查,是调查人员从中获取证据的重要手段。本文介绍了从安卓智能手机中获取数字证据所使用的方法和技术,并指出了从这类智能手机中获取数字证据在法律和技术方面所面临的困难。
关键词 :证据关联 · Mobile取证 · Graph数据库
1 引言
从智能手机中收集和分析证据对于调查至关重要,因为它提供了有价值的信息 [1,8]。然而,调查人员目前仍以手动方式从智能手机中进行信息收集。此外,调查人员在智能手机上看到的信息是离散的。需要对所收集的信息进行关联和建立关系,以形成有效证据。而且,智能手机有多种类型,格式各异,难以确定调查过程中所需的具体信息,因为它无法展示信息在活动链条中的流程。因此,找出手机中各条信息之间的关系是一项具有挑战性的任务。
图数据库用于在链接图中存储和可视化信息。本文中,作者构建了一个图数据库,用于收集和分析来自安卓设备的信息,以帮助调查人员通过连接信息片段,将声音和感官证据关联起来,以揭示非法行为。输入数据是从安卓设备内的应用程序中收集的信息集合,这些设备中的对象参与了非法行为,并在实施非法行为过程中被用作通信媒介。
为了实现这一目标,作者需要回答以下问题:如何从安卓设备中提取信息,以及如何将原始提取的信息组织并可视化为图数据库。随后,调查人员可通过查询证据图数据库来发现新信息,从而加速调查过程,并帮助调查人员全面掌握情况,减少其工作量。
本文的组织结构如下:下一节我们将回顾数字移动取证领域以及使用图数据库进行复杂安全场景建模的相关研究。第三节介绍从安卓设备中提取信息的过程。第四节描述数据合成过程。第五节介绍证据图数据库的构建。第六节展示如何利用我们建模的图进行证据提取。第七节对全文进行总结。
2 相关工作
安卓取证是当今一个重要的话题,因为安卓及其工具的普及[6,7]。图数据库是一项具有悠久传统的历史的研究,它被应用于语义网、社交网络等多个领域[4]。近年来,随着产业调研的发展,图数据库被用于表达证据信息之间的关系。
2.1 证据收集与合成过程
对移动设备的调查已进行很长时间[3]。收集和综合证据的过程包括信息从移动设备中提取数据,然后将所有收集到的数据合成为图数据库(见图1)。在这些研究中[1–7],作者对移动调查领域进行了非常深入的综述,并涵盖了该领域的主内容。在本节中,我们从这些文章中考察了三项相关工作[8,10,11]。
在[8]中,作者重点研究了在智能手机上广泛使用的三种社交网络应用程序(Facebook、Twitter和MySpace)的证据管理分析。测试在三种流行的智能手机上进行:BlackBerry手机、iPhone手机和安卓设备。测试过程包括在每台设备上安装社交网络应用程序,检查用户常见行为,并对在比利时手动收集的各套镜像进行证据分析。该分析旨在检测这些应用程序收集的行为是否可存储在设备的内部存储器中。如果可以,则可通过设备逻辑镜像获取并提取用户特征和位置。结果表明,在BlackBerry手机中未发现任何痕迹,但在iPhone手机和安卓手机中保存了大量有价值的信息,调查人员可将其恢复。
最近,有一个项目致力于使用图数据库实现通用的ICT风险模型[9]。在这项工作中,作者通过多个步骤对APT威胁进行建模,并构建一个图来表示攻击过程。通过查询该图,作者可以找到积极信号,从而判断正在发生APT攻击。
在[10]中,作者提出了一种用于移动设备在线内存取证自动分析的方法。作者研究了设备RAM的行为,该分析在实时通信应用所收集证据的分析方面非常有用。多种具有不同参数的媒体场景得到了仔细分析。测试结果表明,消息发出方手机在消息来源为外部时具有一致性更高。在作者的实验中,从发出消息中获取证据的收集率达到100%。对于来自外部的消息,根据在不同情况下考虑的各种参数,收集百分比在75.6%到100%之间变化。因此,在实际情况中,利益相关者可以依次发送消息并持续发送多条消息1,证据收集方能够捕获支持高级研究普查的大部分数据。
在[11]中,作者调查了一个特定示例,即故意恶意激活电话设备以进行间谍活动。具体而言,恶意代码可以自动激活摄像头,进而偷偷开启麦克风或实施窃听。
3 从安卓设备进行信息提取
所有安卓应用的数据库存储默认位于内部存储器的
/data/application_name/databases
目录中。然而,根据需求,应用程序也可以将数据保存在外部存储的
/SDCard
目录。此外,数据还可以从台式计算机进行保存,而无需根权限权限通常位于
/SDCard
。这两个目录的区别在于,“
/data/data/applicationname/databases
”目录是私有的,受安卓系统保护,只有根权限和所有者才能访问。相比之下,
/SDCard
目录是外部数据存储,其中的数据不受保护,因此普通用户可以访问、编辑或删除。因此,普通用户无法知道短信消息、通讯录、通话记录等数据库是如何存储的,他/她只能通过自己的应用程序查看数据。
为了获得根权限,安卓用户需要对设备进行获取根权限操作。这可能导致用户获得最高权限,从而使安卓设备不再受到保护。因此,为了保护根权限,建议用户安装根权限管理应用以防止非法的根权限访问。此类应用中的流行代表是超级用户应用。在获得根权限后,安卓数据提取变得简单。数据提取有多种方法,在本文中我们介绍两种常用的方法:
- 使用文件管理器应用并为其分配根权限。通过此应用,我们可以将数据保存到SD卡,然后复制到台式计算机。
-
使用安卓调试桥(ADB)。这是一种命令行工具,可实现安卓设备与计算机之间的通信。该工具可在
<sdk>/platform-tools/中找到,或下载ADB驱动。安装ADB后,为了与安卓设备通信,必须在安卓设备上启用ADB调试模式,并为ADB分配根权限。以下两个命令展示了如何从安卓设备导出彩信、短信数据并复制到台式计算机:
adb shell su root dd if=/data/data/com.android.providers.telephony/databases/mmssms.db of=/sdcard/mmssms.db
adb pull /Sdcard/mmssms.db C:/WorkStarion/sms.db
命令
adb shell su root
使用根权限访问手机;
dd if=<path to source files> of=<path to destination file>
命令是数据复制命令;命令
adb pull
是将数据从设备拉取到台式计算机的命令。对于彩信/短信应用程序,其包名为
com.androidproviders.telephony
,并使用
/databases
目录保存数据库文件
mmssms.db
。其他数据库如通话日志、联系人、电子邮件可以以类似方式提取。
获取根权限的设备允许调查人员查询安卓设备中的所有信息。然而,获取根权限设备的副作用可能导致设备变砖或遭受恶意软件攻击。此外,获取根权限会导致设备保修失效,更重要的是会影响设备的合法性。因为此处提到的设备是作为证据存在的,如果调查人员有权获取根权限并对设备进行过多干预,将导致证据失去其合法性。因此,我们必须在获取根权限前仔细考虑,并以非常谨慎和周全的方式进行操作。
另一种间接的数据提取方式对设备造成的副作用较小,即使用第三方应用程序进行数据提取。该应用程序类似于普通应用程序,安装在设备上并请求足够的权限用于提取调查所需的数据,例如短信读取权限、通话记录访问权限、通讯录读取权限。此类应用程序的典型代表是专用于取证活动的AFLogical OSE。该应用程序可将通话记录、联系人和短信提取为csv格式并保存到
/Sdcard
目录。用户可以使用
adb pull
命令将数据从手机保存到台式计算机。
4 移动设备中的数据合成
从移动设备中提取数据后,我们开始对数据进行整合。为了跟踪一段时间内活动的进展及其关系,我们将提取的信息整合成一个公共数据库(见图1)。这些信息包括多种类型,如短信消息、通话记录、电子邮件、位置等。
4.1 通话记录
成功提取通话记录后,我们收集了多台移动设备的通话记录。为了区分它们,必须使用 Linux awk 命令为每条通话记录添加其对应的电话号码,因为在通话记录中所有者号码并未体现。
awk 'BEGIN{FS = OFS = ",", }{$(NF+1) = NR==1 ? "本机号码" : "932870887 和 963270532"} 1' CallLog.csv > CallLog1.csv
4.2 短信日志
与通话记录类似,我们需要将本机号码添加到每个短信数据库中。因为在短信数据库中不会显示本机号码。我们使用了 Linux 中的 awk 命令:
awk 'BEGIN{FS = OFS = ",", }{$(NF+1) = NR==1 ? "本机号码" : "932870887"} 1' 短信.csv > SMS1.csv
不同 Android 版本之间的短信数据库结构存在许多差异。因此,我们仅从以下列中提取信息:地址、日期、类型、正文和号码,然后使用 awk 命令将其合成为公共表:
awk 'FNR==1 && NR!=1 {next;}{print}' 短信*.csv > AllSMS.csv
5 构建证据图数据库
获得合成数据库后,我们将其转换为图数据库以进行可视化。在本研究中,我们使用 Neo4j 作为平台来展示该数据库。
5.1 GrapCall 通话记录和短信
为了创建通话记录的关系表,我们使用 Neo4j 命令将 AllCallLogs.csv 中的数据导入图数据库:
LOAD CSV FROM 'file:///home/dmtuantv/aflogical-data/AllCallLogs.csv' AS re
CREATE (r:relation {
号码1: re[1],
date: re[2],
duration: re[3],
type: re[4],
姓名1: re[6],
号码2: re[9]
})
RETURN r;
类似地,创建短信日志的关系表:
LOAD CSV FROM 'file:///home/dmtuantv/PhoneData/AllSMS.csv' AS sms
CREATE (n:sms {
address: sms[0],
date: sms[1],
type: sms[2],
body: sms[3],
number_own: sms[4]
})
RETURN n;
5.2 操作图数据库
创建图数据库后,我们使用一些 Neo4j 查询来优化表格,以获取更有用的数据,例如:(见图2)
-
此命令创建一个号码表,其中包含 number1 列中的所有号码:
cypher MATCH (r:relation) WITH DISTINCT r.号码1 AS num CREATE (n:numbers 号码: num) RETURN n; -
此命令将本机号码插入到号码表中:
cypher MATCH (r:sms) WITH DISTINCT r.number_own AS num CREATE (n:numbersms 号码: num) RETURN n; -
此命令创建 nsms 表,用于省略地址与本机号码之间的重复号码:
cypher MATCH (n:numbersms) WITH DISTINCT n.number AS num CREATE (m:nsms 号码: num) RETURN m; -
我们可以从 sms 表和 nsms 表创建发送关系。此命令创建所有发送过短信的号码的发送关系:
cypher MATCH (n:nsms), (r:sms), (n1:nsms) WHERE n.number = r.address AND n1.number = r.number_own AND r.type = '1' CREATE (n)-[:SEND {日期: r.date, 正文: r.body}]->(n1) -
此命令创建所有号码的接收关系:
cypher MATCH (n:nsms), (r:sms), (n1:nsms) WHERE n.number = r.address AND n1.number = r.number_own AND r.type = '2' CREATE (n)<-[:SEND {日期: r.date, 正文: r.body}]-(n1)
6 证据图提取
将信息组织成图数据库后(见图3),我们便可以在其上开始查找信息,例如:
-
查找 2015年5月20日 的信息。我们必须将日期格式从
dd/mm/yyyy转换为时间戳格式:
cypher MATCH ()-[r]->() WHERE r.date='14454.*' RETURN r; -
过滤重复的呼入和呼出电话:
cypher MATCH (n:numbers), (r:relation), (n1:targetNumber) WHERE n.号码 = r.号码1 AND n1.号码 = r.号码2 AND r.类型 = '3' CREATE (n)-[:Missed {日期: r.日期}]->(n1) RETURN n, n1;
7 结论与未来工作
本文介绍了使用编程方法追踪安卓设备上的证据以及利用图数据库进行证据表示的调查与技术。其创新之处在于,作者通过图数据库将信息片段进行关联,从而展示证据。这种直观表达将有助于调查过程,特别是使专业调查人员能够更深入地探索与其案件相关的细节。
总之,文章《使用图数据库进行安卓智能手机上的证据关联》已实现了其目标,即信息提取并将数据以图数据库形式呈现,同时提供了用于证据发现的示例查询。我们相信,该论文的贡献将有助于节省调查人员调查的时间。
由于操作系统的持续发展、移动操作系统的多样性以及用户(尤其是故意犯罪的用户)的警惕性不断提高,智能手机上的证据搜寻正变得越来越困难。此外,制造商开始通过加密智能手机数据来增强系统安全,并且不提供应警方请求解密的机制。这增加了移动设备上证据调查的复杂性。这些挑战将成为移动设备证据搜寻中的重要课题,并将成为研究人员感兴趣的课题。
528

被折叠的 条评论
为什么被折叠?



