基于手机安卓系统的敏感行为元数据采集

2015-03-16 10:44洪瑶彦
电脑知识与技术 2015年1期
关键词:元数据隐私保护

洪瑶彦

摘要:手机应用敏感行为元数据获取并记录是判断应用程序是否存在安全隐私行为的关键证据之一。目前对隐私泄露的主要关注在于对于敏感信息存储和提取及敏感操作请求。当前敏感元数据并未完全考虑追踪目的,故本文在深入理解安卓系统实现源代码基础上,从框架层提出能作为敏感操作及敏感存取的监测点,利用虚拟机hook技术全面、精确地收集敏感信息并抽取行为元数据。

关键词: 安卓系统;元数据;隐私保护;敏感行为;hook技术

中图分类号:TP309 文献标识码:A 文章编号:1009-3044(2015)01-0188-02

1 问题提出与定义

为了保护用户隐私,需知道敏感信息在手机中存储方式,追踪信息在系统运行时如何被采集并传输,应用如何操作隐私信息。这些行为考量维度组成了敏感元数据。该文提出问题如下:

1) 目前手机平台的元数据表示并未将关注点集中于行为追踪,仅考虑敏感信息流向。

2) 现有的监测点主要在共享库及系统调用中,其优点在于上层framework库的改动不影响其监测,缺陷在于不能明确提供满足信息追踪所需必要信息,即应用名、操作具体内容及存取文件路径。

现代智能手機平台可下载第三方应用,许多应用提供云服务时需要用户本地信息,访问用户隐私数据,然而用户必须保证数据使用合理性,即在使用服务同时隐私数据是否未经同意擅自泄露至远程服务器,是否保持其保密性,完整性及可用性。

1.1 敏感元数据

敏感元数据采集的目的在于获取隐私泄露的证据。计算机取证方面,目前关于移动设备取证研究较少,PC端研究精力在于入侵取证。为了保证数据完整性,采用SHA方法生成摘要,利用秘密共享机制完成数据验证;在数据分析方面,采取形式化分析,包括根本原因、语意完整性检测、有限状态机、基于假设的入侵调查方式。另有研究通过文本分类方法进行证据特征提取,用K-最临近及贝叶斯分类器对证据分类,最终实现自动化取证。入侵取证的目的在于是否第三方是否存在恶意攻击行为,其数据采集只是通过API函数调用获取历史数据,并没有在其内部实施监测或拦截,易被恶意软件使用其他方式绕过特定API或篡改数据。而本文关注软件敏感行为,数据采集除了行为本身还应关注行为作用的数据敏感性,而实时监测方式可使采集的数据更具可靠性。

1.2 安卓平台动态监测信息方式

监测技术方面,由于安卓系统基于linux及java虚拟机,故存在两类已有hook方式完成动态监测目的。此外,虚拟机拦截机制也可作为监测方式之一。

基于linux的hook技术利用ptrace在进程中断注入so库,写入hook函数,结合动态链接机制,定位至got表查询hook点的函数入口及其参数,之后返回至原函数。基于虚拟机hook技术在其孵化器Zygote载入app_process进程安卓框架时获得JNI环境指针后利用java类加载器的反射机制,对框架层组件函数进行hook,虚拟机hook确保系统无穿透性。

1.3 安卓系统的敏感行为监测点

根据敏感信息流追踪必要数据采集因素及敏感行为特点,将敏感事件元祖定义为:<信息源,信息,操作,信息目的地,时间>。

2 敏感元数据定义与采集

2.1 元数据定义要素

为体现信息使用意图,元数据从三个维度描述:信息类型,信息获取(改动)主体,操作时间。

信息类型根据其信息源分为高带宽信息即大型可共享数据buffer及文件等内容;低带宽信息即传感信息;设备识别符,唯一标识设备或用户,如手机号码、SIM卡识别符如ICC-ID、IMSI以及IMEI号;数据库信息,包含联系人,SMS及即时聊天记录。主体体现为具体应用,使用PID,UID描述,虽然行为主体可能是用户,但一般情况下均通过应用实现操作。

2.2 关键信息操作元数据定义

2.2.1 短信操作元数据

将短信收发操作元数据定义为。其中,S为发送者,R为接收者,TY为短信类型即sms或mms;C为短信内容,在短信收发操作时,若得到应用查询其他信息记录,则可获得收发敏感信息的证据,短信内容采集步骤可略去;O为操作类型即发送或接收,T为操作时间。

2.2.2 文件操作元数据

对文件敏感操作的行为是个人信息管理的重要部分,根据增删改查四类操作,将文件元数据定义为。FO为文件操作类型,即增、删、改、查四类操作之一;FH为文件哈希值;FT为文件类型;FP为包含绝对路径信息的完整文件名;OT为文件创建或修改或删除或查询的时间。

2.2.3 位置信息元数据

目前对位置信息元数据保护主要有K匿名等方式,采集位置信息时将其替换为位置标识符最为元数据要素之一。然而此方式保护位置信息对于地区流动性变化不可预测,故在元数据内加入需动态因素。位置信息元数据定义为:

2.3 安卓框架层拦截实现

2.3.1 改进孵化器进程文件

安卓系统的孵化进程由初始化进程启动,为系统及应用程序进程提供虚拟机实例。首先调用app_process继而启动安卓运行时环境,调用运行时main函数,完成孵化器进程创建,最后启动系统服务,并等待应用程序socket请求。

2.3.2 虚拟机层hook

虚拟机层hook核心思想为修改监测函数属性为本地函数,通过JNI渗入C/C++层,调用虚拟机触发方法执行被监测函数,并将参数状态记录至日志。

3 实验分析

敏感行为监测广度分析:

实验目的为检查敏感信息监测点对各种敏感行为元数据采集的有效性。 对百度手机助手上应用软件分别每类取2例监测,6款应用使用adb方式安装。

表1的数据说明了日志中应用发生操作敏感行为及存储敏感行为是否被记录。其中监测操作行为五项,存取行为五项,adb安装应用可全部检测到,可见此方案具有较高监测广度。结果表明,本方案较系统日志方法能有效监测应用敏感行为。

4 结束语

本文提出的手机安卓监测方式,从安卓关键通信机制Binder出发,对敏感行为涉及组件广播及内容提供监测关键变量及方法,使敏感数据采集有效且具层次化。全面记录应用的敏感行为,并以日志事件形式,突出隐私追踪所需必要信息,同时为之后的行为隐私级别判定提供可靠数据。比安卓审计系统更加细化了敏感行为定义及所关联的监测点,比安卓平台信息流系统增加了应用主体的数据,更能有利于追踪与分析。

参考文献:

[1] 周洪伟,韦大伟,郭渊博.一种数字取证完整性方案[J].计算机应用研究,2007(12).

[2] 李均涛,唐郑熠,李祥.基于行为时序逻辑的入侵取证研究[J].计算机应用研究,2011(7).

[3] 罗会明,易军凯.Android智能手机取证研究[M].北京:北京化工大学,2013.

[4] Chen T,Kan M Y.Creating a live, public short message service corpus: The NUS SMS corpus[J].Language Resources and Evaluation,2013,47(2):299-335.

猜你喜欢
元数据隐私保护
基于来源的组织机构元数据构建研究
基于层次和节点功率控制的源位置隐私保护策略研究
元数据与社会化标签在微视频搜索中的应用
关联规则隐藏算法综述
大数据环境下用户信息隐私泄露成因分析和保护对策
大数据安全与隐私保护的必要性及措施
高等院校智慧校园建设规划与实现
社交网络中的隐私关注及隐私保护研究综述
大数据时代的隐私保护关键技术研究
财会信息资源元数据标准的研究