CN106203162A - 一种疏堵结合的隐私保护方法与系统 - Google Patents

一种疏堵结合的隐私保护方法与系统 Download PDF

Info

Publication number
CN106203162A
CN106203162A CN201610514332.0A CN201610514332A CN106203162A CN 106203162 A CN106203162 A CN 106203162A CN 201610514332 A CN201610514332 A CN 201610514332A CN 106203162 A CN106203162 A CN 106203162A
Authority
CN
China
Prior art keywords
function
application
hook
sensitive permission
strategy
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201610514332.0A
Other languages
English (en)
Other versions
CN106203162B (zh
Inventor
宋军
王力哲
杨帆
王开心
赵健
顿明
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
China University of Geosciences
Original Assignee
China University of Geosciences
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by China University of Geosciences filed Critical China University of Geosciences
Priority to CN201610514332.0A priority Critical patent/CN106203162B/zh
Publication of CN106203162A publication Critical patent/CN106203162A/zh
Application granted granted Critical
Publication of CN106203162B publication Critical patent/CN106203162B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • G06F21/6245Protecting personal data, e.g. for financial or medical purposes

Abstract

本发明公开了一种疏堵结合的隐私保护方法与系统,该方法包括以下步骤:1)扫描应用,列出应用申请的所有权限,判断已安装应用是否涉及敏感权限;2)对涉及敏感权限的应用,提示用户对其使用欺骗函数策略或跳跃函数策略;所述欺骗函数策略具体如下:对应用程序涉及的敏感权限进行hook,在被hook的函数中植入欺骗函数,当监控到应用访问敏感权限时,对其返回一个虚假值;所述跳跃函数策略具体如下:提取恶意应用所涉及的权限,通过修改权限函数的入口地址,绕过恶意应用权限的调用;3)根据用户选定的策略,当敏感权限申请数据时,对敏感权限返回虚假值或直接跳过权限调用。本发明能有效解决现有的手机应用的隐私泄露、权限滥用等安全问题。

Description

一种疏堵结合的隐私保护方法与系统
技术领域
本发明涉及信息安全技术,尤其涉及一种疏堵结合的隐私保护方法与系统。
背景技术
Android操作系统是由Google和开放手持设备联盟共同开发的移动设备操作系统。自2008年9月,第一版Android( Android 1.1)发布,至今已历经近七年,其发展仍然呈现高速增长趋势。 Android作为一个开放式的移动互联网操作系统,已成为应用最广的移动互联网平台。据全球市场研究公司Gartner数据显示, 2014年Android系统全球市场占有率为80.7%,总销量为12.45亿部,牢牢占据着全球智能手机市场份额第一的位置。
360互联网安全中心将 2014年监测的 Android恶意程序根据中国反网络病毒联盟的分类标准进行了分类统计,其中感染次数最高的为资费消耗类,占比74.362%,之后是隐私窃取和恶意扣费,分别占10.8%和10.6%。其他类型(流氓行为、系统破坏、远程控制、恶意传播)的恶意程序感染量占比约为 1%。感染量最大的资费消耗类恶意程序的主要恶意行为是通过自动联网、上传和下载数据、安装其他应用等消耗用户手机流量和资费。
由于 Android 本身的开放性以及管理制度的不健全等诸多因素,其安全性问题正逐步暴露出来,已成为遭受攻击最多的移动平台。特别是国内第三方市场的审核制度不严格,让 Android 平台的安全性问题雪上加霜,时刻威胁着用户的隐私。
传统安全解决方案是对敏感权限进行拦截,这通常会导致应用程序功能受限,甚至程序崩溃。
发明内容
本发明要解决的技术问题在于针对现有技术中的缺陷,提供一种疏堵结合的隐私保护方法与系统。
本发明解决其技术问题所采用的技术方案是:一种疏堵结合的隐私保护方法,包括以下步骤:
1)扫描已安装的应用,列出应用申请的所有权限,判断已安装应用是否涉及敏感权限;
2)对涉及敏感权限的应用,提示用户对其使用欺骗函数策略或跳跃函数策略;
所述欺骗函数策略具体如下:对应用程序涉及的敏感权限进行hook,在被hook的函数中植入欺骗函数,当监控到应用访问敏感权限时,对其返回一个虚假值;
所述跳跃函数策略具体如下:提取恶意应用所涉及的权限,通过修改权限函数的入口地址,绕过恶意应用权限的调用;
3)根据用户选定的策略,当敏感权限申请数据时,对敏感权限返回虚假值或直接跳过权限调用。
按上述方案,所述步骤2)中策略函数实现流程如下:
2.1)在 hook方法的前后设定好参数信息;
2.2)找到要hook的类名;
2.3)根据要hook的类名,找到将要hook类的构造方法和非抽象方法;
2.4)将获取到的构造方法和非抽象方法进行hook操作;
2.5)对应用程序的相关权限进行虚假设置,当应用程序调用系统的服务的一个函数时,通过beforeHookedMethod()函数或afterHookedMethod()函数达到返回虚假值或跳过函数调用的目的。
一种疏堵结合的隐私保护系统,包括:
敏感权限扫描模块,用于扫描已安装的应用,判断已安装应用是否涉及敏感权限;
策略选择模块,用于对涉及敏感权限的应用,提示用户对其使用欺骗函数策略或跳跃函数策略;
策略函数模块,包括欺骗函数策略模块和跳跃函数策略模块;
欺骗函数策略模块,用于对应用程序涉及的敏感权限进行hook,在被hook的函数中植入欺骗函数,当监控到应用访问敏感权限时,对其返回一个虚假值;
跳跃函数策略模块,用于提取恶意应用所涉及的权限,通过修改权限函数的入口地址,绕过恶意应用权限的调用;
权限疏导防控模块,用于根据用户选定的策略,当敏感权限申请数据时,对敏感权限返回虚假值或直接跳过权限调用。
按上述方案,所述策略函数模块中策略函数实现流程如下:
1)在hook方法的前后设定好参数信息;
2)找到要hook的类名;
3)根据要hook的类名,找到将要hook类的构造方法和非抽象方法;
4)将获取到的构造方法和非抽象方法进行hook操作;
5)对应用程序的相关权限进行虚假设置,当应用程序调用系统的涉及隐私服务的时,通过beforeHookedMethod()函数或afterHookedMethod()函数达到返回虚假值或跳过函数调用的目的。
本发明产生的有益效果是:本发明用于解决现有的手机应用隐私数据的隐私泄露、权限滥用等安全问题。某些恶意应用私自获取通讯录信息、私自发送短信,私自获取地理位置信息等,泄露了用户的隐私信息。传统安全解决方案是对敏感权限进行拦截,这通常会导致应用程序功能受限,甚至程序崩溃。采用本发明方法,用户不用担心这个问题,用户可以利用欺骗函数策略和跳跃函数策略,对敏感权限返回一个虚假值或直接跳过权限的调用,实现对敏感权限的“疏导”防控。
附图说明
下面将结合附图及实施例对本发明作进一步说明,附图中:
图1是本发明的方法流程示意图。
图2是本发明的权限疏导防控模块关系示意图。
图3是本发明中策略函数模块结构示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。
如图1所示,图1是本发明的权限疏导防控流程示意图。引入了基于Xposed框架的Android API Hook技术,设计欺骗函数策略和跳跃函数策略。对于欺骗函数策略:对应用程序涉及的敏感权限进行hook,在被hook的函数中植入欺骗函数,当监控到应用访问敏感权限时,对其返回一个虚假值;对于跳跃函数策略:提取恶意应用所涉及的权限,通过修改权限函数的入口地址,绕过恶意应用权限的调用,进而实现对敏感权限的“疏导”防控。
图2是本发明的权限疏导防控模块关系示意图。流程是:
(1)Android 系统启动流程,在系统启动过程中调用 Xposed 框架;Android 系统启动,首先会加载系统内核,内核加载完毕后,第一个执行的 是 init 进程, init 进程首先要做的是设备的初始化工作, 然后读取 inic.rc 文件并 启动系统中的重要外部程序Zygote。
Zygote 进程是 Android 所有进程的孵化器进程,它启动后会首先初始化Dalvik 虚拟机,然后启动 system_server 并进入 Zygote 模式,通过 socket 等候命令。 system_server 进程就是由 Android 系统的 system/bin 目录下的 app_process程序运行创建的。当执行一个 Android 应用程序的时候, system_server 进程通过socket 方式发送命令给 Zygote,Zygote 收到命令后通过 fork 自身创建一个 Dalvik虚拟机实例来执行应用程序的入口函数,这样一个程序就启动完成了。
Zygote 提供了三种创建进程的方法:
1. fork():创建一个 Zygote 进程,可以继续 fork()出其它进程;
2.forkAndSpecialize():创建一个非 Zygote 进程,不可以 fork()出其它进 程;
3.forkSystemServer():创建一个系统服务进程,终止后子进程也必须终 止。 其中,Zygote 进程可以再 fork 出其他进程,非 Zygote 进程则不能 fork 其他 进程,而系统服务进程在终止后它的子进程也必须终止。
(2)用Xposed框架替换了系统重要程序 app_process,替换后的 app_process 中注入了自定义的代码用于在系统启动的时候加载额外的代码文件。
Dalvik 孵化器 Zygote 进程是由系统 程序 app_process 创建的进程 system_server 通过 socket 通信创建自身而形成的。 在 Android FrameWork 载入的时候,一个由 Xposed 定义的 app_process 程序会被 复制到/system/bin 目录下。这个程序会在开机的时候添加了额外的 jar 文件到 classpath 从而实现可以在 Zygote 上下文中调用这些定义的方法。 该框架由三个部分组成:
1.XposedBridge:Xposed 提供的 jar 文件, app_process 启动过程会加载该 jar文件,并且其它插件模块的开发都是基于该 jar 文件;
2. Xposed:Xposed 的 C++部分,主要用于替换/system/bin/app_process, 并为XposedBridge 提供 JNI 方法;
3. XposedInstaller:Xposed 的安装包,提供对基于 Xposed 框架的插件的 管理。
这个 jar 文件被放置到了/data/xposed/XposedBridge.jar 下, Zygote 进程会首先调用这个 jar 文件中的方法。 XposedBridge.jar 中有一个私有的 Native( JNI)方法 hookMethodNative,该方法也会在 app_process 中被使用。这个方法提供一个 方法对象并利用 java 的 reflection 反射机制对系统内置的方法进行覆写。
(3)对系统方法的 hook 操作,模块实现的关键技术;
Xposed 框架中真正起作用的是对系统方法的 hook 操作。自定义 java 层 hook 代码在 Xposed 提供的 before()和 after()方法中实现。 Jar 包中的本地方法hookMethodNative 会在替换后的 app_process 中被调用。它将一个类对象作为输 入参数(可以通过 java 的反射机制获取)并且改变 Dalvik 虚拟机中对于该方法 的定义。Xposed 将该方法的类型改变为 native 并且将这个方法的实现链接到它 的本地通用类的方法。当调用那个被 hook 的方法的时候,通用的类方法依然会 被调用但不会对调用者有任何的影响。在 hookMethodNative 的实现中,会调用XposedBridge 中的handleHookedMethod 这个方法来传递参数。
(4)java 反射机制;
(5)模块实现流程,从模块的一个实现分支出发详细介绍模块实现的流程。
图3是本发明中策略函数模块结构示意图。系统监控到应用申请敏感权限时,利用hook 技术转向 BeforeHookedMethod()函数,然后再执行原函数,之后转向AfterHookedMethod()函数。欺骗函数策略则是执行 AfterHookedMethod()函数之后,伪造一个回调参数,达到返回虚假值的目的;跳跃策略函数则是执行BeforeHookedMethod()函数之后,通过地址索引到 AfterHookedMethod()函数,达到跳过权限调用的目的。
本发明具有的理论意义和实际应用价值:在本发明原型系统中,用户也可以结合自己的需求,根据Android应用功能、用户使用习惯、软件熟悉程度等条件自行设定权限控制策略,实现基于 Android的个性化隐私保护,具有较明显的工程应用和科研价值。
应当理解的是,对本领域普通技术人员来说,可以根据上述说明加以改进或变换,而所有这些改进和变换都应属于本发明所附权利要求的保护范围。

Claims (4)

1.一种疏堵结合的隐私保护方法,其特征在于,包括以下步骤:
1)扫描已安装的应用,列出应用申请的所有权限,判断已安装应用是否涉及敏感权限;
2)对涉及敏感权限的应用,提示用户对其使用欺骗函数策略或跳跃函数策略;
所述欺骗函数策略具体如下:对应用程序涉及的敏感权限进行hook,在被hook的函数中植入欺骗函数,当监控到应用访问敏感权限时,对其返回一个虚假值;
所述跳跃函数策略具体如下:提取恶意应用所涉及的权限,通过修改权限函数的入口地址,绕过恶意应用权限的调用;
3)根据用户选定的策略,当敏感权限申请数据时,对敏感权限返回虚假值或直接跳过权限调用。
2.根据权利要求1所述的疏堵结合的隐私保护方法,其特征在于,所述步骤2)中策略函数实现流程如下:
2.1)在 hook方法的前后设定好参数信息;
2.2)找到要hook的类名;
2.3)根据要hook的类名,找到将要hook类的构造方法和非抽象方法;
2.4)将获取到的构造方法和非抽象方法进行hook操作;
2.5)对应用程序的相关权限进行虚假设置,当应用程序调用系统的服务的一个函数时,通过beforeHookedMethod()函数或afterHookedMethod()函数达到返回虚假值或跳过函数调用的目的。
3.一种疏堵结合的隐私保护系统,其特征在于,包括:
敏感权限扫描模块,用于扫描已安装的应用,判断已安装应用是否涉及敏感权限;
策略选择模块,用于对涉及敏感权限的应用,提示用户对其使用欺骗函数策略或跳跃函数策略;
策略函数模块,包括欺骗函数策略模块和跳跃函数策略模块;
欺骗函数策略模块,用于对应用程序涉及的敏感权限进行hook,在被hook的函数中植入欺骗函数,当监控到应用访问敏感权限时,对其返回一个虚假值;
跳跃函数策略模块,用于提取恶意应用所涉及的权限,通过修改权限函数的入口地址,绕过恶意应用权限的调用;
权限疏导防控模块,用于根据用户选定的策略,当敏感权限申请数据时,对敏感权限返回虚假值或直接跳过权限调用。
4.根据权利要求3所述的疏堵结合的隐私保护系统,其特征在于,所述策略函数模块中策略函数实现流程如下:
1)在hook方法的前后设定好参数信息;
2)找到要hook的类名;
3)根据要hook的类名,找到将要hook类的构造方法和非抽象方法;
4)将获取到的构造方法和非抽象方法进行hook操作;
5)对应用程序的相关权限进行虚假设置,当应用程序调用系统的服务的一个函数时,通过beforeHookedMethod()函数或afterHookedMethod()函数达到返回虚假值或跳过函数调用的目的。
CN201610514332.0A 2016-06-30 2016-06-30 一种疏堵结合的隐私保护方法与系统 Active CN106203162B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610514332.0A CN106203162B (zh) 2016-06-30 2016-06-30 一种疏堵结合的隐私保护方法与系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610514332.0A CN106203162B (zh) 2016-06-30 2016-06-30 一种疏堵结合的隐私保护方法与系统

Publications (2)

Publication Number Publication Date
CN106203162A true CN106203162A (zh) 2016-12-07
CN106203162B CN106203162B (zh) 2019-03-19

Family

ID=57464337

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610514332.0A Active CN106203162B (zh) 2016-06-30 2016-06-30 一种疏堵结合的隐私保护方法与系统

Country Status (1)

Country Link
CN (1) CN106203162B (zh)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108287721A (zh) * 2017-08-17 2018-07-17 北京微应软件科技有限公司 一种移动终端控制方法及装置
CN110168553A (zh) * 2016-12-30 2019-08-23 微软技术许可有限责任公司 智能和分析驱动的安全性和合规性建议
CN110309646A (zh) * 2019-06-28 2019-10-08 广州小鹏汽车科技有限公司 个人信息保护方法、保护装置和车辆
CN110334537A (zh) * 2019-05-31 2019-10-15 华为技术有限公司 一种信息处理方法、装置以及服务器
CN110737911A (zh) * 2018-07-19 2020-01-31 中国电信股份有限公司 数据处理方法、装置和计算机可读存储介质
CN111914251A (zh) * 2020-07-03 2020-11-10 上海理想信息产业(集团)有限公司 一种基于混合控制技术的智能终端安全保护方法及系统

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102236553A (zh) * 2011-06-09 2011-11-09 北京思创银联科技股份有限公司 Windows系统窗体过滤方法
CN102819715A (zh) * 2012-08-15 2012-12-12 腾讯科技(深圳)有限公司 Api监控方法和装置
CN105303074A (zh) * 2015-10-15 2016-02-03 江苏敏捷科技股份有限公司 一种保护Web应用程序安全的方法
CN105426751A (zh) * 2015-10-27 2016-03-23 珠海市君天电子科技有限公司 一种防止篡改系统时间的方法及装置
CN105653979A (zh) * 2015-12-29 2016-06-08 银江股份有限公司 一种基于代码注入的隐私信息保护方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102236553A (zh) * 2011-06-09 2011-11-09 北京思创银联科技股份有限公司 Windows系统窗体过滤方法
CN102819715A (zh) * 2012-08-15 2012-12-12 腾讯科技(深圳)有限公司 Api监控方法和装置
CN105303074A (zh) * 2015-10-15 2016-02-03 江苏敏捷科技股份有限公司 一种保护Web应用程序安全的方法
CN105426751A (zh) * 2015-10-27 2016-03-23 珠海市君天电子科技有限公司 一种防止篡改系统时间的方法及装置
CN105653979A (zh) * 2015-12-29 2016-06-08 银江股份有限公司 一种基于代码注入的隐私信息保护方法

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110168553A (zh) * 2016-12-30 2019-08-23 微软技术许可有限责任公司 智能和分析驱动的安全性和合规性建议
CN110168553B (zh) * 2016-12-30 2023-07-14 微软技术许可有限责任公司 智能和分析驱动的安全性和合规性建议
CN108287721A (zh) * 2017-08-17 2018-07-17 北京微应软件科技有限公司 一种移动终端控制方法及装置
CN110737911A (zh) * 2018-07-19 2020-01-31 中国电信股份有限公司 数据处理方法、装置和计算机可读存储介质
CN110334537A (zh) * 2019-05-31 2019-10-15 华为技术有限公司 一种信息处理方法、装置以及服务器
CN110334537B (zh) * 2019-05-31 2023-01-13 华为技术有限公司 一种信息处理方法、装置以及服务器
CN110309646A (zh) * 2019-06-28 2019-10-08 广州小鹏汽车科技有限公司 个人信息保护方法、保护装置和车辆
CN111914251A (zh) * 2020-07-03 2020-11-10 上海理想信息产业(集团)有限公司 一种基于混合控制技术的智能终端安全保护方法及系统

Also Published As

Publication number Publication date
CN106203162B (zh) 2019-03-19

Similar Documents

Publication Publication Date Title
CN106203162A (zh) 一种疏堵结合的隐私保护方法与系统
US11157616B2 (en) Mobile application management
CN103403669B (zh) 使app变得安全的方法和防止app损坏设备的方法
US8812868B2 (en) Secure execution of unsecured apps on a device
TWI628944B (zh) 用於在一行動器件之一嵌入式通用積體電路卡上啟用一電子用戶識別碼模組之方法及相關之非暫時性電腦可讀儲存媒體
US8955142B2 (en) Secure execution of unsecured apps on a device
US8769305B2 (en) Secure execution of unsecured apps on a device
CN106897611A (zh) 无需root权限的安全虚拟移动应用程序运行环境系统及方法与应用
CN103473502A (zh) 一种获取基于安卓的移动终端Root权限的方法和系统
CN104246698A (zh) 弹性操作系统电脑
CN106650418A (zh) 基于多策略的Android访问控制系统及方法
CN104268463A (zh) 一种摄像头调用权限管理方法和设备
US9280674B2 (en) Information processing apparatus and method of controlling same
CN104424028A (zh) 终端设备以及切换方法
CN104281803A (zh) 一种系统权限管理方法和设备
CN104822127A (zh) 一种蓝牙设备及其数据通道实时管控方法和系统
CN113569288A (zh) 权限管理方法、装置及电子设备
US9672353B2 (en) Securing and managing apps on a device using policy gates
US9846790B2 (en) Method for changing an operating mode of a mobile device
CN106209746B (zh) 一种安全业务提供方法及服务器
CN106385677A (zh) 基于云端管理系统的在公网中进行安全通信的智能手机
CN105611046A (zh) 一种策略定制的安卓手机安全保护系统及其保护方法
CN105590052A (zh) 一种控制浏览器插件安装的方法
CN104768147A (zh) 一种无线局域网设备及数据通道实时管控方法和系统
de Melo et al. PUPDroid-Personalized user privacy mechanism for android

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
CB03 Change of inventor or designer information

Inventor after: Song Jun

Inventor after: Yang Fan

Inventor after: Wang Kaixin

Inventor after: Zhao Jian

Inventor after: Dun Ming

Inventor before: Song Jun

Inventor before: Wang Lizhe

Inventor before: Yang Fan

Inventor before: Wang Kaixin

Inventor before: Zhao Jian

Inventor before: Dun Ming

CB03 Change of inventor or designer information
EE01 Entry into force of recordation of patent licensing contract

Application publication date: 20161207

Assignee: WUHAN TIMES GEOSMART TECHNOLOGY Co.,Ltd.

Assignor: CHINA University OF GEOSCIENCES (WUHAN CITY)

Contract record no.: X2022420000021

Denomination of invention: A privacy protection method and system combined with dredging and blocking

Granted publication date: 20190319

License type: Common License

Record date: 20220302

EE01 Entry into force of recordation of patent licensing contract