一、引言
现代社会,手机已经成为人们日常生活中不可或缺的设备,尤其是配备了高智能操作系统的手机越来越受到人们的青睐。智能手机可以像个人电脑一样支持用户自行安装软件、游戏等第三方服务商提供的软件和程序,功能越来越强大。但与此同时,利用智能手机进行的犯罪活动也越来越多,面对这种现状,智能手机取证成为打击这类犯罪的重要手段。本文旨在对Android智能手机的逻辑取证方法进行研究和探讨,在简述Android手机的最高权限的获取后,重点详细描述逻辑取证的具体操作步骤。
二、逻辑分析与物理分析
逻辑分析是在当前文件目录下寻找相关证据,不涉及已删除的信息参考文献[1]。其逻辑分析的环境结构为C/S模式。物理分析是指从镜像文件中寻找并恢复删除的数据,包括各种文档和图像。本文注重分析逻辑分析问题。
三、逻辑分析方法
(一)Root
1.Root 原理
系统修改刷机root
系统修改刷机root原理是:让手机进入恢复模式(Recovery Mode),又称刷机模式,这个时候可以使用系统镜像对手机系统进行重新安装。于是,我们只要使用被修改过的系统,即系统中的权限已为root(最高权限),进行系统恢复,即可达到root的效果。
系统漏洞root
系统漏洞root原理是:使用系统中存在的漏洞,达到root的目的。比如,之前的setuid漏洞,adb连接漏洞等。使用SuperOneClick,Z4Root,GingerBreak和zergRush等软件可以针对这些漏洞进行root参考文献[2]。因为过程视软件操作方法不同,原理相同,所以在此就不再赘述。
2.Root作用
一款android智能手机root后,可以做到:
(1)查看、修改、删除系统文件。
(2)删除系统自带软件。
(3)查看系统,软件内部数据库。
(4)安装可以对系统修改的软件。
以上几点,都是需要root的环境下才可做到。本文主要使用第3项功能。
(二)Adb
什么是adb?
Adb——Android 调试桥是具有多种用途的工具,随Android SDK附带安装。该工具可以帮助管理设备的状态。
(三)逻辑分析取证之adb文件获取
1.取证工具
本文使用的是宇龙公司推出的coolpad 7260+智能手机,操作系统版本为Android 2.3.5,将对它进行逻辑分析取证,工具主要为Android SDK,取证之前手机已root完毕。
2.连接设备
在个人PC上安装Android USB驱动,开启手机上的USB调试模式,然后通过USB数据线连接手机和PC,在PC的cmd命令显示符下,输入adb devices来验证设备连接状态(见图2)
3.文件获取(需要root支持)
从手机中获取程序相关的信息,用户的一切资料都存在于/data/data中各个文件夹中,可以通过命令adb shell ls /data/data查看目录结构,每个文件夹对应一个程序。
由于软件种类繁多,且数据库文件名均与软件名有关,大同小异,故在此不再赘述。
获取方法:进入cmd中,按以下命令按条输入:
得到结果(见图3),这时候qq用于存放用户资料的数据库便存入D:盘中。
4.逻辑分析取证之SQLite数据取证
取得db数据库后,便可以使用SQLite数据库查看软件查看数据库内容参考文献[3]。以下为最常见的软件示例。
在Com.android.providers.contacts/databases/contact2.db的calls表中,存放着用户的通话记录
四、结束语
本文就Android逻辑分析取证的原理和方法进行了探讨,详细分析了如何将手机获取最高权限(root),逻辑分析取证的方法和步骤,包括取证用的工具和软件,如何与PC端进行连接,如何使用Adb进行文件获取,并以典型的几款软件为例进行了详尽的取证流程演示及分析。在宇龙 Coolpad 7260+手机上的实验表明,本文的逻辑取证方法能够有效寻找到手机证据