(19)中华人民共和国国家知识产权局
(12)发明专利申请
(10)申请公布号 (43)申请公布日 (21)申请号 201610323750.1
(22)申请日 2016.05.17
(71)申请人 武汉虹旭信息技术有限责任公司android属于什么软件
地址 430074 湖北省武汉市洪山区邮科院
路88号
(72)发明人 保永武 陆浩 葛振希
(74)专利代理机构 武汉宇晨专利事务所 42001
代理人 黄瑞棠
(51)Int.Cl.
G06F 21/56(2013.01)
(54)发明名称Android平台软件异常行为检测系统(57)摘要本发明公开了一种Android平台软件异常行为检测系统,属于智能移动终端技术领域。本系统包括相互连通的Android移动终端和软件行为监测数据库;Android移动终端包括内核Hook模块、数据分析模块和Hook日志模块;内核Hook模块包括依次交互的S
y s t e m _s e r v e r 进程、libbind.so库和ioctl函数,实现内核Hook信息的提取;数据分析模块包括资源监测进程、状态监测进程、数据分析引擎和数据处理进程,对软件行为异常的界定写入。本发明具有超前性、准确性和综合性,不仅结合动态检测和静态检测的优点,通过对敏感API接口函数的Hook,有效的检测app软件的异常行为,有效统计软件的操作系
统行为特征。权利要求书2页 说明书6页 附图1页CN 105956474 A 2016.09.21
C N 105956474
A
1.一种Android 平台软件异常行为检测系统,其特征在于:
本系统包括相互连通的Android移动终端(100)和软件行为监测数据库(200);
Android移动终端(100)包括内核Hook模块(110)、数据分析模块(120)和Hook日志模块(130);
内核Hook模块(110)包括依次交互的System_server进程(111)、libbind.so库(112)和ioctl函数(113),实现内核hook信息的提取;
数据分析模块(120)包括资源监测进程(121)、状态监测进程(122)、数据分析引擎(123)和数据处理进程(124);资源监测进程(121)和状态监测进程(122)分别与数据分析引擎(123)交互,数据分析引擎(123)和数据处理进程(124)交互,对软件行为异常的界定写入;
ioctl函数(113)和数据分析模块(120)交互,完成数据传输;
数据分析引擎(123)分别与Hook日志模块(130)和监测数据库(200)交互,完成软件行为特征的查询及日志写入;
数据处理进程(124)分别与Hook日志模块(130)和软件行为监测数据库(200)交互,对软件行为特征进行界定,将软件行为写入Hook日志模块(130),将界定的软件行为写入软件行为监测数据库(200)中。
2.按权利要求1所述的一种Android 平台软件异常行为检测系统,其特征在于内核Hook模块(110)的工作流程:
①利用ptrace系统函数,将Shellcode程序注入到System_server进程(111),ptrace提供了一种父进程可以控制子进程运行,它主要用于实现断点调试;
②利用ptrace系统函数,执行Shellcode中的代码:
Shellcode实际是一段代码,是利用了系统的特定漏洞的代码,可以获取更
高的权限;Shellcode经常是作为数据发送给受攻击系统的;
③Shellcode的代码在System_server进程(111)中运行,功能是调用Hook共享库;
④Hook共享库的功能是对System_server进程(111)中的libbind.so库(112)中调用的ioctl函数(113)进行功能劫持,将劫持数据进行输出重定向,输出至数据分析模块(130)进行数据解析,并将处理结果写入Hook日志模块(130)和软件行为监测数据库(200)。
3.按权利要求1所述的一种Android 平台软件异常行为检测系统,其特征在于所述的数据分析模块(120)的工作流程是:
①接收内核Hook模块(110)发送的数据;
②数据分析模块120对步骤①中所接收的数据进行分类解析,系统资源:读取IMEI或IMSI、、、读取GPS信息、连接摄像头服务和连接录音服务;系统状态:读写系统数据库信息
③数据分析引擎(120)对步骤②解析的数据与软件行为监测数据库(200)中app的权限做对比,将处理数据处理后,按app名称、操作时间、类型、次数及内容写入Hook日志模块(130)和软件行为监测数据库(200);
④根据操作的形成行为特征数据库,在app软件的操作中,数据处理进程124对软件行为做处理统计,并对软件行为与软件行为监测数据库(200)的数据做对比,如在统计时间内有明显异常,生成异常报告写入Hook日志模块(130)中;
⑤根据操作的形成行为特征数据库,在app软件的操作中,数据处理模块对软件行为做处理统计,并对软件行为与软件行为监测数据库(200)的数据做对比,如在统计时间内,没有明显异常,生成日志报告写入Hook日志模块(130)中。
4.按权利要求1所述的一种Android 平台软件异常行为检测系统,其特征在于所述的Hook日志模块(130)的工作流程是:
选用本地日志,主要是数据处理进(124)完成对软件行为界定后,基于统计结论,如果软件行为异常,则将异常信息生成异常报告写入Hook日志模块(130)中;如果软件行为正常,则将软件行为生成日志报告写入Hook日志模块(130)中。
5.按权利要求1所述的一种Android 平台软件异常行为检测系统,其特征在于软件行为监测数据库200的工作流程是:
软件行为监测数据库(200)为数据库模块,主要是完成数据的存储,将按app名称、操作时间、类型、
次数及内容写到数据库中,统计某些时段用户使用某种协议的次数、流量,达到安全统计和界定的目的。
Android平台软件异常行为检测系统
技术领域
[0001]本发明属于智能移动终端技术领域,尤其涉及一种Android平台软件异常行为检测系统。
背景技术
[0002]近年来,随着移动互联网的快速发展和智能手机生产成本的下降,很多 PC 功能也慢慢往手机端迁移,智能手机功能变得更强大, 如移动办公、 电子支付、 车载导航等, 智能移动终端软件的数量已远远超出传统 PC 上应用软件的数量。相对于PC来说,智能终端更贴近用户,渐渐成为人们工作、生活中不可或缺的一部分。Android和iOS占据了移动智能终端操作系统的重要的份额。
[0003]与 iOS上的应用软件相比较, 目前 Android应用软件的数量和用户数量已占据了绝对优势。由于Android阵营通过采用开放性策略,在其普及率越来越高的同时,也成为了黑客和恶意软件攻击的重要目标,Android平台安全问题不容忽视。
[0004]软件检测是 Android平台安全防护最重要的手段,目前智能终端软件检测技术大致可分为静态检测和动态检测:
静态检测在不运行目标软件的情况下,需要通过反编译等手段抽取程序的代码片段、API函数、语义逻辑等静态特征进行检测。该方法的特点是检测速度快、误报率低,检测效果取决于恶意软件特征码库的全面性。当恶意软件数量大、变
种多时,将使征码库迅速膨胀,在占据较大存储空间的同时,也会增大检索的复
杂度。而且容易受程序加壳等因素影响,无法应对经过混淆和多态技术处理的恶
意软件,无法检测未知恶意软件。
[0005]动态检测是指先将待检测的软件在终端上安装并运行,然后通过使用软件的各个功能来检测该软件对系统资源的使用情况。这些资源可以包括是否有擅自联网情况、是否有包括联系人等敏感信息的获取、是否未经提示请求内容、是否未经提示请求上传和下载文件等通过软件运行来检测软件是否符窃密、吸费、非法内容传播等异常行为。但动态监测过程需要在移动终端不断运行一个监测程序,将造成移动终端电量等资源的迅速耗尽,在一定程度上影响用户体验。另一方面,也在一定程度上造成用户对隐私泄露等方面的担忧。
发明内容
[0006]本发明的目的就在于克服现有技术的存在的缺点和不足,提出了一种Android 平台软件异常行为检测系统,为Android 平台上软件运行环境提供了安全保证。
[0007]实现本发明目的的技术方案是:
结合静态检测和动态检测的特点,结合数据分析、行为监测和Hook日志等信息有效地识别软件异常行为,并支持异常行为提供有效的查询及界定,为Android 智能终端使用提供安全保障。
[0008]具体地说,Android平台软件异常行为检测系统(简称系统)
本系统包括相互连通的Android移动终端和软件行为监测数据库;
Android移动终端包括内核Hook模块、数据分析模块和Hook日志模块;
内核Hook模块包括依次交互的System_server进程、libbind.so库和ioctl函数,实现内核hook信息的提取;
数据分析模块包括资源监测进程、状态监测进程、数据分析引擎和数据处理进程;资源监测进程和状态监测进程分别与数据分析引擎交互,数据分析引擎和数据处理进程交互,对软件行为异常的界定写入;
ioctl函数和数据分析模块交互,完成数据传输;
数据分析引擎分别与Hook日志模块和监测数据库交互,完成软件行为特征的查询及日志写入;
数据处理进程分别与Hook日志模块和软件行为监测数据库交互,对软件行为特征进行界定,将软件行为写入Hook日志模块,将界定的软件行为写入软件行为监测数据库中。[0009]本发明具有下列优点和积极效果:
①超前性:本发明是Hook敏感API检测的方法相结合的方法,提高软件异常检测的效率。
[0010]②准确性:越来越多的app恶意软件不仅仅停留在应用层面,更多的开始在应用框架层甚至内核层做一些恶意操作;这些新出现的恶意软件对病毒分析系统提出了新的需求;对敏感API函数接口Hook,能够监测出app软件的恶意行为操作。
[0011]③综合性:本发明不仅结合动态检测和静态检测的优点,通过对敏感API接口函数的Hook,有效的检测app软件的异常行为,通过对软件的异常行为的处理;用户可以通过检测Hook日志的方法或查询行为特征数据库,有效统计软件的操作系统行为特征。
附图说明
[0012]图1是本系统的结构方框图;
图2是Android binder通信机制示意图。
[0013]其中:
100—Android移动终端,
110—内核Hook模块,
111—System_server进程,
112—libbind.so库,
113—ioctl函数;
120—数据分析模块,
121—资源监测进程,
122—状态监测进程,
123—数据分析引擎,
124—数据处理进程;
130—Hook日志模块。
[0014]200—软件行为监测数据库。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论