[发明专利]一种病毒特征匹配方法、终端及计算机可读存储介质有效
申请号: | 201710813679.X | 申请日: | 2017-09-11 |
公开(公告)号: | CN107766729B | 公开(公告)日: | 2020-02-07 |
发明(设计)人: | 孟磊 | 申请(专利权)人: | 北京天融信网络安全技术有限公司;北京天融信科技有限公司;北京天融信软件有限公司 |
主分类号: | G06F21/56 | 分类号: | G06F21/56;G06F16/901 |
代理公司: | 11010 工业和信息化部电子专利中心 | 代理人: | 于金平 |
地址: | 100085 北京*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 病毒 特征 匹配 方法 终端 计算机 可读 存储 介质 | ||
1.一种病毒特征匹配方法,其特征在于,包括:
将病毒库映射到包含若干个连续比特位的位图上;
将从数据包中提取的文件内容复制到缓冲区;
利用预设窗口在所述缓冲区中选取出匹配区域,计算所述匹配区域在所述位图上的映射位置,根据映射位置判断是否匹配,滑动所述预设窗口,直到所述文件内容匹配结束;
其中,计算所述匹配区域在所述位图上的映射位置,根据映射位置判断是否匹配,包括:
采用哈希函数对所述匹配区域进行哈希计算,得到散列值,并对所述散列值取模,得到所述匹配区域在所述位图上的映射位置,其中,所述哈希函数为将病毒库映射到位图的过程中采用的不同的哈希函数中的一个;
判断所述映射位置在病毒库映射到位图的过程中是否被置位;
如果所述映射位置在病毒库映射到位图的过程中没有被置位,则滑动所述预设窗口,以在所述缓冲区中选取出下一个匹配区域;
如果所述映射位置在病毒库映射到位图的过程中被置位,则继续采用将病毒库映射到位图的过程中采用的不同的哈希函数中的下一个哈希函数对所述匹配区域进行哈希计算,直到将病毒库映射到位图的过程中采用的不同的哈希函数使用完毕。
2.如权利要求1所述的病毒特征匹配方法,其特征在于,将病毒库映射到包含若干个连续比特位的位图上,包括:
读取所述病毒库中当前病毒特征码的头部;
对所述当前病毒特征码的头部采用不同的哈希函数进行若干次哈希计算,得到若干个散列值,对所述若干个散列值取模,得到所述当前病毒特征码在所述位图上的若干个映射位置;
遍历所述病毒库中所有的病毒特征码,得到所述病毒库在所述位图上的映射位置。
3.如权利要求2所述的病毒特征匹配方法,其特征在于,所述预设窗口的长度与所述病毒特征码头部的读取长度相同。
4.如权利要求1所述的病毒特征匹配方法,其特征在于,还包括:
当在将病毒库映射到位图的过程中采用的不同的哈希函数使用完毕之后,得到的所有映射位置均被置位时,对所述匹配区域进行精确匹配;
如果所述精确匹配成功,则所述文件内容匹配结束;
如果所述精确匹配未成功,则滑动所述预设窗口,在所述缓冲区中选取出下一个匹配区域。
5.如权利要求1所述的病毒特征匹配方法,其特征在于,将从数据包中提取的文件内容复制到缓冲区,包括:
如果从数据包中提取的文件内容是待匹配文件的首部,直接将所述文件内容复制到缓冲区;
如果从数据包中提取的文件内容不是待匹配文件的首部,在将上一次提取的文件内容移动到缓冲区的开始后,将所述文件内容复制到缓冲区,并拼接在上一次提取的文件内容的后面。
6.如权利要求1所述的病毒特征匹配方法,其特征在于,在采用哈希函数对所述匹配区域进行哈希计算时,采用的第一个哈希函数为将病毒库映射到位图的过程中采用的不同的哈希函数中计算开销最小的一个。
7.如权利要求1所述的病毒特征匹配方法,其特征在于,所述位图位于物理内存上。
8.一种终端,其特征在于,所述终端包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现如权利要求1至7中任一项所述的病毒特征匹配方法的步骤。
9.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有病毒特征匹配程序,所述病毒特征匹配程序被处理器执行时实现如权利要求1至7中任一项所述的病毒特征匹配方法的步骤。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京天融信网络安全技术有限公司;北京天融信科技有限公司;北京天融信软件有限公司,未经北京天融信网络安全技术有限公司;北京天融信科技有限公司;北京天融信软件有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710813679.X/1.html,转载请声明来源钻瓜专利网。