[发明专利]Android系统的反病毒系统、方法及运行有该系统的设备在审
申请号: | 201310242442.2 | 申请日: | 2013-06-18 |
公开(公告)号: | CN104239791A | 公开(公告)日: | 2014-12-24 |
发明(设计)人: | 李卷孺;尹文基 | 申请(专利权)人: | 李卷孺;尹文基 |
主分类号: | G06F21/56 | 分类号: | G06F21/56 |
代理公司: | 上海东信专利商标事务所(普通合伙) 31228 | 代理人: | 杨丹莉;李丹 |
地址: | 200240 上海市闵*** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | android 系统 病毒 方法 运行 设备 | ||
技术领域
本发明涉及一种反病毒系统及方法,尤其涉及一种基于Android系统的反病毒系统及方法。
背景技术
目前大多数的反病毒系统都是基于签名识别的,这样的反病毒系统依赖于检测静态特征值或动态函数调用特征来进行对病毒和恶意软件的检测。举例来说,静态特征值可以是程序中的一段特定代码;动态函数调用特征可以是一组特定顺序的API调用。
现有的反病毒系统的实现主要包括基于签名和基于启发式这两种。这两种实现方法通过不同的方式来检测病毒和恶意软件:对于基于签名的反病毒方法来说,其是通过扫描每一个目标文件来寻找和已知病毒匹配的字节流来进行病毒检测;对于基于启发式的反病毒方法来说,其是扫描每一个文件匹配已知的典型操作特征,并累加分数来进行病毒评估。
相比较上述两种反病毒方法,基于程序执行过程监控的反病毒方法更精确,但由于程序执行过程监控反病毒技术需要对程序的执行进行有效的监视分析,在Android系统中实现起来有一定困难。近年来Android系统上出现了很多的反病毒系统,但所有的这些系统都没有使用细粒度动态程序执行过程监控反病毒技术。
发明内容
本发明的目的之一是提供一种Android系统的反病毒系统,其可以监控程序的动态信息,通过分析对比这些动态信息来监测病毒,实现对Android系统的精确安全保护。
本发明的另一目的是提供一种运行有Android系统的反病毒系统的设备,该设备可免受病毒的侵害。
本发明的又一目的是提供一种Android系统的反病毒方法,该方法可以实现对Android系统的精确安全保护。
为了实现上述目的,本发明提出了一种Android系统的反病毒系统,其包括:
一监视器,其在Android系统虚拟机层收集程序执行时的动态原始数据,并将其翻译为表示程序运行状态的可用数据后发送出去;
一反病毒引擎,其与所述监视器连接;
一恶意行为特征库,其与反病毒引擎连接,所述恶意行为特征库内存储有若干策略,所述各策略均包括恶意行为特征数据;
所述反病毒引擎接收监视器发送的可用数据,将其与恶意行为特征库内的恶意行为特征数据进行比对,以判断该程序是否做出了恶意行为。
本技术方案中的恶意行为特征数据与可用数据属于同一类数据,其均表征程序的运行状态。另外需要说明的是,在本技术方案中,可以是一个可用数据对应表示一种程序运行状态,也可以是多个可用数据的组合对应表示一种程序运行状态。因此,在判断程序做出了恶意行为时,可以是一个可用数据与恶意行为特征数据相符,也可以是多个可用数据的组合与恶意行为特征数据相符。
进一步地,上述Android系统的反病毒系统中涉及的策略还包括与恶意行为特征数据对应匹配的操作应对数据,所述反病毒引擎在判断程序做出了恶意行为时,根据该操作应对数据对恶意行为做出应对。也就是说,对于一个策略来说,其既包括与可用数据进行比对的恶意行为特征数据,还包括针对该种恶意行为的操作应对数据,从而使得反病毒引擎可以根据该操作应对数据做出应对。
更进一步地,所述操作应对数据包括:表征记录恶意行为的数据、表征拒绝恶意行为的数据、表征返回虚假信息的数据的至少其中之一,从而使得反病毒引擎根据这些数据可以分别对应地做出记录恶意行为、拒绝恶意行为和返回虚假信息的应对。
进一步地,上述Android系统的反病毒系统中的监视器包括:
具有监控功能的Dalvik虚拟机解释器模块,其执行程序且监控收集程序执行时的动态原始数据;
处理模块,其将动态原始数据翻译为表示程序运行状态的可用数据。
在该技术方案中,具有监控功能的虚拟机解释器模块替代了现有Android系统中的Dalvik虚拟机解释器,其兼容了现有的Dalvik指令集,在具有现有Android系统中Dalvik虚拟机解释器的功能的基础上,还能够监控获取程序执行时的各种动态原始数据,例如程序所属类信息、程序执行的方法信息、程序执行的指令信息等,然后由处理模块分析各个动态原始数据之间的关联,对动态原始数据代表的程序运行状态进行还原,即将动态原始数据翻译为表示程序运行状态的可用数据。
上述具有监控功能的虚拟机解释器模块的监控功能可以通过功能函数实现,功能函数分布在程序执行的各个环节,从初始化到结束运行,从而实现动态原始数据的监控和收集。
上述处理模块可以执行处理函数,从而对动态原始数据翻译为表示程序运行状态的可用数据。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于李卷孺;尹文基,未经李卷孺;尹文基许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201310242442.2/2.html,转载请声明来源钻瓜专利网。