隐私泄露检测方法及系统技术方案

技术编号:15501406 阅读:74 留言:0更新日期:2017-06-03 22:47
本发明专利技术实施例提供了一种隐私泄露检测方法及系统。所述方法包括:根据构建的敏感数据源、泄露点的应用程序接口表和回调函数的应用程序接口表查找安装包中的敏感数据源、泄露点和回调函数的应用程序接口,得到安装包中的敏感数据源、泄露点和回调函数,由安装包中的敏感数据源、泄露点和回调函数建立组件生命周期模型;通过安装包中的回调函数及组件生命周期模型生成虚拟主函数;将虚拟主函数经过变换生成函数间控制流图,以安装包中的敏感数据源为分析起点,根据数据流污点分析算法对函数间控制流图进行分析,得到隐私泄露的可疑路径;输出隐私泄露的可疑路径。可以有效发现应用程序组件内的隐私泄露行为。

Privacy leak detection method and system

The embodiment of the invention provides a privacy leak detection method and system. The method comprises the following steps: according to the application program interface of sensitive data source, construct the leaking point of the application program interface table and a callback function application program interface table to find sensitive data source, pack the leakage point and callback function installation, get sensitive data source, pack the leakage point and the callback function installed by sensitive data the source of the installation package and the leakage point and callback function to establish the component life cycle model; through the installation of the callback function and component life cycle model in the virtual main function; virtual main function transform after generating function between the control flow graph to sensitive data source installation package for the analysis of the starting point, according to the data flow Taint Analysis the algorithm of function control flow graph analysis, suspicious path obtained privacy; privacy suspicious path output. Privacy leaks within application components can be effectively detected.

【技术实现步骤摘要】
隐私泄露检测方法及系统
本专利技术涉及移动终端安全
,具体而言,涉及一种隐私泄露检测方法及系统。
技术介绍
随着移动设备普及范围越来越广泛、功能越来越强大。在实际生活中,移动设备中存储的数据更加的复杂、敏感,其中不仅包括用户的个人隐私数据(通讯录、短信、电子邮件、地理位置、相册、浏览记录等),还包括手机系统记录的日志,这些有价值的数据都是攻击者的攻击目标。这些有价值的数据可能是以恶意软件窃取的方式泄露,还可能是因对第三方应用程序的数据的访问权限设置不合理而导致这些有价值的数据的泄露,给用户带来很大的困扰以及损失。对应用程序的隐私泄露行为进行检测已经成为最为流行的安全技术之一。目前的应用程序安全分析工具可分为静态分析工具和动态分析工具。静态分析工具存在着分析结果不精确、对字段及对象不敏感分析等不足之处,而动态分析工具存在代码覆盖率不全面以及路径爆炸的问题。总而言之,目前应用程序安全分析工具不能有效发现应用程序组件内的隐私泄露行为。
技术实现思路
有鉴于此,本专利技术实施例的目的在于提供一种能有效发现程序组件内的隐私泄露行为的方法及系统,以改变现有技术中不能有效发现应用程序组件内的隐私泄露行为的缺陷。本专利技术较佳实施例提供了一种隐私泄露检测方法,所述方法包括:构建敏感数据源、泄露点的应用程序接口表和回调函数的应用程序接口表;根据构建的敏感数据源、泄露点的应用程序接口表和回调函数的应用程序接口表查找安装包中的敏感数据源、泄露点和回调函数的应用程序接口,得到所述安装包中的敏感数据源、泄露点和回调函数,由所述安装包中的敏感数据源、泄露点和回调函数建立组件生命周期模型;通过所述安装包中的回调函数及所述组件生命周期模型生成虚拟主函数;将所述虚拟主函数经过变换生成函数间控制流图,以所述安装包中的敏感数据源为分析起点,根据数据流污点分析算法对所述函数间控制流图进行分析,得到隐私泄露的可疑路径;输出隐私泄露的可疑路径。本专利技术另一较佳实施例提供了一种隐私泄露检测系统,所述系统包括:构建模块,用于构建敏感数据源、泄露点的应用程序接口表和回调函数的应用程序接口表;预处理模块,用于根据构建的敏感数据源、泄露点的应用程序接口表和回调函数的应用程序接口表查找安装包中的敏感数据源、泄露点和回调函数的应用程序接口,得到所述安装包中的敏感数据源、泄露点和回调函数,由所述安装包中的敏感数据源、泄露点和回调函数建立组件生命周期模型;处理模块,用于通过所述安装包中的回调函数及所述组件生命周期模型生成虚拟主函数;控制流与数据流分析模块,用于将所述虚拟主函数经过变换生成函数间控制流图,以所述安装包中的敏感数据源为分析起点,根据数据流污点分析算法对所述函数间控制流图进行分析,得到隐私泄露的可疑路径;分析结果输出模块,用于输出隐私泄露的可疑路径。相对于现有技术而言,本专利技术具有以下有益效果:根据构建的敏感数据源、泄露点的应用程序接口表和回调函数的应用程序接口表查找安装包中的敏感数据源、泄露点和回调函数的应用程序接口,得到所述安装包中的敏感数据源、泄露点和回调函数,由所述安装包中的敏感数据源、泄露点和回调函数建立组件生命周期模型。通过所述安装包中的回调函数及所述组件生命周期模型生成虚拟主函数。将所述虚拟主函数经过变换生成函数间控制流图,以所述安装包中的敏感数据源为分析起点,根据数据流污点分析算法对所述函数间控制流图进行分析,得到隐私泄露的可疑路径,输出隐私泄露的可疑路径。可以有效发现应用程序组件内的隐私泄露的可疑路径,可以通过对上述可疑路径的修护,防止隐私泄露。附图说明为了更清楚地说明本专利技术实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本专利技术的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。图1为本专利技术实施例提供的移动终端的方框示意图。图2为本专利技术实施例提供的隐私泄露检测方法的流程示意图。图3为图2中步骤S110的子步骤的流程示意图。图4为图2中步骤S140的部分子步骤的流程示意图。图5为含有污点函数的示例代码的信息流分析分解图。图6为图2中步骤S140的另一部分子步骤的流程示意图。图7为对象别名的污点分析示意图。图8为进行控制流分解的示例代码。图9为含有污点函数的示例代码的控制流分解图。图10为本专利技术实施例提供的隐私泄露检测方法的另一种流程示意图。图11为本专利技术实施例提供的DroidBench检测结果图。图12为本专利技术实施例提供的隐私泄露检测系统的方框示意图。图13为本专利技术实施例提供的隐私泄露检测系统的另一种方框示意图。图标:100-移动终端;110-存储器;120-存储控制器;130-处理器;200-隐私泄露检测系统;210-构建模块;220-预处理模块;230-处理模块;240-控制流与数据流分析模块;250-分析结果输出模块;260-检测模块。具体实施方式下面将结合本专利技术实施例中附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本专利技术一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本专利技术实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本专利技术的实施例的详细描述并非旨在限制要求保护的本专利技术的范围,而是仅仅表示本专利技术的选定实施例。基于本专利技术的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本专利技术保护的范围。应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。同时,在本专利技术的描述中,术语“第一”、“第二”等仅用于区分描述,而不能理解为指示或暗示相对重要性。请参照图1,图1是本专利技术较佳实施例提供的移动终端100的方框示意图。本专利技术实施例中所述移动终端100可以是,但不限于,智能手机、平板电脑等。本实施例中,所述移动终端100的操作系统可以是,但不限于,安卓(Android)系统、IOS(iPhoneoperatingsystem)系统等。优选地,本实施例中,所述移动终端100的操作系统为Android系统。如图1所示,所述移动终端100包括:存储器110、存储控制器120、处理器130以及隐私泄露检测系统200。所述存储器110、存储控制器120及处理器130各元件之间直接或间接地电性连接,以实现数据的传输或交互。例如,这些元件相互之间可通过一条或多条通讯总线或信号线实现电性连接。存储器110中存储有隐私泄露检测系统200,所述隐私泄露检测系统200包括至少一个可以软件或固件(firmware)的形式存储于所述存储器110中的软件功能模块。所述处理器130通过运行存储在存储器110内的软件程序以及模块,如本专利技术实施例中的隐私泄露检测系统200,从而执行各种功能应用以及数据处理,即实现本专利技术实施例中的隐私泄露检测方法。其中,所述存储器110可以是,但不限于,随机存取存储器(RandomAccessMemory,RAM),只读存储器(ReadOnlyMemory,ROM),可编程只读存储器(ProgrammableRead-OnlyMemory,本文档来自技高网...
隐私泄露检测方法及系统

【技术保护点】
一种隐私泄露检测方法,其特征在于,所述方法包括:构建敏感数据源、泄露点的应用程序接口表和回调函数的应用程序接口表;根据构建的敏感数据源、泄露点的应用程序接口表和回调函数的应用程序接口表查找安装包中的敏感数据源、泄露点和回调函数的应用程序接口,得到所述安装包中的敏感数据源、泄露点和回调函数,由所述安装包中的敏感数据源、泄露点和回调函数建立组件生命周期模型;通过所述安装包中的回调函数及所述组件生命周期模型生成虚拟主函数;将所述虚拟主函数经过变换生成函数间控制流图,以所述安装包中的敏感数据源为分析起点,根据数据流污点分析算法对所述函数间控制流图进行分析,得到隐私泄露的可疑路径;输出隐私泄露的可疑路径。

【技术特征摘要】
1.一种隐私泄露检测方法,其特征在于,所述方法包括:构建敏感数据源、泄露点的应用程序接口表和回调函数的应用程序接口表;根据构建的敏感数据源、泄露点的应用程序接口表和回调函数的应用程序接口表查找安装包中的敏感数据源、泄露点和回调函数的应用程序接口,得到所述安装包中的敏感数据源、泄露点和回调函数,由所述安装包中的敏感数据源、泄露点和回调函数建立组件生命周期模型;通过所述安装包中的回调函数及所述组件生命周期模型生成虚拟主函数;将所述虚拟主函数经过变换生成函数间控制流图,以所述安装包中的敏感数据源为分析起点,根据数据流污点分析算法对所述函数间控制流图进行分析,得到隐私泄露的可疑路径;输出隐私泄露的可疑路径。2.根据权利要求1所述的方法,其特征在于,所述输出隐私泄露的可疑路径的步骤之后还包括:通过预设的开源测试工具对所述可疑路径进行检测,评估所述方法的有效性和正确性。3.根据权利要求1所述的方法,其特征在于,所述构建敏感数据源、泄露点的应用程序接口表和回调函数的应用程序接口表的步骤包括:构建回调函数的应用程序接口表;由权限与敏感数据源的应用程序接口表、权限与泄露点的应用程序接口表构建敏感数据源、泄露点的应用程序接口表。4.根据权利要求1所述的方法,其特征在于,所述将所述虚拟主函数经过变换生成函数间控制流图,以所述安装包中的敏感数据源为分析起点,根据数据流污点分析算法对所述函数间控制流图进行分析,得到隐私泄露的可疑路径的步骤包括:将所述安装包中的敏感数据源作为起点进行正向分析,查找所述安装包中的敏感数据源的别名,并标记为污点,标记为污点的别名为未激活状态;再将上述别名作为分析的起点,同时进行反向分析和正向分析,所述反向分析中加入正向分析的上下文环境,查找所述别名的新的别名,并标记为污点,新的污点别名仍为未激活状态;在所述正向分析的上下文环境中进行反向分析,当产生了正向分析在执行到所述安装包中的敏感数据源或泄露点的应用程序接口时,所述新的污点别名由未激活状态转变为激活状态;对找到的所有处于未激活状态的新的污点别名重复上述步骤进行分析得到其他处于激活状态的污点别名;记录处于激活状态的污点别名到所述安装包中的泄露点的路径,所述路径为所述可疑路径。5.根据权利要求1所述的方法,其特征在于,所述将所述虚拟主函数经过变换生成函数间控制流图,以所述安装包中的敏感数据源为分析起点,根据数据流污点分析算法对所述函数间控制流图进行分析,得到隐私泄露的可疑路径的步骤包括:将所述虚拟主函数通过Soot静态分析框架转换为由中间件语言表示的字节码文件;通过所述字节码文件及Soot静态分析框架得到所述函数间控制流图。6.一种隐私泄露检测系统,其特征在于,所述系统包括:构建模块,用于...

【专利技术属性】
技术研发人员:黄勇周敏刘亮崔凯铜许春阳
申请(专利权)人:四川无声信息技术有限公司
类型:发明
国别省市:四川,51

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1