一种恶意软件识别方法及装置制造方法及图纸

技术编号:36601279 阅读:14 留言:0更新日期:2023-02-04 18:16
本申请提供一种恶意软件识别方法及装置,该方法包括:获取恶意软件生产的流量数据包;对流量数据包进行分流存储,得到tcp链表;当tcp链表符合预设条件时,对tcp链表进行特征提取并记录,得到特征记录;基于SVM算法和特征记录进行训练,得到多个不同的恶意软件检测模型;获取输入的待检测流量;基于多个不同的恶意软件检测模型对待检测流量进行匹配识别,得到恶意软件识别结果。可见,实施这种实施方式,该方法能够训练出恶意软件检测模型,并以此来快速、高效地对恶意软件进行识别与检测。高效地对恶意软件进行识别与检测。高效地对恶意软件进行识别与检测。

【技术实现步骤摘要】
一种恶意软件识别方法及装置


[0001]本申请涉及网络安全术领域,具体而言,涉及一种恶意软件识别方法及装置。

技术介绍

[0002]随着互联网的飞速发展,恶意软件也随着开始快速传播,其中很多恶意软件通过变种或者混淆技术来逃过现有安全产品的检测,从而对被攻击的设备进行破坏或进行敏感信息的收集。可见,目前的安全产品并不能够快速、有效地对恶意软件进行识别与检测。

技术实现思路

[0003]本申请实施例的目的在于提供一种恶意软件识别方法及装置,能够训练出恶意软件检测模型,并以此来快速、高效地对恶意软件进行识别与检测。
[0004]本申请实施例第一方面提供了一种恶意软件识别方法,包括:
[0005]获取恶意软件生产的流量数据包;
[0006]对所述流量数据包进行分流存储,得到tcp链表;
[0007]当所述tcp链表符合预设条件时,对所述tcp链表进行特征提取并记录,得到特征记录;
[0008]基于SVM算法和所述特征记录进行训练,得到多个不同的恶意软件检测模型;
[0009]获取输入的待检测流量;
[0010]基于所述多个不同的恶意软件检测模型对所述待检测流量进行匹配识别,得到恶意软件识别结果。
[0011]在上述实现过程中,该方法可以优先获取恶意软件生产的流量数据包,从而以此来获取模型训练的基础数据。然后,该方法对流量数据包进行分流存储,得到tcp链表;可见,该步骤能够对流量数据包进行识别与分类,从而加快流量数据包的存储速度,并将同类型的流量数据包列入相同的tcp链表当中。然后,当tcp链表符合预设条件时,对tcp链表进行特征提取并记录,得到特征记录;可见,该方法可以在tcp链表足够长或者生成了足够多的时间时,自动对其特征进行提取,从而有效获取到大量用于训练模型的特征数据。再然后,该方法可以基于SVM算法和特征记录进行训练,得到多个不同的恶意软件检测模型;可见,该方法不似平常方法训练出一个最佳的模型,而是基于大量的特征记录训练出多个不同的恶意软件检测模型,从而使得该方法形成一个模型群检识别方法,进而保障恶意软件识别的精度。在得到多个恶意软件检测模型之后,该方法开始获取输入的待检测流量;并基于多个不同的恶意软件检测模型对待检测流量进行匹配识别,得到恶意软件识别结果;可见,该方法能够通过多个恶意软件检测模型对待检测流量进行识别,从而获取到准确的流量识别结果,并根据该流浪识别结果确定出生产该流量的软件是否为恶意软件。
[0012]进一步地,所述获取恶意软件生产的流量数据包的步骤包括:
[0013]通过预设抓包功能对恶意软件生产的流量进行pacp抓包,得到流量数据包。
[0014]在上述实现过程中,该方法具体可以通过预设抓包功能对恶意软件生产的流量进
行pacp抓包,得到流量数据包,可见,该方法可以通过各种抓包软件或者相应功能实现流量数据包的获取,从而使得流量获取的效率与效果变得更优秀。
[0015]进一步地,所述对所述流量数据包进行分流存储,得到tcp链表的步骤包括:
[0016]获取所述流量数据包的源目的IP和源目的端口;
[0017]基于所述源目的IP和所述源目的端口计算流量hash值;
[0018]基于所述流量hash值和链表数据结构保存所述流量数据包,得到tcp链表。
[0019]在上述实现过程中,该方法在对流量数据包进行分流存储,得到tcp链表的过程中,可以有线获取流量数据包的源目的IP和源目的端口;并基于源目的IP和源目的端口计算流量hash值。可见,该方法可以通过上述这种方式计算出对应的hash值,并以此来判定流量数据包的类型。然后,该方法还可以继续基于流量hash值和链表数据结构保存流量数据包,得到tcp链表;可见,该方法可以基于hash值进行有效的分流和链表结构的存储,从而保障该方法可以在后续过程中基于tcp链表进行类群式的分析与处理。
[0020]进一步地,所述当所述tcp链表符合预设条件时,对所述tcp链表进行特征提取并记录,得到特征记录的步骤包括:
[0021]当所述tcp链表符合预设条件时,对所述tcp链表进行解析,得到数据包负载、源目的端口和数据获取时间间隔;
[0022]对所述数据包负载、所述源目的端口和所述数据获取时间间隔进行记录,得到特征记录。
[0023]在上述实现过程中,该方法在对tcp链表进行特征提取并记录,得到特征记录的过程中可以优先对tcp链表进行解析,得到数据包负载、源目的端口和数据获取时间间隔;其中,该些数据特征能够有效的对后续过程起到正向作用。然后,该方法可以对数据包负载、源目的端口和数据获取时间间隔进行记录,得到特征记录。可见,该方法可以基于上述特征确定出tcp链表的记录文件,以便后续基于该记录文件进行模型训练。
[0024]进一步地,所述基于所述多个不同的恶意软件检测模型对所述待检测流量进行匹配识别,得到恶意软件识别结果的步骤包括:
[0025]对所述待检测流量进行分流存储,得到待检测链表;
[0026]对待检测链表进行特征提取并记录,得到待检测特征记录;
[0027]基于所述多个不同的恶意软件检测模型对所述待检测特征记录进行匹配识别,得到恶意软件识别结果。
[0028]在上述实现过程中,该方法在基于多个不同的恶意软件检测模型对待检测流量进行匹配识别,得到恶意软件识别结果的过程中可以优先对待检测流量进行分流存储,得到待检测链表;然后再对待检测链表进行特征提取并记录,得到待检测特征记录;最后,再基于多个不同的恶意软件检测模型对待检测特征记录进行匹配识别,得到恶意软件识别结果。可见,该方法可以对待检测流量进行预处理,从而使得恶意软件识别模型可以对预处理后的待检测特征记录进行识别,进而能够提高恶意软件识别的准确程度。
[0029]本申请实施例第二方面提供了一种恶意软件识别装置,所述恶意软件识别装置包括:
[0030]获取单元,用于获取恶意软件生产的流量数据包;
[0031]分流单元,用于对所述流量数据包进行分流存储,得到tcp链表;
[0032]记录单元,用于当所述tcp链表符合预设条件时,对所述tcp链表进行特征提取并记录,得到特征记录;
[0033]训练单元,用于基于SVM算法和所述特征记录进行训练,得到多个不同的恶意软件检测模型;
[0034]所述获取单元,还用于获取输入的待检测流量;
[0035]识别单元,用于基于所述多个不同的恶意软件检测模型对所述待检测流量进行匹配识别,得到恶意软件识别结果。
[0036]在上述实现过程中,该装置可以通过获取单元获取恶意软件生产的流量数据包;通过分流单元对流量数据包进行分流存储,得到tcp链表;通过记录单元在当tcp链表符合预设条件时,对tcp链表进行特征提取并记录,得到特征记录;通过训练单元基于SVM算法和特征记录进行训练,得到多个不同的恶意软件检测模型;通过获取单元获取输入的待检测流本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种恶意软件识别方法,其特征在于,包括:获取恶意软件生产的流量数据包;对所述流量数据包进行分流存储,得到tcp链表;当所述tcp链表符合预设条件时,对所述tcp链表进行特征提取并记录,得到特征记录;基于SVM算法和所述特征记录进行训练,得到多个不同的恶意软件检测模型;获取输入的待检测流量;基于所述多个不同的恶意软件检测模型对所述待检测流量进行匹配识别,得到恶意软件识别结果。2.根据权利要求1所述的恶意软件识别方法,其特征在于,所述获取恶意软件生产的流量数据包的步骤包括:通过预设抓包功能对恶意软件生产的流量进行pacp抓包,得到流量数据包。3.根据权利要求1所述的恶意软件识别方法,其特征在于,所述对所述流量数据包进行分流存储,得到tcp链表的步骤包括:获取所述流量数据包的源目的IP和源目的端口;基于所述源目的IP和所述源目的端口计算流量hash值;基于所述流量hash值和链表数据结构保存所述流量数据包,得到tcp链表。4.根据权利要求1所述的恶意软件识别方法,其特征在于,所述当所述tcp链表符合预设条件时,对所述tcp链表进行特征提取并记录,得到特征记录的步骤包括:当所述tcp链表符合预设条件时,对所述tcp链表进行解析,得到数据包负载、源目的端口和数据获取时间间隔;对所述数据包负载、所述源目的端口和所述数据获取时间间隔进行记录,得到特征记录。5.根据权利要求1所述的恶意软件识别方法,其特征在于,所述基于所述多个不同的恶意软件检测模型对所述待检测流量进行匹配识别,得到恶意软件识别结果的步骤包括:对所述待检测流量进行分流存储,得到待检测链表;对待检测链表进行特征提取并记录,得到待检测...

【专利技术属性】
技术研发人员:于海南
申请(专利权)人:北京天融信科技有限公司北京天融信软件有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1