[发明专利]检测安卓系统敏感信息泄露的方法和装置有效
申请号: | 201510255820.X | 申请日: | 2015-05-19 |
公开(公告)号: | CN104992112B | 公开(公告)日: | 2017-10-13 |
发明(设计)人: | 王进平;程国涛;熊波;唐昆鹏;袁健;陈庆奎 | 申请(专利权)人: | 上海理工大学 |
主分类号: | G06F21/55 | 分类号: | G06F21/55;G06F21/56;G06F21/62 |
代理公司: | 上海德昭知识产权代理有限公司31204 | 代理人: | 郁旦蓉 |
地址: | 200093 *** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 检测 系统 敏感 信息 泄露 方法 装置 | ||
技术领域
本发明属于检测敏感信息泄露领域,具体涉及一种检测安卓系统敏感信息泄露的方法和装置。
背景技术
由于Android开源等特性,Android已经成为全世界最流行的移动终端操作系统。根据StrategyAnalytics的2014第三季度调研数据显示,Android系统市场占有率为83.6%,居移动操作系统市场第一。随着Android移动设备的广泛应用,大规模的恶意应用也随之产生。至2013年,Android占全球移动恶意应用的份额为97%。
通过大量非官方市场(包括官方市场google play)发布的应用可以看出,由于缺乏有效的检测机制,恶意应用泛滥。恶意应用主要分为耗费资源型,破坏系统型,恶意扣费型,窃取隐私数据型等等。如今,很多用户在移动终端保存了大量个人隐私数据,并且很多商务人士还保存了商业机密数据,这些数据成为越来越多的恶意应用窃取的目标。
目前检测android隐私泄露主流的方法有静态和动态两种。静态的方法通过反编译技术发现源码中是否有的敏感数据泄露途径。动态方法是收集程序运行时的行为信息,并检测应用程序与外部环境之间的交互,从而判断是否有恶意行为。动态污点分析是一种典型的隐私泄露检测方法,通常需要三个环节,污点标记,污点传播和污点检测,属于动态检测方法的范畴。
现有的基于污点的检测方法通常是通过定制特定的污点检测系统,对android系统或模拟器进行静态或动态插桩,添加污点标签,触发相应的行为,在程序运行时进行检测。这些方法大都需要配置复杂的android系统或模拟器环境,插桩过程比较复杂,通常难以准确触发恶意行为发生,也无法检测污点数据的密文泄露等。
目前,中国专利申请公布号为CN103177210A公开了一种在Android中植入动态污点分析模块的方法,该方法对Android系统的系统类库和应用程序进行静态插桩,通过重定向虚拟机启动函数的方法重构执行环境,应用程序装载时能够引用插桩后的系统类库,在运行过程中,动态污点分析模块同步运行,实施动态污点跟踪分析。该方法虽然不需要修改Android系统源代码和系统架构,但对系统类库和待测应用都要进行静态插桩,还需要重构执行环境,实现复杂,且无法检测污点数据以密文形式泄露,更无法自定义敏感数据源并预警提示待测应用的危险等级等。
发明内容
本发明是为了解决上述课题而进行的,目的在于提供一种实现简单,能自定义敏感信息且能够同时检测以明文或密文形式泄露的污点数据并能预警危险等级的检测安卓系统敏感信息泄露的方法和装置。
本发明提供了一种实现简单,能自定义敏感信息且能够同时检测以明文或密文形式泄露的污点数据并能预警危险等级的检测安卓系统敏感信息泄露的方法,其特征在于,包括以下步骤:步骤1,将库函数ioctl()、库函数sendtoBytes()以及库函数SSL_write()的函数名称加前缀,然后形成so文件,导入android native层中;
步骤2,将库函数ioctl()、库函数sendtoBytes()以及库函数SSL_write()对应的函数体通过调用步骤1中相对应的加前缀的库函数ioctl()、库函数sendtoBytes()以及库函数SSL_write()分别形成相应的壳函数,然后形成so文件,导入android native层中;
步骤3,定义敏感信息,将所有敏感信息进程和待测应用进程的信息存储于共享区中;
步骤4,当待测应用进程调用所述库函数ioctl()进行进程通信并且访问的目的进程属于共存区时,采用敏感信息进程,标记的常量污点数据和访问敏感信息权重的三元组污点标记形式对所述待测应用进程进行污点标记形成标记信息,并将共享区中对应的marked位置位,将所述标记的常量污点数据存储到共享存区的marked data中;
步骤5,根据标记信息对壳函数sendtoBytes()和壳函数SSL_write()发送的数据包进行污点检测;
步骤6,判断包含标记信息的所述数据包是否需要重新检测;
步骤7,计算待测应用进程中的访问敏感信息权重之和并预警提示待测应用进程的危险等级。
本发明的检测安卓系统敏感信息泄露的方法还可以具有这样的特征:其中,壳函数的函数签名与库函数ioctl()、库函数sendtoBytes()以及库函数SSL_write()的函数签名形同。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于上海理工大学,未经上海理工大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201510255820.X/2.html,转载请声明来源钻瓜专利网。
- 信息记录介质、信息记录方法、信息记录设备、信息再现方法和信息再现设备
- 信息记录装置、信息记录方法、信息记录介质、信息复制装置和信息复制方法
- 信息记录装置、信息再现装置、信息记录方法、信息再现方法、信息记录程序、信息再现程序、以及信息记录介质
- 信息记录装置、信息再现装置、信息记录方法、信息再现方法、信息记录程序、信息再现程序、以及信息记录介质
- 信息记录设备、信息重放设备、信息记录方法、信息重放方法、以及信息记录介质
- 信息存储介质、信息记录方法、信息重放方法、信息记录设备、以及信息重放设备
- 信息存储介质、信息记录方法、信息回放方法、信息记录设备和信息回放设备
- 信息记录介质、信息记录方法、信息记录装置、信息再现方法和信息再现装置
- 信息终端,信息终端的信息呈现方法和信息呈现程序
- 信息创建、信息发送方法及信息创建、信息发送装置