基于adb调试的非root安卓手机取证技术研究

时间:2022-04-03 04:03:41

基于adb调试的非root安卓手机取证技术研究

摘要:安卓手机的取证技术主要包括在线和离线两种,但是都有各自局限性。该文提出了一种改良的基于adb调试的非root手机取证技术,折中离线和在线取证方法的优缺点,能够很好地满足实际安卓手机取证的需求。

关键词:安卓取证;adb备份

中图分类号:TP393 文献标识码:A 文章编号:1009-3044(2016)34-0035-02

随着移动通信技术的迅猛发展,智能终端设备已经成为人们必不可少的工具。智能终端设备类似于PC,具备独立的智能操作系统,可以由用户自行安装软件等第三方服务程序,通过第三方软件不断扩充终端的能力,并支持通过移动互联网接入,是一个功能强大,集通信、影视娱乐、存储为一体的综合性设备。其中Google公司推出的Android操作系统,由于其开源、免费等特点,使其迅速占领巨大的市场份额。

与此同时,利用安卓手机进行犯罪的行为也越来越多。例如通过浏览器、电子邮件、即时通信工具、短信等APP进行诈骗,性骚扰,涉黄涉毒交易等。 针对安卓手机的取证将能够有效地打击这类案件,通过对安卓手机、备份以及镜像的数据提取、保护和分析将能够获取破获案件所需要的重要线索。其中基础信息(通话记录、通讯录、短信、GPS等)、即时通信记录、邮件信息、浏览器的历史记录和书签都是线索的重要来源。

1安卓手机的取证技术

安卓取证技术从本质上分为在线取证和离线取证两类。

1.1 安卓在线取证技术

在线取证技术也叫逻辑全局取证技术 [1-3] ,通过adb调试器连接手机,访问手机的文件系统,实现对现有文件系统中文件的获取和数据解析。安卓操作系统的数据主要存储在/data/data/和/sdcard两个目录下,后者为数据共享区域,即可以直接通过adb命令进行访问,主要为音乐、视频、文档等多媒体文件,而/data/data/目录主要存储的是手机基础信息和所有第三方APP的数据,由于数据的重要性,该目录的访问需要ROOT权限。每一个APP的数据对应/data/data/目录下的一个文件夹,且每个问你件下都有一个名为database目录,该目录下存储的是SQLite数据库文件,如下表:

手机在线的状态有两种,一种是正常开机状态,此状态需要手机以USB调试的模式连接取证设备;另一种是Recovery模式,该模式下,可以挂载手机相应分区,然后连接取证设备。两种状态下都可以采用adb调试接口进行数据的查询和导出,但是在正常开机状态下需要手机具有root权限。在线取证存在一些问题主要表现为:

1) Recovery模式需要第三方具有分区挂载功能的Recovry包,对于大部分手机第三方Recovery包的获取难度很大。

2) 正常开机状态下,需要手机取得root权限,但是最新版的安卓系统和手机获取root权限的难度大,只有很少一部分能获取root权限。

3) 手机在线取证无法对手机已删除的数据进行删除恢复。

1.2 安卓离线取证技术

安卓离线取证技术以称为物理取证技术 [4-7] ,主要是针对安卓手机的备份文件或者物理镜像进行取证分析。通过对备份或者镜像文件的不同分区格式进行对应的文件系统解析,可以获取到安卓手机的原始数据。镜像文件可以获取安卓手机的全部原始数据,包括/data/data目录下的所有数据以及SD卡下的数据。备份文件(安卓4.0以后通过adb接口获取),由于软件的支持的程度不同,数据不完全,通讯录、通话记录等基础信息无法获取,另外有些第三方应用程序的数据无法获取,同时备份文件中的路径做了相应的变化,例如database缩写为db,需要一一对应。

安卓镜像的获取方式有三种:

1)硬件方式:通过jtag接口或者直接拆解存储芯片进行存储物理镜像的获取。

2)adb调试方式:在获得root权限的情况下,利用adb shell运行dd命令,对手机的各个分区做dd镜像文件。

3)recovery备份:依次进入“备份还原”、“选择备份格式”,执行“备份到外置卡”,获取对应分区的镜像文件[8]。

针对镜像文件的离线取证,可以对已经删除的文件进行删除恢复。

但是安卓手机离线取证技术同样存在一定的问题:镜像的获取条件比较苛刻,需要root权限、第三方recovery或者物理拆解,难度都很大,且存在一定的危险;adb备份的方式下,可取的数据有限。

2基于adb调试的非root取证技术

针对于一般在线取证和离线取证的一些问题,对基于adb备份的取证进行改良,从而能够较为方便的获取非root手机较多的可用数据。其基本流程如图1所示。

2.1基本信息的获取

在非root情况下,安装MobileData.apk,该程序具有通讯录、通话记录、短信获取权限。在手机上启动该软件利用安卓系统的API接口获取手机的基本信息,并生成格式化的MobileData.xml文件。利用adb的pull接口,将该文件导出到取证计算机,并进行解析即可获取基本信息。如图2所示,利用此方法获取非root手机oppo r7中通话记录数据。

2.2第三方应用程序数据获取

利用adb的backup命令进行备份,将无法获取到一些app的数据,主要原因为该版本的app不支持该命令,所以备份文件中不包含该app数据。但是相同app的低版本数据不受备份的限制,也就是安装低版本的app就可以进行备份操作。因此先将手机中app原来的版本进行备份保存,然后安装低版本的apk,安装完成之后对手机进行备份操作,备份完成之后再用备份保存的apk重新安装回去进行app还原。最后将该备份文件进行解析,进而获取该app的数据。如图3,利用该方法获取了非root手机oppo r7中6.2.3 版QQ的数据。

3 总 结

本文首先介绍了安卓在线取证和安卓离线取证技术,并在此基础上提出了改良的基于adb调试的非root取证技术,该技术能够很好地解决安卓手机无法root情况下的取证问题,同时也解决了硬件级别镜像取证操作难度大的问题。能够获取手机基础信息和第三方应用的信息,同时支持第三方应用数据的删除恢复。能够很好地为相关案件的侦破提供有力的取证技术支持。

参考文献:

[1] 殷联甫.计算机取证工具分析 [J]. 计算机系统应用, 2005, 14(8):88-90.

[2] 赵斌,屈会芳.面向安卓移动终端设备数据取证技术[J].济宁学院学报,2014,35(3):72:75.

[3] 周敏,龚箭.分布式计算机取证模型研究[J].微电子学与计算机 ,2012,29(2):40-43.

[4] 钤竺鳎钱桂琼,许榕生,等.计算机取证技术研究 [J].网络安全技术与应用,2003:32-35.

[5] 孙波.计算机取证方法关键问题研究[D].北京:中国科学院研究生院,2004.

[6]谭敏 ,胡晓龙 ,杨卫平.计算机取证概述[J].网络安全技术与应用 ,2006(12):75-77.

[7] 石惠东,李蒙,雷鸣.运用第三方recovery破解安卓手机屏幕锁[J].刑事技术,2015(40):327-329.

上一篇:基于微信公众平台的高校教学管理系统设计与实... 下一篇:网上支付的安全风险与对策研究