基于Android+SDK技术的Android智能手机取证系统
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Android
脑端显示的内容包括:获取到的手机中的短信数
据、通话记录数据、联系人数据。 1.2开发环境 系统开发使用包括:Windows 及以上Web服务器,jdk
7
XP,tomcat7.o
Update5以上版本开发
包;并使用可以在多种平台上撰写应用软件的面 向对象的程序设计语言Java;数据库运用最好的 关系数据库管理系统MySQL。 系统取证的工作流程如图2所示。
311.52
文献标志码:A
Forensic System of AndrOid Smart Phones Based
on
Android SDK
LIU Ho 胛91, (1.
ZHENG,in押2
School of Electronics Information Engineering,Shanghai Dianji University,Shanghai
3系统测试和分析
系统的测试主要使用了黑箱测试法。黑箱测 试中把系统看成一个不能打开的黑盒子,在不考 虑程序内部结构和内部特性的情况下,主要针对 软件界面和软件功能进行测试。若测试检查程序 错误,则在出现错误时辅助以自箱测试法进行错
万方数据
2015年第4期
刘
红,等:基于Android SDK技术的Android智能手机取证系统
表l获取数据测试表
Tab.1 Test table
示获取的手机中的短信、通话记录和联系人数据; 手机端功能包括:获取手机中的短信、通话记录、 联系人数据。与软件设计的预期目标一致。 (1)检测往来短信内容。手机端提交数据, 通过Android智能手机取证系统的PC端读取手 机中的短信数据,能够读取到短信的内容、接收短 信时间、接收状态,并能够查看到短信的详 情[1卜13]。图3给出了获取的短信测试结果。
2.2
用手机取证应用程序从Android手机取证 时,通过电脑端从上文中5个子目录数据库的文 件中获取数据。一旦获得了手机上的rOot的访问 权限,除应用程序开发者存储的数据外,I。intux内 核和Android栈也通过日志、程序调试以及以下4 种方法获得Android手机中的物理数据: (1)将所有NAND闪存上的分区全部进行转 储,包括数据及带外数据(Out
摘
要:开发了基于Android智能手机的取证系统。研究了手机取证系统的总体结构,完成了
联系人提取、短消息提取和通话记录提取等模块的功能设计,手机取证应用程序和电脑端接收数据 模型,实现了数据下载功能,实现了程序无需R00T就可对目标手机进行通讯录、短信息和通话记 录的下载工作。经测试该系统更方便、快捷和高效。 关键词:安卓;手机取证;信息提取;智能手机;短信 中图分类号:TP
can
mobile phones and short message service(SMS),and download the reeord. system is convenient,fast and efficient.
Test show that the
Key words:Android;phone forensics;information extraction;smart phone;short message
维护、易用性以及兼容性。 (1)可扩展性。作为Android智能手机的取 证软件,系统的设计充分考虑了系统的可扩展性, 设计时每一个模块都符合一定的配置标准并预留 了外接端口。 (2)易用性。系统尽量使用了用户熟悉的文 字和简单易懂的界面,针对可能出现的问题建立 了在线帮助,以方便用户对系统学习和掌握。 (3)安全性。由于该系统需要长期稳定运
of
Band,OOB)(优
2获取Android手机设备数据方案
2.1
先考虑); (2)对分区进行dd映像,这样做只获得数 据,不能获得00B; (3)使用tar命令对文件进行逻辑获取; (4)使用adb命令对文件进行逻辑获取。 为了获得取证手机的全部数据,可以将用户 数据分区通过nanddump全部进行转储。为了实 现nanddump,必须在ARM平台上将nanddump 进行编译。具体方案是使用Android的Native
作者简介:刘红(1978一),女,副教授,博士,主要研究方向为物联网运用,E_mail:liuhong@sdju.edu.cn.
万方数据
2015年第4期
刘
红,等:基于Android SDK技术的An出oid智能手机取证系统
245
放,开发者在开发安卓平台应用程序时可以更自 由,没有了很多束缚条件,破除了像苹果手机移动 操作系统IOS等只能添加屈指可数的固定软件的 阻碍;同时,与Windows Mobile、Symbian等厂商 不同,Android操作系统对开发人员提供的服务 都是免费的,这样可以节省开发成本。
图l智能手机取证系统架构图
Fig.1 Diagram of forensics system architecture of smart phones
行,用户在完成多种日常工作后,将不可避免地导 致意想不到的滥用和错误,这将影响系统的正常
万方数据
上
海
电
机
学
院
学报 获取Android手机数据的方法
2015年第4期
Development
Android手机存储数据方式 (1)内部存储。内部文件存储在应用程序
的/data/data子目录中,并将文件存储在内部存 储器上的app一和files子目录中。默认情况下,这 些文件只能被所属的应用程序读取,甚至手机的 拥有者也不允许查看这些文件的内容,除非拥有 root访问权限。
20 l 306,China;2.The
Third Researh Institute of MPS. Shanghai 20003 1,China)
Abstract:This paper develops
ture
a
forensics system for Android smartphone. The overall
Android SDK(Software Development
手机端应用程序主要用于获取手机中的短 信、通话记录、联系人等数据。该应用程序安装于 手机中,可以一键获取对短信、通讯录、通话记录 的查看和调用权限,而不需经过手机roOt,从而快 速、隐蔽地对手机实现控制。 电脑端适配程序在电脑上开启一个与手机相
运行。因此,在系统的设计过程中,假设了各种操 作和滥用带来的后果,采取适当措施,以减少实际 使用中可能发生的灾难性的后果,以确保系统的 准确性。 (4)兼容性。系统的设计和开发采用了当前 流行并成熟的Android平台,且使用了可移植性 较高的Java语言以及Android SDK技术进行编 写,使得系统具有良好的兼容性。
(4)SQLite。SQI。ite是开发者使用的存储系 统具体类型的文件,如HTC Incredible手机中 data/data/com.andrioid.webkit子目录下有28 个SQLite数据库,其中5个子目录包括:①app— icons,用于网页图标的数据库;②app—cache,用 于Web应用数据库缓存的数据库;③app—geolo— cation,与全球定位系统(GPS)的位置和访问权限 相关的数据库;④app—databases,用于为网站提 供存储本地数据库的数据库;⑤databases,用于 浏览器和浏览器缓存的数据库。 (5)网络。访问网络上的存储和读取基于 web服务的数据,需要使用java.net和android. net软件包中的类。
第18卷第4期 2015年
上海电机学院学报
JOURNAL 0F SHANGHAI DIANJI UNIVERSITY
v01.18 No.4 2015
文章编号2095一0020(2015)04一0244—05
基于Android SDK技术的Android智能手机取证系统
刘
红1,
郑
健2
上海电机学院,电子信息学院,上海201306; 2.上海公安三所刑侦事 业部,上海200031)
Kit)是
连接的端口,用于接收手机中的信息;在电脑端界 面可显示出所有查找到的相关信息,快速保存到 指定路径的txt文件中,方便以后的信息查找。电
Android智能手机专属的软件开发工具包,是被软 件开发工程师用于为特定的软件包、软件框架、硬 件平台、操作系统等建立应用软件的开发工具的集 合。在Andorid智能手机系统中接受和发送短信都 通过调用Andorid系统内自带的服务文件[6。7]。 本文采用软件工程的理论以及设计方法,分 析了手机取证软件的实际需求,提出了手机取证 系统的总体架构,使用Java和Eclipse编写程序、
contact
struc—
of
a
mobile phone forensics system is studied. A
extracting module is completed,and These include models for Data download
record target
a
short message module and call
records extraction module designed.
a
smart phone forensics applications and function is realized.
computer terminal for receiving data.
The system implements the program without Rooting and
service(SMS)
伴随着通讯工具智能手机的不断推陈出新和 广泛应用,利用手机作为媒介从事的犯罪活动也 逐渐增多,因此,掌握犯罪证据、将犯罪嫌疑人绳
之以法,对犯罪嫌疑人的手机进行监控和取证就 有了很重要的作用和价值‘。“。 安卓手机系统平台对所有第三方软件完全开
收稿日期:2015一06一源自文库3
基金项目:上海高校选拔培养优秀青年教师科研专项基金项目资助(14Azl6);上海电机学院重点学科资助(13xYJ01)
bIIolen和string。
选项。
2.3
获取Android手机数据的保存方案 从Android手机中获取的数据可以有两种保
存方案: (1)通过abd端口转发(adb
port forward),
通过USB在Ubuntu工作站与Android终端设备 之间建立网络;不需要接人用于数据存储的设备, 直接在工作站上创建文件。 (2)将SD卡插人终端设备,完成挂载,在本 地保存数据。该方法会大大加快数据获取的 速度。 上述两种方法根据具体情况可以选择使用。
图2取证工作流程图
Fig.2
机应用程序,安装在犯罪份子的手机上;②电脑 端适配程序,是接收并保存手机中传输过来的所
1.3
Workflow chart of the forensics system
系统性能 该取证系统具有较好的安全性、可扩展性、易
有信息的电脑端服务平台。智能手机取证系统架 构如图l所示。
‘
(2)外部存储。外部存储在SD卡上的An— droid/data子目录下,SD卡一般挂载在mnt/sd—
card上。
Kit(NDK)来构建一个兼容的共享
程序库,或使用Linux安装一个交叉编译器,通 过修改源代码中的Makefile,指明交叉编译
(3)共享优先。共享优先文件存储在应用程 序的数据目录中的share—pref文件夹中,文件后 缀名为.xml。Android手机共享优先目录有5个 XML文件:com、android、phone preferences和 xml优先文件,所包含的优先数据类型有int、
247
误检测和修改‘8。1…。白箱测试是依据程序内部逻 辑结构相关信息设计或选择测试用例,对程序所 有逻辑路径进行测试。 用户通过手机端将数据提交到PC端,获取 Android手机中的短信、通话记录以及联系人。在系
统进行验收测试前,已经有36个系统功能上的错误 缺陷暴露了出来,这些错误和缺陷在暴露后均被修改 完成。在系统的验收测试中又出现了10个缺陷提 示,现在也都已修复好。测试情况如表1所示。 测试结果表明,该软件的PC端功能包括:显
SDK以及抽象数据类型(Abstract
Data
Type,ADT),开发了基于Android智能手机的取 证系统。该系统可以在不对目标手机解密的情况 下,完成对目标手机的通讯录、短信和通话等信息 的完全提取和下载工作,与其他手机取证软件[4。5] 相比更加方便、快捷、高效。
l手机取证系统原理
1.1
系统架构 智能手机取证系统分为两个主要部分:①手
脑端显示的内容包括:获取到的手机中的短信数
据、通话记录数据、联系人数据。 1.2开发环境 系统开发使用包括:Windows 及以上Web服务器,jdk
7
XP,tomcat7.o
Update5以上版本开发
包;并使用可以在多种平台上撰写应用软件的面 向对象的程序设计语言Java;数据库运用最好的 关系数据库管理系统MySQL。 系统取证的工作流程如图2所示。
311.52
文献标志码:A
Forensic System of AndrOid Smart Phones Based
on
Android SDK
LIU Ho 胛91, (1.
ZHENG,in押2
School of Electronics Information Engineering,Shanghai Dianji University,Shanghai
3系统测试和分析
系统的测试主要使用了黑箱测试法。黑箱测 试中把系统看成一个不能打开的黑盒子,在不考 虑程序内部结构和内部特性的情况下,主要针对 软件界面和软件功能进行测试。若测试检查程序 错误,则在出现错误时辅助以自箱测试法进行错
万方数据
2015年第4期
刘
红,等:基于Android SDK技术的Android智能手机取证系统
表l获取数据测试表
Tab.1 Test table
示获取的手机中的短信、通话记录和联系人数据; 手机端功能包括:获取手机中的短信、通话记录、 联系人数据。与软件设计的预期目标一致。 (1)检测往来短信内容。手机端提交数据, 通过Android智能手机取证系统的PC端读取手 机中的短信数据,能够读取到短信的内容、接收短 信时间、接收状态,并能够查看到短信的详 情[1卜13]。图3给出了获取的短信测试结果。
2.2
用手机取证应用程序从Android手机取证 时,通过电脑端从上文中5个子目录数据库的文 件中获取数据。一旦获得了手机上的rOot的访问 权限,除应用程序开发者存储的数据外,I。intux内 核和Android栈也通过日志、程序调试以及以下4 种方法获得Android手机中的物理数据: (1)将所有NAND闪存上的分区全部进行转 储,包括数据及带外数据(Out
摘
要:开发了基于Android智能手机的取证系统。研究了手机取证系统的总体结构,完成了
联系人提取、短消息提取和通话记录提取等模块的功能设计,手机取证应用程序和电脑端接收数据 模型,实现了数据下载功能,实现了程序无需R00T就可对目标手机进行通讯录、短信息和通话记 录的下载工作。经测试该系统更方便、快捷和高效。 关键词:安卓;手机取证;信息提取;智能手机;短信 中图分类号:TP
can
mobile phones and short message service(SMS),and download the reeord. system is convenient,fast and efficient.
Test show that the
Key words:Android;phone forensics;information extraction;smart phone;short message
维护、易用性以及兼容性。 (1)可扩展性。作为Android智能手机的取 证软件,系统的设计充分考虑了系统的可扩展性, 设计时每一个模块都符合一定的配置标准并预留 了外接端口。 (2)易用性。系统尽量使用了用户熟悉的文 字和简单易懂的界面,针对可能出现的问题建立 了在线帮助,以方便用户对系统学习和掌握。 (3)安全性。由于该系统需要长期稳定运
of
Band,OOB)(优
2获取Android手机设备数据方案
2.1
先考虑); (2)对分区进行dd映像,这样做只获得数 据,不能获得00B; (3)使用tar命令对文件进行逻辑获取; (4)使用adb命令对文件进行逻辑获取。 为了获得取证手机的全部数据,可以将用户 数据分区通过nanddump全部进行转储。为了实 现nanddump,必须在ARM平台上将nanddump 进行编译。具体方案是使用Android的Native
作者简介:刘红(1978一),女,副教授,博士,主要研究方向为物联网运用,E_mail:liuhong@sdju.edu.cn.
万方数据
2015年第4期
刘
红,等:基于Android SDK技术的An出oid智能手机取证系统
245
放,开发者在开发安卓平台应用程序时可以更自 由,没有了很多束缚条件,破除了像苹果手机移动 操作系统IOS等只能添加屈指可数的固定软件的 阻碍;同时,与Windows Mobile、Symbian等厂商 不同,Android操作系统对开发人员提供的服务 都是免费的,这样可以节省开发成本。
图l智能手机取证系统架构图
Fig.1 Diagram of forensics system architecture of smart phones
行,用户在完成多种日常工作后,将不可避免地导 致意想不到的滥用和错误,这将影响系统的正常
万方数据
上
海
电
机
学
院
学报 获取Android手机数据的方法
2015年第4期
Development
Android手机存储数据方式 (1)内部存储。内部文件存储在应用程序
的/data/data子目录中,并将文件存储在内部存 储器上的app一和files子目录中。默认情况下,这 些文件只能被所属的应用程序读取,甚至手机的 拥有者也不允许查看这些文件的内容,除非拥有 root访问权限。
20 l 306,China;2.The
Third Researh Institute of MPS. Shanghai 20003 1,China)
Abstract:This paper develops
ture
a
forensics system for Android smartphone. The overall
Android SDK(Software Development
手机端应用程序主要用于获取手机中的短 信、通话记录、联系人等数据。该应用程序安装于 手机中,可以一键获取对短信、通讯录、通话记录 的查看和调用权限,而不需经过手机roOt,从而快 速、隐蔽地对手机实现控制。 电脑端适配程序在电脑上开启一个与手机相
运行。因此,在系统的设计过程中,假设了各种操 作和滥用带来的后果,采取适当措施,以减少实际 使用中可能发生的灾难性的后果,以确保系统的 准确性。 (4)兼容性。系统的设计和开发采用了当前 流行并成熟的Android平台,且使用了可移植性 较高的Java语言以及Android SDK技术进行编 写,使得系统具有良好的兼容性。
(4)SQLite。SQI。ite是开发者使用的存储系 统具体类型的文件,如HTC Incredible手机中 data/data/com.andrioid.webkit子目录下有28 个SQLite数据库,其中5个子目录包括:①app— icons,用于网页图标的数据库;②app—cache,用 于Web应用数据库缓存的数据库;③app—geolo— cation,与全球定位系统(GPS)的位置和访问权限 相关的数据库;④app—databases,用于为网站提 供存储本地数据库的数据库;⑤databases,用于 浏览器和浏览器缓存的数据库。 (5)网络。访问网络上的存储和读取基于 web服务的数据,需要使用java.net和android. net软件包中的类。
第18卷第4期 2015年
上海电机学院学报
JOURNAL 0F SHANGHAI DIANJI UNIVERSITY
v01.18 No.4 2015
文章编号2095一0020(2015)04一0244—05
基于Android SDK技术的Android智能手机取证系统
刘
红1,
郑
健2
上海电机学院,电子信息学院,上海201306; 2.上海公安三所刑侦事 业部,上海200031)
Kit)是
连接的端口,用于接收手机中的信息;在电脑端界 面可显示出所有查找到的相关信息,快速保存到 指定路径的txt文件中,方便以后的信息查找。电
Android智能手机专属的软件开发工具包,是被软 件开发工程师用于为特定的软件包、软件框架、硬 件平台、操作系统等建立应用软件的开发工具的集 合。在Andorid智能手机系统中接受和发送短信都 通过调用Andorid系统内自带的服务文件[6。7]。 本文采用软件工程的理论以及设计方法,分 析了手机取证软件的实际需求,提出了手机取证 系统的总体架构,使用Java和Eclipse编写程序、
contact
struc—
of
a
mobile phone forensics system is studied. A
extracting module is completed,and These include models for Data download
record target
a
short message module and call
records extraction module designed.
a
smart phone forensics applications and function is realized.
computer terminal for receiving data.
The system implements the program without Rooting and
service(SMS)
伴随着通讯工具智能手机的不断推陈出新和 广泛应用,利用手机作为媒介从事的犯罪活动也 逐渐增多,因此,掌握犯罪证据、将犯罪嫌疑人绳
之以法,对犯罪嫌疑人的手机进行监控和取证就 有了很重要的作用和价值‘。“。 安卓手机系统平台对所有第三方软件完全开
收稿日期:2015一06一源自文库3
基金项目:上海高校选拔培养优秀青年教师科研专项基金项目资助(14Azl6);上海电机学院重点学科资助(13xYJ01)
bIIolen和string。
选项。
2.3
获取Android手机数据的保存方案 从Android手机中获取的数据可以有两种保
存方案: (1)通过abd端口转发(adb
port forward),
通过USB在Ubuntu工作站与Android终端设备 之间建立网络;不需要接人用于数据存储的设备, 直接在工作站上创建文件。 (2)将SD卡插人终端设备,完成挂载,在本 地保存数据。该方法会大大加快数据获取的 速度。 上述两种方法根据具体情况可以选择使用。
图2取证工作流程图
Fig.2
机应用程序,安装在犯罪份子的手机上;②电脑 端适配程序,是接收并保存手机中传输过来的所
1.3
Workflow chart of the forensics system
系统性能 该取证系统具有较好的安全性、可扩展性、易
有信息的电脑端服务平台。智能手机取证系统架 构如图l所示。
‘
(2)外部存储。外部存储在SD卡上的An— droid/data子目录下,SD卡一般挂载在mnt/sd—
card上。
Kit(NDK)来构建一个兼容的共享
程序库,或使用Linux安装一个交叉编译器,通 过修改源代码中的Makefile,指明交叉编译
(3)共享优先。共享优先文件存储在应用程 序的数据目录中的share—pref文件夹中,文件后 缀名为.xml。Android手机共享优先目录有5个 XML文件:com、android、phone preferences和 xml优先文件,所包含的优先数据类型有int、
247
误检测和修改‘8。1…。白箱测试是依据程序内部逻 辑结构相关信息设计或选择测试用例,对程序所 有逻辑路径进行测试。 用户通过手机端将数据提交到PC端,获取 Android手机中的短信、通话记录以及联系人。在系
统进行验收测试前,已经有36个系统功能上的错误 缺陷暴露了出来,这些错误和缺陷在暴露后均被修改 完成。在系统的验收测试中又出现了10个缺陷提 示,现在也都已修复好。测试情况如表1所示。 测试结果表明,该软件的PC端功能包括:显
SDK以及抽象数据类型(Abstract
Data
Type,ADT),开发了基于Android智能手机的取 证系统。该系统可以在不对目标手机解密的情况 下,完成对目标手机的通讯录、短信和通话等信息 的完全提取和下载工作,与其他手机取证软件[4。5] 相比更加方便、快捷、高效。
l手机取证系统原理
1.1
系统架构 智能手机取证系统分为两个主要部分:①手