一种基于安卓的数据取证系统的制作方法

文档序号:6544799阅读:436来源:国知局
一种基于安卓的数据取证系统的制作方法
【专利摘要】本发明提出一种基于安卓的数据取证系统。包括虚拟接口单元、软件数据取证子系统和硬件数据取证子系统。虚拟接口单元,与终端的安卓系统的Linux内核连接,在安卓系统的应用程序框架层与Linux内核之间构成虚拟层,使用终端的安卓系统认为该虚拟层为终端的安卓系统的应用;软件数据取证子系统,获取终端软件数据;硬件数据取证子系统,获取终端的芯片硬件数据。
【专利说明】—种基于安卓的数据取证系统
【技术领域】
[0001]本发明属于数据取证【技术领域】,特别是一种基于安卓的数据取证系统。
【背景技术】
[0002]随着智能手机应用的普及,涉及移动终端的相关各类型案件层出不穷。对于移动终端证据的处理和分析,在司法鉴定、取证、侦查过程中也越来越迫切。同时,安卓(Android)系统是近些年快速兴起的一款手机操作系统。其用户覆盖度在2011年已经以27%的占比排在智能手机的第一位。Android系统的取证系统的需求迫在眉睫。
[0003]在现有技术中,已有的产品大都只能获取智能手机中的通讯录、短信记录等一部分信息,不能获取手机的硬件参数信息、手机系统信息、用户安装的程序信息以及用户上网所留下的地址记录信息,而这些信息对于公安机关破解案件又有着极为重要的作用。
[0004]举例,目前市场上主流的数据取证产品主要包括:xry/xact、CELLDEK以及Cellebrite UFED0下面对这些产品的基本结构、性能以及其实际存在的问题和缺点进行详细介绍:
[0005](I) xry/xact:这是瑞典Micro Systemation公司推出的一套工具,在手机取证界很有名。这套工具支持的手机型号大约700种,操作简单,支持数据线、红外、蓝牙传输,sim卡克隆,报告效果不错。可以通过其帮助文件查询所支持的手机型号、图片、数据传输方法、应关注的数据位置等,就像一个手机取证小百科。缺陷在于:不能获取手机的硬件参数;不支持获取手机系统本身的程序跟用户自己安装的程序信息(程序名、版本号等)以及获取用户上网所产生的历史记录;而且价格昂贵,约8-9万,每年升级费约2-3万,投入产出不成正比。
[0006](2) CELLDEK:是美国Logicube公司的研制的便携式手机取证箱,支持主流品牌的手机和PDA的提取。缺陷在于:对国产机支持程度差;不能获取手机的硬件参数;不支持获取手机系统本身的程序跟用户自己安装的程序信息(程序名、版本号等);不支持获取用户上网所留下的地址记录信息;价格不菲。
[0007](3)Cellebrite UFED:美国Cellebrite公司推出的UFED手机取证设备支持约1600款的手机,其中包括使用Palm、微软、黑莓和Symbian操作系统的型号,获取的重要数据,如电话本、照片、视频、音频、短信、通话记录、ESI与IMEI信息等。缺陷在于:不能获取手机的硬件参数;不支持获取手机系统本身的程序以及用户自己安装的程序信息(程序名、版本号等);不支持获取用户上网所留下的地址记录信息。

【发明内容】

[0008]本发明实施方式提出一种基于安卓的数据取证系统,以增加适应性。
[0009]本发明实施方式的技术方案如下:
[0010]一种基于安卓的数据取证系统,该数据取证系统与采用安卓系统的终端相连接,该数据取证系统包括虚拟接口单元、软件数据取证子系统和硬件数据取证子系统;[0011]虚拟接口单元,与所述终端的安卓系统的Linux内核连接,在所述安卓系统的应用程序框架层与所述Linux内核之间构成虚拟层,使用所述终端的安卓系统认为该虚拟层为所述终端的安卓系统的应用;
[0012]软件数据取证子系统,用于通过虚拟接口单元向所述终端的安卓系统的Linux内核发送软件数据获取命令,由所述终端的安卓系统的Linux内核基于该软件数据获取命令获取终端软件数据;并通过虚拟接口单元接收由终端的安卓系统的Linux内核所返回的终端软件数据;
[0013]硬件数据取证子系统,用于通过虚拟接口单元向终端的安卓系统的Linux内核发送硬件数据获取命令,由所述终端的安卓系统的Linux内核基于硬件数据获取命令提取终端芯片硬件数据;并通过虚拟接口单元接收由终端的安卓系统的Linux内核所返回的终端芯片硬件数据;
[0014]所述软件数据取证子系统还包括软件数据标识单元;
[0015]软件数据标识单元,用于生成唯一标识符,并将所述唯一标识符标识与所述终端软件数据相关联,以标识所述终端软件数据;
[0016]所述硬件数据取证子系统还包括硬件数据标识单元;
[0017]硬件数据标识单元,用于获取所述终端的硬件标识码,并将所述硬件标识码与所述终端芯片硬件数据相关联,以标识所述终端芯片硬件数据。
[0018]本发明的数据取证系统,通过虚拟接口单元直接与安卓系统的内核交互,不通过安卓系统的应用程序层或应用程序框架层,直接作用于安卓的Linux内核,不写入数据,只提取数据,完全符合公检法系统的取证、要求。
[0019]而且,本发明获取获取数据全面,可以获取安卓手机中的软件数据和硬件数据,覆盖全面;针对系统内已删除的短信等信息,可根据需要进行恢复。
[0020]还有,本发明支持多种型号。支持市场上多种Android操作系统的不同机型;匹配多种不同接口。系统针对不同数据线的不同接口进行相应设计,避免多种标准的接口带来的取证困难;内置多种驱动程序。可以和不同型号的机器进行连接和数据传输。
【专利附图】

【附图说明】
[0021]图1为本发明基于安卓的数据取证系统结构图。
[0022]图2为本发明数据取证系统的应用环境示意图。
[0023]图3为本发明软件数据取证子系统功能逻辑图。
[0024]图4为本发明硬件数据取证子系统功能逻辑图。
[0025]图5为通讯录数据提取示意图。
[0026]图6为短信数据提取示意图。
[0027]图7为通话记录数据提取示意图。
[0028]图8为SM卡信息数据提取示意图。
[0029]图9为所有程序信息数据提取示意图。
[0030]图10为网页浏览记录数据提取示意图。
[0031 ]图11为日程管理数据提取示意图。
[0032]图12为当前运行程序数据提取示意图。[0033]图13为硬件参数数据提取示意图。
[0034]图14为即时通讯软件记录数据提取示意图。
[0035]图15为提取过程的异常处理示意图。
【具体实施方式】
[0036]为使本发明的目的、技术方案和优点更加清楚,下面结合附图对本发明作进一步的详细描述。
[0037]本发明的取证系统包括软件数据取证子系统及硬件数据取证子系统。软件数据取证子系统主要提取手机中应用软件产生的数据,包括:通讯录,通话记录,彩信,短信,上网记录及几种主要的即时通讯软件的使用记录。硬件数据取证子系统主要提取手机芯片的数据,将手机芯片的数据按位进行复制。
[0038]本发明基于安卓(Android)的数据取证系统能够提取手机的软件数据及硬件数据,充分覆盖Android手机的全部数据,能够极大的帮助公安等实战部门获取手机中保存的电话簿、通话记录、来往短信、数码照片、各类用户文件等用户信息和数据,在可能的情况下恢复被删除的电话簿、通话记录、短信和各种文件以满足调查需要。
[0039]图1为本发明基于安卓的数据取证系统结构图。如图1所示,该数据取证系统与采用安卓系统的终端(比如,手机、平板电脑,等等)相连接,该数据取证系统包括虚拟接口单元、软件数据取证子系统和硬件数据取证子系统。数据取证系统可以安装在PC等设备上。
[0040]虚拟接口单元,与终端的安卓系统的Linux内核连接,在安卓系统的应用程序框架层与所述Linux内核之间构成虚拟层,使用所述终端的安卓系统认为该虚拟层为所述终端的安卓系统的应用;
[0041]软件数据取证子系统,用于通过虚拟接口单元向所述终端的安卓系统的Linux内核发送软件数据获取命令,由所述终端的安卓系统的Linux内核基于该软件数据获取命令获取终端软件数据;并通过虚拟接口单元接收由终端的安卓系统的Linux内核所返回的终端软件数据;
[0042]硬件数据取证子系统,用于通过虚拟接口单元向终端的安卓系统的Linux内核发送硬件数据获取命令,由所述终端的安卓系统的Linux内核基于硬件数据获取命令提取终端芯片硬件数据;并通过虚拟接口单元接收由终端的安卓系统的Linux内核所返回的终端芯片硬件数据;
[0043]进一步地,软件数据取证子系统还包括软件数据标识单元;软件数据标识单元,用于生成唯一标识符,并将所述唯一标识符标识与所述终端软件数据相关联,以标识所述终端软件数据。进一步地,硬件数据取证子系统还包括硬件数据标识单元;硬件数据标识单元,用于获取所述终端的硬件标识码,并将所述硬件标识码与所述终端芯片硬件数据相关联,以标识所述终端芯片硬件数据。
[0044]软件数据标识单元可以基于多种预定算法生成唯一标识符,而且硬件数据标识单元获取的硬件标识码可以是唯一用于标识终端的设备码,比如终端的IMIE。
[0045]由此可见,现有技术的手机数据提取软件都是直接和安卓系统的应用程序层进行交互,都是要在手机中写入数据,然后对手机中的数据进行获取;但是在取证系统中,犯罪嫌疑人的手机是作为证物来使用的,是不允许有任何的数据写入的,所以通常市面上的手机数据提取软件是不符合公安系统使用的。本发明的数据取证系统,通过虚拟接口单元是直接与安卓系统的内核交互,不通过安卓系统的应用程序层或是应用程序框架层,是直接作用于安卓的Linux内核,不写入任何数据,只提取,完全符合公检法系统的取证、要求。
[0046]在一个实施方式中,终端芯片硬件数据,是所述终端的安卓系统的Linux内核基于硬件数据获取命令按位复制终端芯片的数据所提取的。在一个实施方式中,终端芯片的硬件数据包括下列中的至少一个:内存的总量;内存的剩余量;SD卡的总量;SD卡的剩余量;剩余电池量百分比;cpu信息。在一个实施方式中,终端软件数据包括该终端的用户数据及该终端的应用程序数据。在一个实施方式中,应用程序数据包括下列中的至少一个:通讯录;短信数据;通话记录;SM卡信息;即时通讯软件使用记录;日程管理记录,等等。在一个实施方式中,软件数据获取命令为上网地址记录信息获取命令:软件数据取证子系统,用于通过虚拟接口单元接收由终端的安卓系统的Linux内核所返回的上网地址记录信息,其中所述上网地址记录信息由所述终端的安卓系统的Linux内核基于所述上网地址记录信息获取命令所获取。在一个实施方式中,软件数据获取命令为用户自行安装程序数据获取命令:软件数据取证子系统,用于通过虚拟接口单元接收由终端的安卓系统的Linux内核所返回的用户自行安装程序数据,其中所述上网地址记录信息由所述终端的安卓系统的Linux内核基于所述用户自行安装程序数据获取命令所获取。在一个实施方式中,用户自行安装程序数据包括用户自行安装程序名或用户自行安装程序版本号。
[0047]图2为本发明数据取证系统的应用环境示意图。由图2可见,本发明的数据取证系统通过软件形式安装在个人电脑(PC)上,通过USB等各种形式将PC与安卓智能手机连接,从而可以从安卓智能手机中获取软件数据和/或硬件数据。
[0048]图3为本发明 软件数据取证子系统功能逻辑图;图4为本发明硬件数据取证子系统功能逻辑图。软件数据取证子系统主要提取手机中应用软件产生的数据;对应手机中应用程序数据及用户数据。硬件数据取证子系统主要提取手机芯片的数据,将手机芯片的数据按位进行复制;复制后的数据将被取证系统加密并标定。
[0049]图5为通讯录数据提取示意图;该流程主要说明读取通讯录中的姓名、电话号码数据。解析该数据分为储存在SIM卡的通讯录数据以及储存在手机的通讯录数据。
[0050]软件数据取证子系统通过虚拟接口单元向终端的Linux内核发送通讯录数据提取命令,其中通讯录数据提取命令可以包括表1所示的字段。
[0051]表1:
[0052]
字段名#It据类型I说明备注
ContactsContract.Contacts.CO string连接到通讯最
NTENT—URI_ ‘_里面的地址__
ContacisContract.Contacls.—ID Int丨每条通讯录里

面的对应一个idConiacisContracl.Contacts.DIS string辱1
PLAY NAME_.______
ConlaclsContract.Contacts.HA slring
S—PHONE—NUMBER__| | 码_[0053]如图5所示,首先可以通过安卓手机数据线将安卓手机与安装有数据取证系统的PC连接。当连接成功之后数据取证系统创建安卓手机连接,并通过与手机中安卓系统的Linux内核相连接的虚拟接口单元向手机操作系统中Linux内核发送通讯录数据提取命令。Linux内核接收到通讯录数据提取命令之后,分别启动手机通讯录管理模块和手机SM卡管理模块,以分别提取安卓通讯录中数据和SM卡中通讯录数据,并启用与虚拟接口单元的连接将安卓通讯录中数据和SIM卡中通讯录数据发送到PC端。然后,PC端中的数据验证系统进一步验证数据是否正确以及是否可以解析,当确定数据正确以及可以解析之后,在显示界面中展示数据。
[0054]图6为短信数据提取示意图。主要说明取证软件读取短信数据里面的基本短信以及彩信数据。这部分的数据具体储存在发件箱,收件箱,草稿箱。
[0055]软件数据取证子系统通过虚拟接口单元向终端的Linux内核发送短信数据提取命令,其中短信数据提取命令可以包括表2所示的字段。
[0056]表 2
[0057]
【权利要求】
1.一种基于安卓的数据取证系统,其特征在于,该数据取证系统与采用安卓系统的终端相连接,该数据取证系统包括虚拟接口单元、软件数据取证子系统和硬件数据取证子系统; 虚拟接口单元,与所述终端的安卓系统的Linux内核连接,在所述安卓系统的应用程序框架层与所述Linux内核之间构成虚拟层,使用所述终端的安卓系统认为该虚拟层为所述终端的安卓系统的应用; 软件数据取证子系统,用于通过虚拟接口单元向所述终端的安卓系统的Linux内核发送软件数据获取命令,由所述终端的安卓系统的Linux内核基于该软件数据获取命令获取终端软件数据;并通过虚拟接口单元接收由终端的安卓系统的Linux内核所返回的终端软件数据; 硬件数据取证子系统,用于通过虚拟接口单元向终端的安卓系统的Linux内核发送硬件数据获取命令,由所述终端的安卓系统的Linux内核基于硬件数据获取命令提取终端芯片硬件数据;并通过虚拟接口单元接收由终端的安卓系统的Linux内核所返回的终端芯片硬件数据; 所述软件数据取证子系统还包括软件数据标识单元; 软件数据标识单 元,用于生成唯一标识符,并将所述唯一标识符标识与所述终端软件数据相关联,以标识所述终端软件数据; 所述硬件数据取证子系统还包括硬件数据标识单元; 硬件数据标识单元,用于获取所述终端的硬件标识码,并将所述硬件标识码与所述终端芯片硬件数据相关联,以标识所述终端芯片硬件数据。
2.根据权利要求1所述的基于安卓的数据取证系统,其特征在于, 所述终端芯片硬件数据,是所述终端的安卓系统的Linux内核基于硬件数据获取命令按位复制终端芯片的数据所提取的。
3.根据权利要求2所述的基于安卓的数据取证系统,其特征在于,所述终端芯片的硬件数据包括下列中的至少一个: 内存的总量;内存的剩余量;SD卡的总量;SD卡的剩余量;剩余电池量百分比;cpu信肩、O
4.根据权利要求1所述的基于安卓的数据取证系统,其特征在于,所述终端软件数据包括该终端的用户数据及该终端的应用程序数据。
5.根据权利要求4所述的基于安卓的数据取证系统,其特征在于,所述应用程序数据包括下列中的至少一个: 通讯录;短信数据;通话记录;SM卡信息;即时通讯软件使用记录;日程管理记录。
6.根据权利要求1所述的基于安卓的数据取证系统,其特征在于,所述软件数据获取命令为上网地址记录信息获取命令: 软件数据取证子系统,用于通过虚拟接口单元接收由终端的安卓系统的Linux内核所返回的上网地址记录信息,其中所述上网地址记录信息由所述终端的安卓系统的Linux内核基于所述上网地址记录信息获取命令所获取。
7.根据权利要求1所述的基于安卓的数据取证系统,其特征在于,所述软件数据获取命令为用户自行安装程序数据获取命令:软件数据取证子系统,用于通过虚拟接口单元接收由终端的安卓系统的Linux内核所返回的用户自行安装程序数据,其中所述上网地址记录信息由所述终端的安卓系统的Linux内核基于所述用户自行安装程序数据获取命令所获取。
8.根据权利要求7所述的基于安卓的数据取证系统,其特征在于,所述用户自行安装程序数据包括用户自行安装程序名或用户自行安装程序版本号。
【文档编号】G06F9/44GK103942054SQ201410169767
【公开日】2014年7月23日 申请日期:2014年4月25日 优先权日:2014年4月25日
【发明者】孙艺, 崔毅东, 孔熠, 程保中, 韩万江, 张聪, 杨继军, 蒋先富, 齐鸿烨, 任兵飞, 李悦 申请人:北京邮电大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1