著录项信息
专利名称 | 一种病毒数据查找方法、装置及服务器 |
申请号 | CN201310648844.2 | 申请日期 | 2013-12-04 |
法律状态 | 授权 | 申报国家 | 中国 |
公开/公告日 | 2015-06-10 | 公开/公告号 | CN104700030A |
优先权 | 暂无 | 优先权号 | 暂无 |
主分类号 | G06F21/56 | IPC分类号 | G;0;6;F;2;1;/;5;6查看分类表>
|
申请人 | 腾讯科技(深圳)有限公司 | 申请人地址 | 广东省深圳市福田区振兴路赛格科技园2栋东403室
变更
专利地址、主体等相关变化,请及时变更,防止失效 |
权利人 | 腾讯科技(深圳)有限公司 | 当前权利人 | 腾讯科技(深圳)有限公司 |
发明人 | 管胜 |
代理机构 | 深圳市深佳知识产权代理事务所(普通合伙) | 代理人 | 唐华明 |
摘要
本发明实施例提供一种病毒数据查找方法、装置及服务器,其中方法包括:提取样本库中的数据样本的特征信息;建立所提取的各特征信息与对应数据样本的对应关系;采用分布式搜索引擎将各个特征信息,与预置的病毒数据特征信息进行比对;在所提取的特征信息与所述病毒数据特征信息相匹配时,通过所述对应关系确定与所述病毒数据特征信息相匹配的特征信息所对应的数据样本,将所确定的数据样本确定为病毒数据。本发明实施例实现了快速的病毒数据的查找。
1.一种病毒数据查找方法,其特征在于,包括:
提取样本库中的数据样本的特征信息;所述数据样本的特征信息包括:数据样本的基本信息,资源信息和程序代码信息;
建立倒排索引,所述倒排索引用于存储所提取的各特征信息在对应的数据样本中的存储位置的映射;
采用分布式搜索引擎将各个特征信息,与预置的病毒数据特征信息进行比对;
在所提取的特征信息与所述病毒数据特征信息相匹配时,通过倒排索引确定与所述病毒数据特征信息相匹配的特征信息所对应的数据样本,将所确定的数据样本确定为病毒数据。
2.根据权利要求1所述的方法,其特征在于,所述提取样本库中的数据样本的特征信息包括:
对各个数据样本的可执行程序文件进行拆解,得到各个数据样本所对应的基本信息和资源信息;及对各个数据样本的程序代码信息进行反编译,得到各个数据样本所对应的程序代码信息。
3.根据权利要求1所述的方法,其特征在于,还包括:
在所提取的特征信息与所述病毒数据特征信息不匹配时,通过倒排索引确定与所述病毒数据特征信息不匹配的特征信息所对应的数据样本,将所确定的数据样本确定为非病毒数据。
4.根据权利要求1-3任一项所述的方法,其特征在于,所述分布式搜索引擎为Lucene分布式搜索引擎。
5.一种病毒数据查找装置,其特征在于,包括:
特征信息提取模块,用于提取样本库中的数据样本的特征信息;所述数据样本的特征信息包括:数据样本的基本信息,资源信息和程序代码信息;
对应关系建立模块,用于建立所提取的各特征信息与对应数据样本的对应关系;
比对模块,用于采用分布式搜索引擎将各个特征信息,与预置的病毒数据特征信息进行比对;
病毒数据确定模块,用于在所提取的特征信息与所述病毒数据特征信息相匹配时,通过所述对应关系确定与所述病毒数据特征信息相匹配的特征信息所对应的数据样本,将所确定的数据样本确定为病毒数据;
其中,所述对应关系建立模块包括:
倒排索引建立单元,用于建立倒排索引,所述倒排索引用于存储所提取的各特征信息在对应的数据样本中的存储位置的映射;
所述病毒数据确定模块包括:
第一确定单元,用于通过倒排索引确定与所述病毒数据特征信息相匹配的特征信息所对应的数据样本;
第二确定单元,用于将所述第一确定单元所确定的数据样本,确定为病毒数据。
6.根据权利要求5所述的装置,其特征在于,所述特征信息提取模块包括:
拆解单元,用于对各个数据样本的可执行程序文件进行拆解,得到各个数据样本所对应的基本信息和资源信息;
反编译单元,用于对各个数据样本的程序代码信息进行反编译,得到各个数据样本所对应的程序代码信息。
7.根据权利要求5-6任一项所述的装置,其特征在于,还包括:
非病毒数据确定模块,用于在所提取的特征信息与所述病毒数据特征信息不匹配时,通过倒排索引确定与所述病毒数据特征信息不匹配的特征信息所对应的数据样本,将所确定的数据样本确定为非病毒数据。
8.一种服务器,其特征在于,包括权利要求5-7任一项所述的病毒数据查找装置。
一种病毒数据查找方法、装置及服务器\n技术领域\n[0001] 本发明涉及病毒数据技术领域,更具体地说,涉及一种病毒数据查找方法、装置及服务器。\n背景技术\n[0002] 在病毒数据分析与查杀领域,病毒数据的查找是一个非常重要的环节,正确的病毒数据的查找对于病毒数据的分析和杀死具有重要的意义;病毒数据的查找是指从海量的数据样本中发现病毒数据。\n[0003] 目前通常使用数据库的方式来进行病毒数据的查找,采用数据库的方式进行病毒数据的查找的方式主要为:创建数据表,对数据样本不同类型的信息在数据表中创建相应的字段;同时为了加速查找,还需要为每个字段创建数据库索引,如果字段的内容较大(比如字符串信息),则创建索引后的数据插入速度将较慢,从而使得病毒数据的查找速度也减慢。\n[0004] 本发明的发明人在研究和实践过程中发现,现有技术至少存在以下的技术问题:\n现有使用数据库进行病毒数据查找的方式,对于具有较大内容字段的数据样本,其病毒数据的查找速度较慢,病毒数据的查找效率较低;因此急需提供一种新的病毒数据查找方法,以提高病毒数据的查找速度。\n发明内容\n[0005] 有鉴于此,本发明实施例提供一种病毒数据查找方法、装置及服务器,以解决现有病毒数据查找方式所存在的对于具有较大内容字段的数据样本,其病毒数据的查找速度较慢的问题。\n[0006] 为实现上述目的,本发明实施例提供如下技术方案:\n[0007] 一种病毒数据查找方法,包括:\n[0008] 提取样本库中的数据样本的特征信息;\n[0009] 建立所提取的各特征信息与对应数据样本的对应关系;\n[0010] 采用分布式搜索引擎将各个特征信息,与预置的病毒数据特征信息进行比对;\n[0011] 在所提取的特征信息与所述病毒数据特征信息相匹配时,通过所述对应关系确定与所述病毒数据特征信息相匹配的特征信息所对应的数据样本,将所确定的数据样本确定为病毒数据。\n[0012] 一种病毒数据查找装置,包括:\n[0013] 特征信息提取模块,用于提取样本库中的数据样本的特征信息;\n[0014] 对应关系建立模块,用于建立所提取的各特征信息与对应数据样本的对应关系;\n[0015] 比对模块,用于采用分布式搜索引擎将各个特征信息,与预置的病毒数据特征信息进行比对;\n[0016] 病毒数据确定模块,用于在所提取的特征信息与所述病毒数据特征信息相匹配时,通过所述对应关系确定与所述病毒数据特征信息相匹配的特征信息所对应的数据样本,将所确定的数据样本确定为病毒数据。\n[0017] 一种服务器,包括上述所述的病毒数据查找装置。\n[0018] 基于上述技术方案,本发明实施例提供的病毒数据查找方法,通过建立所提取的各特征信息与对应数据样本的对应关系,在所提取的特征信息与所述病毒数据特征信息相匹配时,即可通过所建立的对应关系,确定出与所述病毒数据特征信息相匹配的特征信息所对应的所有数据样本,从而实现快速的病毒数据的查找;即使对于具有较大内容字段的特征信息,本发明实施例也可通过一个特征信息的比对,确定出与该特征信息所对应的数据样本是否为病毒数据,从而提高了病毒数据的查找速度。\n附图说明\n[0019] 为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。\n[0020] 图1为本发明实施例提供的一种病毒数据查找方法的流程图;\n[0021] 图2为本发明实施例提供的病毒数据查找方法的另一流程图;\n[0022] 图3为本发明实施例提供的病毒数据查找装置的结构框图;\n[0023] 图4为本发明实施例提供的对应关系建立模块的结构框图;\n[0024] 图5为本发明实施例提供的病毒数据确定模块的结构框图;\n[0025] 图6为本发明实施例提供的特征信息提取模块的结构框图;\n[0026] 图7为本发明实施例提供的病毒数据查找装置的另一结构框图;\n[0027] 图8为本发明实施例提供的服务器的硬件结构图。\n具体实施方式\n[0028] 为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。\n[0029] 图1为本发明实施例提供的一种病毒数据查找方法的流程图,参照图1,该方法可以包括:\n[0030] 步骤S100、提取样本库中的数据样本的特征信息;\n[0031] 样本库中所存储的数据样本为待处理的数据样本,其中包括了正常的数据样本和恶意的数据样本(病毒数据),本发明的目的即是从样本库的众多数据样本中查找出病毒数据;\n[0032] 特征信息可以是数据样本之间可以用作相互区分的特征;可选的,数据样本的特征信息可以包括:基本信息,资源信息和程序代码信息;其中,基本信息可以如数据样本对应的软件名,版本号,数据大小,证书,签名等;资源信息可以为数据样本对应的程序所使用到的资源文件;程序代码信息可以如数据样本对应程序的常量字符串,属性,代码树等;\n[0033] 可选的,本发明实施例可对各个数据样本的可执行程序文件进行拆解,从而得到各个数据样本所对应的基本信息和资源信息,也可对各个数据样本的程序代码信息进行反编译,从而得到各个数据样本所对应的程序代码信息。\n[0034] 步骤S200、建立所提取的各特征信息与对应数据样本的对应关系;\n[0035] 本发明实施例可建立所提取的各特征信息与对应数据样本的对应关系,由于各个数据样本所提取的特征信息可能相同也可能不同,因此具有相同的特征信息的数据样本之间,可通过相同的特征信息进行关联;\n[0036] 可选的,本发明实施例可通过建立倒排索引的方式来建立各特征信息与对应数据样本的对应关系,倒排索引也被称为反向索引,可用于存储在全文搜索下所提取的各特征信息在对应的数据样本中的存储位置的映射(即建立一个映射表,以表示各个特征信息所对应的数据样本);通过倒排索引,可以根据特征信息快速获取包含这个特征信息的数据样本。\n[0037] 步骤S300、采用分布式搜索引擎将各个特征信息,与预置的病毒数据特征信息进行比对;\n[0038] 预置的病毒数据特征信息是病毒数据的关键特征,具有病毒数据特征信息的数据可以认为是病毒数据;\n[0039] 可选的,可采用Lucene(用于全文检索和搜寻的开源程式库)分布式搜索引擎将各个特征信息,与病毒数据特征信息进行比对。\n[0040] 步骤S400、在所提取的特征信息与所述病毒数据特征信息相匹配时,通过所述对应关系确定与所述病毒数据特征信息相匹配的特征信息所对应的数据样本,将所确定的数据样本确定为病毒数据。\n[0041] 可选的,本发明实施例可通过倒排索引确定与所述病毒数据特征信息相匹配的特征信息所对应的数据样本;具体的,本发明实施例在建立倒排索引的过程中,可将所有样本的所有特征信息加入到映射表中,可通过映射表中的特征信息与预置的病毒数据特征信息进行比对,从而确定出映射表中与病毒数据特征信息相匹配的特征信息,从而通过映射表快速的确定出与病毒数据特征信息相匹配的特征信息所对应的所有数据样本,这些确定出的数据样本即为病毒数据。\n[0042] 本发明实施例提供的病毒数据查找方法,通过建立所提取的各特征信息与对应数据样本的对应关系,在所提取的特征信息与所述病毒数据特征信息相匹配时,即可通过所建立的对应关系,确定出与所述病毒数据特征信息相匹配的特征信息所对应的所有数据样本,从而实现快速的病毒数据的查找;即使对于具有较大内容字段的特征信息,本发明实施例也可通过一个特征信息的比对,确定出与该特征信息所对应的数据样本是否为病毒数据,从而提高了病毒数据的查找速度。\n[0043] 图2为本发明实施例提供的病毒数据查找方法的另一流程图,结合图1和图2所示,图2所示方法在图1所示方法基础上,还包括:\n[0044] 步骤S500、在所提取的特征信息与所述病毒数据特征信息不匹配时,通过所述对应关系确定与所述病毒数据特征信息不匹配的特征信息所对应的数据样本,将所确定的数据样本确定为非病毒数据。\n[0045] 可选的,本发明实施例可通过倒排索引确定与所述病毒数据特征信息不配的特征信息所对应的数据样本;具体的,本发明实施例在建立倒排索引的过程中,可将所有样本的所有特征信息加入到映射表中,可通过映射表中的特征信息与预置的病毒数据特征信息进行比对,从而确定出映射表中与病毒数据特征信息不匹配的特征信息,从而通过映射表快速的确定出与病毒数据特征信息不匹配的特征信息所对应的所有数据样本,这些确定出的数据样本即为非病毒数据。\n[0046] 为验证本发明实施例提供的病毒数据查找方法的优越性,现将现有采用数据库进行病毒数据查找的方式,与本发明实施例提供的采用搜索引擎进行病毒数据查找的方式进行比对,下表体现了具体的性能比对结果可进行参照。\n[0047]\n对比项 现有技术 本发明\n样本数(万) 700 700\n使用设备数(台) 16 8\n时间/次 大于20分钟 小于1秒\n实时性 不支持 支持\n特征管理 不方便 方便\n[0048] 下面对本发明实施例提供的病毒数据查找装置进行介绍,下文描述的病毒数据查找装置与上文描述的病毒数据查找方法相对应,两者可相互参照。\n[0049] 图3为本发明实施例提供的病毒数据查找装置的结构框图,参照图3,该装置可以包括:\n[0050] 特征信息提取模块100,用于提取样本库中的数据样本的特征信息;\n[0051] 对应关系建立模块200,用于建立所提取的各特征信息与对应数据样本的对应关系;\n[0052] 比对模块300,用于采用分布式搜索引擎将各个特征信息,与预置的病毒数据特征信息进行比对;\n[0053] 病毒数据确定模块400,用于在所提取的特征信息与所述病毒数据特征信息相匹配时,通过所述对应关系确定与所述病毒数据特征信息相匹配的特征信息所对应的数据样本,将所确定的数据样本确定为病毒数据。\n[0054] 可选的,图4示出了对应关系建立模块200的一种可选结构,参照图4,对应关系建立模块200可以包括:\n[0055] 倒排索引建立单元210,用于建立倒排索引,所述倒排索引用于存储所提取的各特征信息在对应的数据样本中的存储位置的映射。\n[0056] 对应的,图5示出了病毒数据确定模块400的一种可选结构,参照图5,病毒数据确定模块400可以包括:\n[0057] 第一确定单元410,用于通过倒排索引确定与所述病毒数据特征信息相匹配的特征信息所对应的数据样本;\n[0058] 第二确定单元420,用于将第一确定单元410所确定的数据样本,确定为病毒数据。\n[0059] 可选的,在本发明实施例中特征信息可以包括:数据样本的基本信息,资源信息和程序代码信息;对应的,图6示出了特征信息提取模块100的一种可选结构,参照图6,特征信息提取模块100可以包括:\n[0060] 拆解单元110,用于对各个数据样本的可执行程序文件进行拆解,得到各个数据样本所对应的基本信息和资源信息;\n[0061] 反编译单元120,用于对各个数据样本的程序代码信息进行反编译,得到各个数据样本所对应的程序代码信息。\n[0062] 图7示出了本发明实施例提供的病毒数据查找装置的另一结构,结合图3和图7所示,图7所示装置在图3所示装置的基础上还包括:\n[0063] 非病毒数据确定模块500,用于在所提取的特征信息与所述病毒数据特征信息不匹配时,通过所述对应关系确定与所述病毒数据特征信息不匹配的特征信息所对应的数据样本,将所确定的数据样本确定为非病毒数据。\n[0064] 本发明实施例实现了快速的病毒数据的查找,即使对于具有较大内容字段的特征信息,本发明实施例也可通过一个特征信息的比对,确定出与该特征信息所对应的数据样本是否为病毒数据,从而提高了病毒数据的查找速度。\n[0065] 本发明实施例还提供一种服务器,包括上述所述的病毒数据查找装置,病毒数据查找装置可参照上文图3~图7部分的描述,此处不再赘述。\n[0066] 下面对本发明实施例提供的服务器的硬件结构进行介绍,下文描述中涉及病毒数据查找方法的部分,可与上文描述的病毒数据查找方法相对应参照。\n[0067] 图8为本发明实施例提供的服务器的硬件结构图,参照图8,服务器可以包括:通信接口1,存储器2,处理器3和通信总线4。\n[0068] 下面结合图8对服务器的各个构成部件进行具体介绍。\n[0069] 通信接口1可以为通信模块的接口,如网卡的接口,用于在服务器与外部设备进行信息收发过程中,实现信号的接收和发送。\n[0070] 存储器2可用于存储软件程序以及模块,处理器3通过运行存储在存储器2的软件程序以及模块,从而执行服务器的各种功能应用以及数据处理。存储器2可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据服务器的使用所创建的数据(比如音频数据、电话本等)等。此外,存储器2可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。\n[0071] 处理器3是服务器的控制中心,利用各种接口和线路连接整个服务器的各个部分,通过运行或执行存储在存储器2内的软件程序和/或模块,以及调用存储在存储器2内的数据,执行服务器的各种功能和处理数据,从而对服务器进行整体监控。可选的,处理器3可包括一个或多个处理单元;优选的,处理器3可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器3中。\n[0072] 通信接口1,存储器2,处理器3通过通信总线4完成相互间的通信。\n[0073] 在本发明实施例中,处理器3还可以具有如下功能:\n[0074] 提取样本库中的数据样本的特征信息;\n[0075] 建立所提取的各特征信息与对应数据样本的对应关系;\n[0076] 采用分布式搜索引擎将各个特征信息,与预置的病毒数据特征信息进行比对;\n[0077] 在所提取的特征信息与所述病毒数据特征信息相匹配时,通过所述对应关系确定与所述病毒数据特征信息相匹配的特征信息所对应的数据样本,将所确定的数据样本确定为病毒数据。\n[0078] 本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。\n[0079] 专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。\n[0080] 结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。\n[0081] 对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。\n对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
法律信息
- 2017-12-01
- 2015-09-23
实质审查的生效
IPC(主分类): G06F 21/56
专利申请号: 201310648844.2
申请日: 2013.12.04
- 2015-06-10
引用专利(该专利引用了哪些专利)
序号 | 公开(公告)号 | 公开(公告)日 | 申请日 | 专利名称 | 申请人 |
1
| |
2008-11-19
|
2008-06-30
| | |
2
| |
2013-08-28
|
2012-12-27
| | |
3
| |
2013-04-17
|
2012-12-11
| | |
被引用专利(该专利被哪些专利引用)
序号 | 公开(公告)号 | 公开(公告)日 | 申请日 | 专利名称 | 申请人 | 该专利没有被任何外部专利所引用! |