Login| Sign Up| Help| Contact|

Patent Searching and Data


Title:
LABEL BASED BLACK BOX TESTING METHOD AND SYSTEM FOR ANDROID USER PRIVACY LEAKS
Document Type and Number:
WIPO Patent Application WO/2014/198171
Kind Code:
A1
Abstract:
The present invention relates to a label based black box testing method and system for Android user privacy leaks. The testing steps are: 1) creating user privacy data for an Android user terminal and adding category labels to the user privacy data; 2) installing in the Android terminal at least one application program to be tested and triggering said program; 3) testing the category labels carried in data packets sent out by the application program at Internet, Bluetooth or short message network egresses; 4) determining privacy data categories according to the category labels carried in the data packets, and recording the results. This saves a large amount of command analysis and taint propagation time, avoids variables in all the commands of the application program and intermediate variables during calculations, at the same time as saving a large amount of memory consumption.

Inventors:
ZHANG YAN (CN)
WANG DAN (CN)
ZHOU QIHUI (CN)
WU XIAOXIN (CN)
Application Number:
PCT/CN2014/077139
Publication Date:
December 18, 2014
Filing Date:
May 09, 2014
Export Citation:
Click for automatic bibliography generation   Help
Assignee:
HUAWEI TECH CO LTD (CN)
INST OF INFORMATION ENGINEERING CHINESE ACADEMY OF SCIENCES (CN)
International Classes:
G06F11/36; G06F21/62
Foreign References:
CN103309808A2013-09-18
CN103327183A2013-09-25
CN103729595A2014-04-16
CN102413221A2012-04-11
CN102810143A2012-12-05
Download PDF:
Claims:
权 利 要 求

1.一种基于标签的安卓用户隐私泄露黑盒检测方法, 其步骤为:

1 ) 对安卓用户终端创建用户隐私数据并将类别标签添加到所述用户隐私数据中;

2 ) 在安卓用户终端安装不少于一个待检测应用程序并触发所述待检测应用程序;

3 ) 在数据出口检测所述应用程序向外发送的数据包中携带的类别标签;

4) 根据所述数据包中携带的类别标签判断隐私数据类别。

2.如权利要求 1所述的基于标签的安卓用户隐私泄露黑盒检测方法, 其特征在于, 所述网络 出口为 Internet或蓝牙或短消息中的一种或多种。

3.如权利要求 1所述的基于标签的安卓用户隐私泄露黑盒检测方法, 其特征在于, 所述用户 隐私数据根据用户设定为: 联系人列表、 应用程序列表、 短消息内容、 SD卡文本数据、 日志 信息、 GPS地理位置信息, 操作系统类型, MEI设备号中的一种或者多种组合。

4.如权利要求 1所述的基于标签的安卓用户隐私泄露黑盒检测方法, 其特征在于, 所述类别 标签为多个类别的用户隐私数据特定的一个或多个编码字符串。

5.如权利要求 1所述的基于标签的安卓用户隐私泄露黑盒检测方法, 其特征在于, 所述待检 测应用程序通过手动或者自动方式安装:

所述手动安装由检测人员在安卓终端手动安装一个或一批待测应用程序并逐一打开安装 好的待测应用程序;

所述自动安装通过安卓系统已有的自动化安装和 /或测试的工具连接到安卓用户终端, 自 动安装一个或一批待测应用程序, 并随机性模拟用户行为自动触发应用功能。

6.如权利要求 1所述的基于标签的安卓用户隐私泄露黑盒检测方法, 其特征在于, 所述安卓 用户终端为可调试智能终端设备的一种或者多种: 手机、 平板电脑、 电视, 所述终端设备的 操作系统为安卓 2. 1版本及以上版本。

7.如权利要求 2 所述的基于标签的安卓用户隐私泄露黑盒检测方法, 其特征在于, 在所述 Internet或蓝牙或短消息的网络出口检测所述应用程序向外发送的数据包为: 安卓系统上安 装的待测应用程序通过调用安卓系统核心库中网络套接字接口函数或 frameworks 层的短消 息发送接口函数, 向外部 Interne 蓝牙地址以及外部电话发送的数据消息包。

8.如权利要求 7 所述的基于标签的安卓用户隐私泄露黑盒检测方法, 其特征在于, 所述在 Internet, 蓝牙, 短消息网络出口检测数据包是否携带标签的方法为:

1)在安卓系统核心库层截获被上层应用程序或系统组件调用的网络套接字接口函数将要向外 部 Internet地址或蓝牙地址发送的数据包;在安卓系统框架层截获被上层应用程序或系统组 件调用的短消息发送接口函数将要向外部电话号码发送的短消息数据包;

2 )取出各类用户数据的类别标签集合, 采用字符串比对方式, 检测数据包是否包含某些类别 标签, 若该数据包字符串至少包含某类用户数据类别标签集合中的一个类别标签, 则该数据 包携带了该类用户数据。

9.如权利要求 7所述的基于标签的安卓用户隐私泄露黑盒检测方法, 其特征在于, 若数据包 携带该类用户数据, 则记录检测结果包括: 据中的数据包内容、 所携带的类别标签、 类别标 签所属类别以及数据包发送时间、 发送数据包的应用程序名。

10.一种基于标签的安卓用户隐私泄露黑盒检测系统, 包括:

用于对安卓用户终端创建用户隐私数据并将类别标签添加到所述用户隐私数据中的装 置;

用于在安卓用户终端安装不少于一个待检测应用程序并触发所述待检测应用程序的装 置;

用于在数据出口检测所述应用程序向外发送的数据包中携带的类别标签的装置; 用于根据所述数据包中携带的类别标签判断隐私数据类别, 记录结果的装置; 以及类型标签数据库和检测结果数据库。

Description:
基于标签的安卓用户隐私泄露黑盒检测方法及 系统 技术领域

本发明涉及安卓用户隐私信息检测, 尤其涉及一种基于事先设定的标签检测安卓应 用程 序是否将某类用户隐私数据向外发送的方法及 其实施系统, 属于移动终端安全领域。 背景技术

目前, 信息技术已进入移动互联网时代, 智能移动终端由于其便携性、 成本低等优点日 益成为用户进行各类网络活动的主要终端形态 。 相比传统移动终端, 智能移动终端拥有更高 性能的处理器、 更大的存储空间、 更高的移动网络数据传输能力以及开放的第三 方移动终端 操作系统, 因此借助智能移动终端可以开展大量业务应用 , 处理更多的个人隐私数据。 这些 数据, 如通话与短信信息, 地理位置, 社交网络账户, 银行帐号, 个人密码, 照片视频等等, 均以直接或间接的方式与金钱利益挂钩, 从而吸引了众多攻击者的注意力, 导致隐私窃取类 恶意软件增长速度惊人,根据网秦发布的《201 2年上半年全球手机安全报告》中的数据显示 2012年上半年查杀到手机恶意软件 17676款, 相比 2011年下半年增长 42%, 感染手机 1283 万部, 其中隐私窃取类占据了 23.2%的感染比例。 为全面保护用户的隐私与财产安全, 推动 智能移动设备的发展, 智能移动终端隐私防护技术的研究已成为产业 界和学术界共同关注的 方向。

数据流追踪控制是智能移动终端隐私防护的重 要方向之一, 目前的数据流追踪控制方案 为敏感隐私数据设置污点标签, 监测安卓应用程序中处理隐私数据的指令运行 , 设定规则保 证污点标签在数据处理过程中有效传播, 从而跟踪隐私数据的流向, 直至数据流离开手机的 各种渠道, 防止隐私数据的非授权泄漏。 2010年 Intel实验室, 宾夕法尼亚实验室, 以及杜克 大学联合开发了应用于安卓上的 TaintDroid系统, 该系统利用了安卓的 DVM虚拟机架构, 对其进行轻量级扩展以进行四个级别的污点追 踪;同年, Georgios 等研究者们开发了 Paranoid Android 系统, 利用虚拟机录制与重放技术, 将 Android运行状态复制并传递给远程服务器, 在服务器上运行病毒查杀和污点传播检测, 对隐私泄漏和其它恶意入侵行为进行检测。

然而现有安卓数据流追踪隐私检测方案采用的 是数据流白盒追踪, 需要在虚拟机中实时 截获并分析每一条指令的运行(如数据加减运 算, 数据字符串变形, 数据拷贝等), 并在系统 中另外开辟大量内存, 存储和传播数据源和中间数据的污点标签, 才能跟踪隐私数据流, 检 测出隐私数据。 此种方式给计算资源本就受限的移动终端带来 大量的性能消耗, 影响用户体 验。 目前在智能移动终端领域, 还不存在一种无需实时监控指令的高效隐私数 据流追踪方法。 通常在每一个应用程序运行的过程中, 涉及指令操作往往具有百条、 千条、 万条甚至更高的 数量级, 采用逐条指令分析追踪数据流的白盒方式, 将带来大量的时间和内存开销。 此外, 许多应用程序向外发送用户的隐私数据时, 通常只是简单读取拷贝和发送, 较少浪费过多的 运行时间和计算资源对其进行变形和加密。 发明内容

本发明的目的在于构建一种基于标签的安卓用 户隐私数据黑盒追踪检测方法及系统, 采 用黑盒快速追踪的方式, 在源头为不同类型的用户数据设置类型特征标 签, 随后安装待检测 应用程序, 并自动触发应用行为, 将数据在应用程序内部的所有处理过程视为黑 盒, 不予干 涉。 仅在网络信息出口处, 拦截外传数据, 检测出带有标签的数据包, 判定应用程序向外发 送何种隐私数据。

为了实现上述目的, 本发明采用如下技术方案一一基于标签的安卓 用户隐私泄露黑盒检 测方法, 包括如下步骤:

1 ) 对安卓用户终端创建用户隐私数据并将类别标 签添加到所述用户隐私数据中;

2) 在安卓用户终端安装不少于一个待检测应用程 序并触发所述待检测应用程序;

3) 在 Internet,蓝牙,短消息网络出口检测所述应用 序向外发送的数据包中携带的类 别标签;

4) 根据所述数据包中携带的类别标签判断隐私数 据类别, 记录结果。

可选地, 所述用户隐私数据包括但不限于: 联系人列表、 应用程序列表、 短消息内容、 SD卡文本数据、 日志信息、 GPS地理位置信息, MEI设备号, 蓝牙 MAC地址, WiFi MAC地址, 最近通话。 或者可由用户定义, 可以是一个大类, 如联系人列表, 也可以挑选其中的部分联 系人信息组成一个小类。

可选地, 所述类别标签为多个类别的用户隐私数据特定 的一个或多个编码字符串。

更进一步, 所述待检测应用程序通过手动或者自动方式安 装:

所述手动安装由检测人员在安卓终端手动安装 一个或一批待测应用程序并逐一打开安装 好的待测应用程序;

所述自动安装通过安卓系统已有的自动化安装 和 /或测试的工具连接到安卓用户终端, 自 动安装一个或一批待测应用程序, 并随机性模拟用户行为自动触发应用功能。

可选地, 所述安卓用户终端为可调试智能终端设备: 手机、 平板电脑、 电视, 所述终端 设备的操作系统为安卓 2. 1版本及以上版本。

更进一步, 在 Internet,蓝牙,短消息网络出口检测所述应用程 序向外发送的数据包为: 安卓系统上安装的待测应用程序通过调用安卓 系统核心库中网络套接字接口函数, 向外部 Internet地址发送的数据包。

更进一步, 所述在 Internet,蓝牙, 短消息网络出口检测数据包是否携带标签的方 法为:

1 )在安卓底层负责向 Internet,蓝牙网络发送数据包的接口函数里, 以及负责向外部电 话号码发送短消息的接口函数里, 通过添加模块函数比对包发送者的标识信息, 截获待测批 次中的应用程序通过接口函数将要发送的数据 包;

2 )取出各类用户数据的类别标签集合, 采用字符串比对方式, 检测数据包是否包含某些 类别标签, 若该数据包字符串至少包含某类用户数据类别 标签集合中的一个类别标签, 则该 数据包携带了该类用户数据。

更进一步, 若数据包携带该类用户数据, 则记录检测结果包括: 据中的数据包内容、 所 携带的类别标签、 类别标签所属类别以及数据包发送时间、 发送数据包的应用程序名。

更进一步, 建一检测结果数据库用于储存所述检测结果。

本发明还提出一种基于标签的安卓用户隐私泄 露黑盒检测系统, 包括:

用于对安卓用户终端创建用户隐私数据并将类 别标签添加到所述用户隐私数据中的装 置;

用于在安卓用户终端安装不少于一个待检测应 用程序并触发所述待检测应用程序的装 置;

用于在 Internet, 蓝牙, 短消息网络出口检测所述应用程序向外发送的 数据包中携带的 类别标签的装置;

用于根据所述数据包中携带的类别标签判断隐 私数据类别, 记录结果的装置; 以及类型标签数据库和检测结果数据库。

木发明的有益效朵

本发明的方法简单地在数据流出口处对数据进 行基于数据类别标签的检测, 节省了大量 指令分析和污点传播的时间, 也避免了为应用程序所有指令中的变量和计算 时的中间变量, 以及寄存器开辟专门的内存空间以供污点存储 和传播, 节省了大量的内存开销。 附图说明

图 1为本发明方法基于标签的安卓用户隐私泄露 盒检测系统的架构示意图。 具体实施方式

下面将结合本发明实施例中的附图, 对本发明实施例中的技术方案进行清楚、 完整地描 述, 可以理解的是, 所描述的实施例仅仅是本发明一部分实施例, 而不是全部的实施例。 基 于本发明中的实施例, 本领域技术人员在没有做出创造性劳动前提下 所获得的所有其他实施 例, 都属于本发明保护的范围。 在本发明一实施例中, 检测方法如下:

1 ) 在安卓终端测试机上创建携带类别标签的各类 用户隐私数据,并将类别标签存入类别 标签数据库。

2) 自动或手动安装待测应用程序, 自动或手动触发应用程序行为。

3 ) 在 Internet, 蓝牙, 短消息网络出口检测待测应用程序向外发送的 数据包中是否携带 标签, 携带何种标签。

4) 若检测到携带标签, 将检测结果记录进安卓终端测试机内部的检测 结果数据库中。

5 ) 测试人员可通过查看检测结果数据库文件,或 通过使用预先开发的安装于安卓终端测 试机上的检测结果数据库读取软件查看单个或 多个待测软件的检测结果。

在本发明一实施例中, 所述安卓终端测试机是操作系统为安卓的智能 手机, 平板, 电视 等可调试智能终端设备。 所述待测应用程序包括国内外安卓应用市场上 可供免费或付费下载 的面向安卓智能手机, 平板, 电视的应用程序, 以及从其它渠道获得的安卓应用程序。

在本发明一实施例中, 所述用户数据包括联系人列表, 应用程序列表, 短消息内容, SD 卡文本数据, 日志信息, GPS地理位置信息。 所述用户数据类别的粒度可由检测人员自行定 义, 如可将短消息内容视为一个用户类别, 也可将其划分为三个用户类别: 收件箱短消息, 发件箱短消息, 草稿箱短消息。

在本发明一实施例中, 所述在安卓终端测试机上创建携带类别标签的 用户隐私数据的方 法为, 依托安卓系统自带应用, 安卓市场应用或自行开发的安卓应用,编辑携 类别标签的用 户数据内容, 存入安卓终端测试机。

所述类别标签, 是指每种类别的用户数据特有的一个或多个特 征字符串, 其形式可为特 殊词组, 也可为无意义的字符组合。

在本发明另一实施例中,类别标签为利用安卓 系统自带的 Contact联系人应用程序,编辑 数条联系人信息, 其联系人姓名后统一加入 " #SecretContact# ", 联系人电话统一设置为 " 13333333333 ", { "#SecretContact#", " 13333333333 " }作为联系人数据的类别标签集。

在本发明一实施例中, 所述手动安装待测应用程序和触发应用程序行 为, 是指由参与检 测的工作人员在安卓终端测试机上手动安装一 个或一批待测应用程序, 随后逐一打开安装好 的待测应用程序, 尽可能全面地触发其各种应用功能。

在本发明一实施例中, 所述自动安装待测应用程序和触发应用程序行 为, 是指借助安卓 自身已有的一些自动化安装和测试的工具, 编写计算机程序脚本, 连接安卓终端测试机, 自 动安装一个或一批待测应用程序, 并随机性地模拟用户行为自动触发其各种应用 功能。

在本发明另一实施例中, 需要检测的通过 Internet,蓝牙, 短消息网络出口向外发送的数 据包为安卓系统上安装的待测应用程序, 调用安卓系统核心库中网络套接字接口函数, 向外 部 Internet地址, 蓝牙地址, 电话号码发送的数据消息包。

在木发明一实施例 1 1 1 在 Internet,蓝牙, 短消息网络出口检测数据包是否携带标签的方 法为:

1 )在安卓底层代码文件中负责向 Internet,蓝牙网络发送数据包的接口函数里, 以及负 责向外部电话号码发送短消息的接口函数里, 通过添加模块函数比对包发送者的标识信息, 截获待测批次中的应用程序通过接口函数将要 发送的数据包;

2 )取出各类用户数据的类别标签集合, 采用字符串比对方式, 检测数据包是否包含某些 类别标签, 若该数据包字符串至少包含某类用户数据类别 标签集合中的一个类别标签, 则该 数据包携带了该类用户数据。

所述检测结果数据库实现形式可以为但不仅限 于使用安卓内部自带的 sqlite数据库工具 预先创建。

如图 1所示是本发明基于标签的安卓用户隐私泄露 盒检测系统的架构示意图, 其中, 该 系统包括测试前端和测试后端。测试前端架设 在安卓终端测试机上, 包括数据出口监测组件, 与检测结果数据库写入组件, 以及类型标签数据库与检测结果数据库两个数 据库。 数据出口 监测组件负责拦截网络外送数据包, 检测其是否携带类型标签数据库中记录的类型 标签。 检 测结果数据库写入组件, 负责向检测结果数据库中写入检测到携带了标 签的数据包及其相关 信息。

测试后端架设在一台计算机上, 通过 USB调试接口连接安卓终端测试机, 主要包括类型 标签写入组件, 自动化安装和调试脚本组件,以及检测结果数 据读取组件。 其中类型标签集写 入组件, 向测试人员提供了向测试终端机类型标签数据 库中存储预先编辑的类型标签集的功 能, 检测结果数据库读取组件, 具备从终端测试机的检测结果数据库中读取, 查询和展示检 测结果的能力。

下面将给出本发明的一个具体实例, 对本发明中的技术方案进行清楚、 完整地描述, 可 以理解的是, 所描述的实例仅仅是本发明一部分实例, 而不是全部的实施例。 基于本发明中 的实施例, 本领域技术人员在没有做出创造性劳动前提下 所获得的所有其他实施例, 都属于 本发明保护的范围。

本实例描述测试人员在测试终端机上为联系人 列表, 短信, IMEI设备号, GPS位置, SD 卡文件创建携带类别标签的用户隐私数据, 并检测某一应用程序对这些类别的用户隐私数 据 的泄漏情况的过程, 如表 1所示:

1 测试人员启动测试终端机, 并将其连接到可对其发送指令的测试电脑上

2 测试人员为联系人列表, 短信, IMEI设备号, GPS位置, SD卡文件创建携带类别标签的用 户隐私数据:

3 测试人员调用类型标签写入组件将上述类型标 签写入测试终端机类型标签数据库。

4 测试人员调用脚本程序在测试终端机上安装一 批指定待测软件,并自动触发它们的各种软 件行为。

5 在软件行为触发过程中,该批软件有向外部 Internet地址发送数据包,则该数据包将在底层 被拦截, 检测其是否携带事先设定的类型标签。 若有携带, 则记录进数据库。

6 自动触发脚本程序结束停止运行后, 测试人员可在测试后端计算机上通过启动检测 结果数 据库读取组件查看待测软件的隐私泄露情况报 告。

表 1

类别 用户隐私数据 类别标签集 创建方式

联系人 1 姓名: Tom#secretContact#, 手机号: {#secretContact#, 使用安卓系统自带 列表 13333332233 , 公司: US#secretContact# 13333332233} 的联系人 Apk软件编

2 姓名: Bob#secretcontact#, 手机号: 写

13333332233 , 公司: CS#secretcontact#

收件箱 你今天去哪儿了? #secretReceive# {#secretReceive# 从另一台测试手机 短消息 } 接受此短消息 发件箱 明天会天晴。 #secretSend# {#secretSend#} 使用安卓系统自带 短消息 的短消息软件编写, 发送给测试号码 草稿箱 后天什么时候开会。 #secretDraft# {#secretDraft#} 使用安卓系统自带 短消息 的短消息软件编写, 存入草稿箱

IMEI 设 72849250011 {72849250011 } 从安卓设置程序中 备号 读取

GPS 位 N 39D26' E 115 D25' { N 39D26', E 下载经纬度检测软

115 D25' } 件, 获取测试机所在 地经纬度。

Sd 卡存 {#FF836R#, 在测试后端计算机 储 SecretSdcardl.txt: secretSdcard} 上创建两个文件

WWW.IIE.AC C蕭 F836R#

文件 SecretSdcardl.txt ,

SecretSdcard2.txt:

SecretSdcard2.txt, 使 "WWW.123.COM" #FF836R#"

用 adb push命令将其 导入测试终端机的 SD卡中