一种基于云计算的恶意代码识别方法

文档序号:7893882阅读:133来源:国知局
专利名称:一种基于云计算的恶意代码识别方法
技术领域
本发明是一种基于云计算平台恶意代码识别的解决方案,主要解决当前恶意代码变异越来越快,靠传统的病毒库更新无法达到及时查杀等问题,属于病毒检测与防护领域。
背景技术
随着计算机技术的发展,尤其是计算机网络的飞速发展,恶意代码数量有着呈指数级增长的趋势。早期的恶意代码并没有采用过多的自我保护机制,都具有固定的特征码。因此,反病毒软件可以利用病毒特征码匹配很容易的检测出隐藏在系统中的病毒程序。但随着技术的发展,恶意代码纷纷采用自我保护技术对抗反病毒检测引擎。致使传统的基于 特征码定位杀毒引擎准确率大幅下降。云计算(cloud computing),是ー种基于互联网的计算方式,通过这种方式,共享的软硬件资源和信息可以按需提供给计算机和其他设备。整个运行方式很像电网。云计算是继1980年代大型计算机到客户端-服务器的大转变之后的又ー种巨变。用户不再需要了解“云”中基础设施的细节,不必具有相应的专业知识,也无需直接进行控制,用户只需要提交需求,云服务根据用户提交的数据计算出结果返回给用户。云计算通常涉及通过互联网来提供动态易扩展而且经常是虚拟化的资源。

发明内容
技术问题本发明的目的是提供一种基于云计算的恶意代码识别方法,需要解决的技术问题是,首先,当前的恶意代码变异速度加快,其依靠自身加密机制,通过不断变换加密密钥使得产生的代码主体相似度极低,而传统的基于特征码检测引擎没有办法识别,造成查杀率不断下降。其次,随着技术的发展,恶意代码中加入更多的自我保护技术,尤其对现行比较流行的虚拟机查杀机制展开对抗,使得在真实环境中很简单的代码在杀毒引擎的虚拟机里分析的过程变得异常复杂,最終达到无法识别的目的。这显然需要新的可行方案来解决当前环境下对恶意代码的识别,从而做到有效的防御。技术方案本发明的方法是ー种策略性的方法,通过引入云计算服务解决对未知代码的识别问题,具体是通过以下方案来实现的
一、体系结构
本方案的实现主要分为两部分应用用户端应用和服务器端应用。服务器端应用这里的服务器端应用泛指的是多个不同功能的服务器相互联接组成的服务器集群,对外表现为ー个整体,相互配合共同完成相应功能,包括哈希匹配服务器、恶意代码检测服务器和特征行为提取服务器。客户端应用为ー个功能简单的杀毒引擎,包括ニ进制特征码匹配引擎、行为特征匹配引擎、小型的ニ进制以及行为特征数据库和可疑代码提交系统。下面我们给出几个具体部分的说明
哈希匹配服务器主要功能为根据客户端提交的代码的哈希值,在服务器的哈希值数据库中进行查找,并返回結果,从而对客户端代码执行识别。
恶意代码检测服务器主要功能为对客户端提交的未知代码,通过服务器強大的计算能力,以及配合人工分析对其进行确定。特征行为提取服务器对确定的恶意代码行为进行分析,提取特征行为,并进行储存。ニ进制特征码匹配引擎用于对未知代码进行简单的ニ进制特征匹配。行为特征匹配引擎用于对未知代码进行深层次的行为特征匹配。小型的ニ进制以及行为特征数据库用于对常见的恶意代码进行快速识别。可疑代码提交系统对用户认为的可疑的未知代码提交给云服务器进行识别。ニ、方法流程 本发明的一种基于云计算的恶意代码识别方法所包含的步骤为
步骤I:用户通过网站或是其它形式下载安装客户端程序,并与服务器建立连接;
步骤2 :当用户对某个未知代码检测时,首先由本机的ニ进制特征引擎进行快速检测;步骤3 :当ニ进制特征引擎没有检测出结果,待检测代码会提交给行为特征检测引擎做比较准确的检测;
步骤4:行为特征检测引擎没有得到检测结果时,客户端会计算出待检测代码的哈希值提交给哈希匹配服务器检测;
步骤5:哈希匹配服务器根据客户端提交的待检测代码哈希值在数据库中查找,给出最終的检测结果;
步骤6 :用户向恶意代码检测服务器提交可疑文件进行检测;
步骤7 :恶意代码检测服务器利用自身的強大的检测引擎,以及利用病毒分析专家人エ检测的方式对用户提交的未知代码做准确的判断;
步骤8:恶意代码检测服务器将对确认为恶意代码的文件计算哈希值,提交给哈希匹配服务器,保存到其数据库,以便以后的哈希匹配检测;另外恶意代码检测服务器会将该文件提交给特征行为提取服务器;
步骤9 :特征行为提取服务器根据大量恶意代码检测服务器提交过来的行为特征相似的文件,提取其中的行为特征保存,并且会不定时的更新给客户端程序,以便客户端程序进行特征行为匹配检测。有益效果本发明方法提出了基于云计算的恶意代码识别方案,主要用于快速准确的识别恶意代码,达到保护系统不受恶意代码攻击的目的。下面我们给出具体的说明。
I.高效性
由于客户端只有ニ进制特征码匹配引擎和简单的行为特征匹配引擎,并且特征数据库中的特征比较少。如果没有识别出,客户端会简单的计算出代码的哈希值,提交给哈希匹配服务器进行匹配。整个过程比现行的杀毒引擎要快速高效。2.高识别率
由于采用了云计算服务,任何客户端识别出的恶意代码,系统都会计算出该代码的哈希值保存到哈希匹配服务器,以供其他客户端识别。另外,在客户端无法识别的未知代码,会通过可疑代码提交系统提交给云端恶意代码检测服务器。恶意代码检测服务器依靠自身的高性能处理能力,以及加上病毒分析专家的人工分析对被提交的代码做极其准确的判另IJ。
3.低误报率
由于采用了云计算服务,大量的对未知代码检测工作交由恶意代码检测服务器以及加上病毒分析专家的人工分析,判断的结果相对而言较为准确。4.轻巧性
本系统充分的发挥了云计算的优势,不再像传统的杀毒软件那样经常的更新病毒特征库。而是在客户端保存一份简单常用的特征库,而在云端服务器上更新一份比较全面完善的特征库。特征行为提取服务器根据大量类似的恶意代码提取出行为特征更新给用户数据库。


图I为系统整体架构图。图2为哈希匹配检测流程图。图3为可疑代码提交检测流程图。
具体实施例方式系统的主要工作流程如下
I.用户首先通过网络下载用户端程序,安装完成后用户电脑会拥有ー个功能简单的杀毒引擎,包括ニ进制特征码匹配引擎、行为特征匹配引擎、小型的ニ进制以及行为特征数据库和可疑代码提交系统。2.当用户选定对ー个未知代码进行检测吋,杀毒引擎会根据本地的小型ニ进制特征码数据库,对代码进行快速识别。3. ニ进制特征码匹配引擎匹配成功,告诉用户该代码为恶意代码。否则利用行为特征匹配引擎,对未知代码进行深层次分析。4.行为特征匹配引擎成功,告诉用户该代码为恶意代码。否则利用哈希算法计算出未知代码的哈希值,提交给哈希匹配服务器,
5.哈希匹配服务器根据用户提交的代码哈希值,利用服务器储存的哈希数据库进行匹配。匹配成功告诉用户,该代码为恶意代码。6.用户通过可疑代码提交系统将认为可疑的未知代码提交到恶意代码检测服务器,服务器利用自身強大的计算能力,以及结合人工分析手段对未知代码进行分析判断。确定为恶意代码,则计算出该代码的哈希值,提交给哈希匹配服务器,保存入数据库。并将该代码提交给特征行为提取服务器。否则不做任何处理。7.特征行为提取服务器对恶意代码检测服务器提交的恶意代码进行行为特征分析,提取行为特征保存,并更新给用户的行为特征数据库。为了方便描述,我们假定有如下基于云计算的恶意代码识别系统应用实例
假定用户Alice希望通过本系统对ー个未知代码进行识别检测,具体实施方式
如下步骤I =Alice首先下载并安装应用端程序,安装完成客户端电脑将拥有了四部分组件,包括ー个轻量级的ニ进制特征码数据库、ー个行为特征数据库、一个可疑代码提交系统、一个ニ进制特征码匹配引擎和ー个行为特征匹配引擎。步骤2 :客户端应用跟据用户选择的待检测代码,首先利用ニ进制特征码匹配引擎匹配,在一次初歩的识别,匹配成功则直接告诉Alice这是个恶意代码,否则提交行为特征匹配引擎。步骤3 :在ニ进制特征码匹配引擎匹配后没有得到准确结果时,行为特征匹配引擎会对被提交的未知代码进行匹配检测。行为特征匹配引擎会对未知代码做一次比较准确的检测,匹配成功则直接告诉Alice这是个恶意代码,否则计算未知代码的哈希值,提交给哈希匹配服务器。步骤4:哈希匹配服务器中保存着ー份数据库,包含大量已知恶意代码的哈希值。哈希匹配服务器会根据用户提交的未知代码哈希值,在数据库 中快速的查找。如果数据库中有该哈希值的记录,这告诉用户该文件为恶意代码,否则告诉用户该文件为安全文件。步骤5 :用户在对上述一系列检测依然有疑虑的话,可以通过客户端自带的可疑代码提交系统将未知代码提交给恶意代码检测服务器做一次全面的检测。步骤6 :恶意代码检测服务器中有着高性能的检测引擎,利用服务器的高性能配置对未知代码的所有行为进行模拟检測,另外还会配合病毒分析专家的人工分析,最终给未知代码ー个较为准确的判定結果。步骤7 :恶意代码检测服务器一旦确认了被检测的未知代码为恶意代码,会计算出该代码的哈希值,并提交给哈希匹配服务器进行保存以便以后的哈希匹配使用。步骤8 :恶意代码检测服务器会将确认的恶意代码提交一份给特征行为提取服务器,特征行为提取服务器根据大量行为类似的恶意代码提取出其共同的行为特征,保存到数据库,并对客户端程序做不定期的更新,以便客户端做行为特征匹配使用。
权利要求
1.一种基于云计算的恶意代码识别方法,其特征在于该方法所包含的步骤为 步骤I:用户通过网站或是其它形式下载安装客户端程序,并与服务器建立连接; 步骤2 :当用户对某个未知代码检测时,首先由本机的二进制特征引擎进行快速检测;步骤3 :当二进制特征引擎没有检测出结果,待检测代码会提交给行为特征检测引擎做比较准确的检测; 步骤4 :行为特征检测引擎没有得到检测结果时,客户端会计算出待检测代码的哈希值提交给哈希匹配服务器检测; 步骤5:哈希匹配服务器根据客户端提交的待检测代码哈希值在数据库中查找,给出最终的检测结果; 步骤6 :用户向恶意代码检测服务器提交可疑文件进行检测; 步骤7 :恶意代码检测服务器利用自身的强大的检测引擎,以及利用病毒分析专家人工检测的方式对用户提交的未知代码做准确的判断; 步骤8 :恶意代码检测服务器将对确认为恶意代码的文件计算哈希值,提交给哈希匹配服务器,保存到其数据库,以便以后的哈希匹配检测;另外恶意代码检测服务器会将该文件提交给特征行为提取服务器; 步骤9 :特征行为提取服务器根据大量恶意代码检测服务器提交过来的行为特征相似的文件,提取其中的行为特征保存,并且会不定时的更新给客户端程序,以便客户端程序进行特征行为匹配检测。
全文摘要
本发明是一种基于云计算的恶意代码识别方法,需要解决的技术问题是,首先,当前的恶意代码变异速度加快,其依靠自身加密机制,通过不断变换加密密钥使得产生的代码主体相似度极低,而传统的基于特征码检测引擎没有办法识别,造成查杀率不断下降。其次,随着技术的发展,恶意代码中加入更多的自我保护技术,尤其对现行比较流行的虚拟机查杀机制展开对抗,使得在真实环境中很简单的代码在杀毒引擎的虚拟机里分析的过程变得异常复杂,最终达到无法识别的目的。这显然需要新的可行方案来解决当前环境下对恶意代码的识别,从而做到有效的防御。
文档编号H04L29/06GK102664884SQ201210113780
公开日2012年9月12日 申请日期2012年4月18日 优先权日2012年4月18日
发明者付雄, 孙力娟, 季一木, 戴华, 王汝传, 雷迟骏, 韩志杰 申请人:南京邮电大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1