CN113259313A - 一种基于在线训练算法的恶意https流量智能分析方法 - Google Patents
一种基于在线训练算法的恶意https流量智能分析方法 Download PDFInfo
- Publication number
- CN113259313A CN113259313A CN202110339731.9A CN202110339731A CN113259313A CN 113259313 A CN113259313 A CN 113259313A CN 202110339731 A CN202110339731 A CN 202110339731A CN 113259313 A CN113259313 A CN 113259313A
- Authority
- CN
- China
- Prior art keywords
- connection
- ssl
- malicious
- https
- certificate
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/14—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
- H04L63/1408—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
- H04L63/1425—Traffic logging, e.g. anomaly detection
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/214—Generating training patterns; Bootstrap methods, e.g. bagging or boosting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
- G06F18/241—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/14—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
- H04L63/1441—Countermeasures against malicious traffic
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- General Engineering & Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Theoretical Computer Science (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Artificial Intelligence (AREA)
- Evolutionary Biology (AREA)
- Evolutionary Computation (AREA)
- Physics & Mathematics (AREA)
- Bioinformatics & Computational Biology (AREA)
- General Physics & Mathematics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Life Sciences & Earth Sciences (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了一种基于在线训练算法的恶意HTTPS流量智能分析方法,包括对数据集中恶意HTTPS流量和正常HTTPS流量进行预处理生成训练集;对训练集中每个连接四元组对应的特征进行提取得到连接特征、SSL特征、证书特征;基于Pegasos算法利用连接四元组对应的连接特征、SSL特征、证书特征对所采用的恶意HTTPS流量智能分析模型进行训练,得到符合预设条件的恶意HTTPS流量智能分析模型;采用训练后的恶意HTTPS流量智能分析模型对待检测的HTTPS流量进行智能分析,输出为恶意HTTPS流量或正常HTTPS流量的分析结果。本发明不需要解密HTTPS流量,对于实时流量检测的支持更好,效率更高。
Description
技术领域
本申请属于信息安全技术领域,具体涉及一种基于在线训练算法的恶意HTTPS流量智能分析方法。
背景技术
目前,网络安全形势已进入崭新的时代,面向各种新的战场和市场,需要新的架构、新的方法来支撑应对越来越多艰巨的任务,而大力发展信息系统安全检测和验证技术,特别是发展针对高级网络攻击的智能检测分析技术,实现信息系统的安全可控,以寻求在网络空间对抗中的领先地位已迫在眉睫。
针对高级网络攻击的智能检测中,一种常用的方法是基于网络数据包各维度数据特征进行攻击检测(如源/目的IP、端口号、协议类型等),另一种则是以网络流量的统计特性作为特征进行攻击检测(如流量熵、主机之间的字节流量数等)。由于检测器依赖程序产生的流量,而不能直接观察恶意程序的活动,因此恶意程序有许多途径可以逃避基于网络流量分析的检测。如使用超文本传输安全协议(Hyper Text Transfer Protocol Secure,缩写:HTTPS),目前使用加密通信的恶意软件家族超过200种,占比超过40%,几乎覆盖了所有常见类型,如:特洛伊木马、勒索软件、感染式、蠕虫病毒、下载器等,其中特洛伊木马和下载器类的恶意软件家族占比较高。
近年来,随着人工智能类学科的兴起,人工智能与机器学习学科的方法与理论,在各个计算机研究分支方向上,得到了广泛的应用。在恶意加密流量识别领域,机器学习方法也是学界探讨的热点。有研究提出了一种通过检测与TLS(Transport Layer Security,传输层安全性协议)流相关联的前向后向DNS(Domain Name System,域名系统)和HTTP(HyperText Transport Protocol,超文本传输协议)流中的关键信息来判断恶意TLS流量的方法,但该方法依赖于流量的五元组特征。有研究将原始流量用作卷积神经网络分类器的输入,分类出不同应用的SSL(Secure Sockets Layer,安全套接层协议层)流量,但该方法使用的数据集采集环境单一。有研究通过n-gram方法将流中的域名字符串分段为多个重叠的子串,作为LSTM网络的输入,达到识别加密流量恶意域名的目的,但该方法仅使用了一种特征,无法对域名更新频率极快的恶意流量进行检测。在五元组信息复杂的复杂网络环境下,若将恶意流量的频繁更换的五元组信息作为重要特征,会对模型识别精度产生影响。若把流量的五元组特征去除后,再次使用这些方法检测加密恶意流量,其识别率大大降低。
当前常用的基于网络数据包和网络流量的统计特性的分析方法无法应对流量加密的情况,而已有的识别恶意加密流量的检测方法存在精度低、特征少等缺陷。尽管学术界和工业界对高级网络攻击智能分析发现提出了一系列的解决方案(如特征检测方案、异常检测方案、大数据分析方案等),但是高级网络攻击的多样性、隐蔽性和样本稀缺性给检测带来了极大的困难,主要表现在:
在大规模网络侧,恶意HTTPS流量分析效率低且检测精度差。目前使用加密通信的恶意软件家族超过200种,对恶意软件产生的HTTPS流量进行智能分析已成为重要研究方向。传统识别恶意加密流量的方法主要有安装拦截代理和基于报文负载检测,但是也存在部署拦截代理成本高、实时匹配负载压力大等问题。而随着人工智能类学科的兴起,研究者开始利用机器学习进行恶意流量识别,但是其存在着特征提取手段单一、特征利用少等问题,无法满足真实复杂环境下高效率、高精度的需求。
发明内容
本申请的目的在于提供一种基于在线训练算法的恶意HTTPS流量智能分析方法,极大地提高恶意HTTPS流量检测效率和精度。
为实现上述目的,本申请所采取的技术方案为:
一种基于在线训练算法的恶意HTTPS流量智能分析方法,所述基于在线训练算法的恶意HTTPS流量智能分析方法,包括:
步骤1、获取数据集,该数据集中包含恶意HTTPS流量和正常HTTPS流量;
步骤2、对数据集中的恶意HTTPS流量和正常HTTPS流量进行预处理生成训练集,包括:
步骤2.1、首先使用深度包检测对恶意HTTPS流量和正常HTTPS流量进行解析,生成三个log日志文件;
步骤2.2、对log日志文件进行SSL聚合,得到包含源IP、目的IP、目的端口、传输层协议的连接四元组;
步骤2.3、根据连接四元组对三个log日志文件中的信息进行分类聚合,完成以连接四元组为单位的特征提取,以连接四元组、特征、以及连接四元组对应的HTTPS流量为恶意或正常的标签作为训练集;
步骤3、对训练集中每个连接四元组对应的特征进行提取得到连接特征、SSL特征、证书特征;
步骤4、基于Pegasos算法利用每个连接四元组对应的连接特征、SSL特征、证书特征对所采用的恶意HTTPS流量智能分析模型进行训练,得到符合预设条件的恶意HTTPS流量智能分析模型;
步骤5、采用训练后的恶意HTTPS流量智能分析模型对待检测的HTTPS流量进行智能分析,输出为恶意HTTPS流量或正常HTTPS流量的分析结果。
以下还提供了若干可选方式,但并不作为对上述总体方案的额外限定,仅仅是进一步的增补或优选,在没有技术或逻辑矛盾的前提下,各可选方式可单独针对上述总体方案进行组合,还可以是多个可选方式之间进行组合。
作为优选,所述三个log日志文件包括conn.log文件、ssl.log文件和x509.log文件;
所述conn.log文件提供了数据集中流量聚合后的连接记录,所述连接记录包括源IP、目的IP、目的端口、传输层协议、连接状态、数据包数量、标签、持续时间;所述ssl.log文件提供了数据集中流量聚合后的ssl记录,所述ssl记录包括SSL/TLS版本、使用的密码、服务器名称、证书路径、SSL主题(需要说明的是,本申请中小写的ssl和大写的SSL表达的含义相同,仅为了适应不同词汇采用不同形式的写法)、发行者;所述x509.log文件提供数据集中流量的证书记录,所述证书记录包括证书序列号、常用名称、时间有效性、x509主题、签名算法、以位为单位的密钥长度。
作为优选,所述根据连接四元组对三个log日志文件中的信息进行分类聚合,完成以连接四元组为单位的特征提取,包括:
步骤2.3.1、从ssl.log文件中读取一条ssl记录,获取其使用的密码,根据使用的密码在conn.log文件中查找唯一的连接记录,并获取对应的连接四元组和标签,若查找到的连接记录没有相应的标签或者没有找到连接记录则跳至下一条ssl记录重新执行;
步骤2.3.2、若连接四元组以及标签成功找到,则根据ssl记录的证书路径在x509.log文件中查找证书第一路径为该证书路径的证书记录,若未查找到相应的证书记录则跳至下一条ssl记录重新执行;
步骤2.3.3、若成功找到证书记录,则将对应的ssl记录、连接记录和证书记录所包含的内容作为特征,以连接四元组为单元连同标签存入训练集作为一条训练样本。
作为优选,所述对训练集中每个连接四元组对应的特征进行提取得到连接特征、SSL特征、证书特征,包括:
步骤3.1、连接特征是来自连接记录的特征,具体包含SSL聚合和连接记录的数量、SSL聚合和连接记录的持续时间均值、SSL聚合和连接记录的持续时间范围的标准差、来自originator的payload字节数、来自responder的payload字节数;
步骤3.2、SSL特征是来自SSL记录的特征,具体包含连接记录和SSL聚合的比率、自签名证书比率;
步骤3.3、证书特征是来自证书记录的特征,具体包含捕获期间证书周期的有效性、证书的年龄均值。
作为优选,所述对log日志文件进行SSL聚合,得到包含源IP、目的IP、目的端口、传输层协议的连接四元组,包括:
从log日志文件中提取出多个SSL握手包;
从SSL握手包中提取源IP、目的IP、目的端口、传输层协议组成连接四元组。
作为优选,所述基于Pegasos算法利用每个连接四元组对应的连接特征、SSL特征、证书特征对所采用的恶意HTTPS流量智能分析模型进行训练,得到符合预设条件的恶意HTTPS流量智能分析模型,包括:
步骤4.1、取待训练的恶意HTTPS流量智能分析模型;
步骤4.2、将连接四元组对应的连接特征、SSL特征、证书特征输入至恶意HTTPS流量智能分析模型中;
步骤4.3、获取恶意HTTPS流量智能分析模型输出的对当前连接四元组进行检测分析得到的预测标签;
步骤4.4、由安全专家对预测标签进行核对,若预测标签与当前连接四元组真实的标签不相符,则保存当前连接四元组并通过Pegasos算法更新恶意HTTPS流量智能分析模型的模型参数,执行下一步;若预测标签与当前连接四元组真实的标签相符,则直接执行下一步;
步骤4.5、获取新的连接四元组对应的连接特征、SSL特征、证书特征并重复执行步骤4.2,直至得到符合预设条件的恶意HTTPS流量智能分析模型。
本申请提供的基于在线训练算法的恶意HTTPS流量智能分析方法,本申请不需要解密HTTPS流量,对于实时流量检测的支持更好,效率更高。在线学习方法每次训练只利用当前到达的样本来更新模型,从而有效降低了学习复杂度。并且在线学习方法能够对根据线上反馈数据实时快速地更新模型,提高预测准确率。
附图说明
图1为本申请的基于在线训练算法的恶意HTTPS流量智能分析方法的流程图;
图2为本申请训练恶意HTTPS流量智能分析模型的流程图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
除非另有定义,本文所使用的所有的技术和科学术语与属于本申请的技术领域的技术人员通常理解的含义相同。本文中在本申请的说明书中所使用的术语只是为了描述具体的实施例的目的,不是在于限制本申请。
其中一个实施例中,提供一种基于在线训练算法的恶意HTTPS流量智能分析方法,以解决恶意HTTPS流量分析效率低且精度差为目标,本申请构建基于机器学习和在线训练算法的恶意加密流量分析发现流程,极大地提高恶意HTTPS流量检测效率和精度。
本申请基于在线训练的恶意HTTPS流量智能分析分为两方面,一方面通过数据预处理的方式将加密流量做深度包解析得到文件日志并做进一步关联分析来提取有效特征,最终利用支持向量机等在线训练算法模型进行训练和预测,在对原始流量不进行解密的基础上实现高精度恶意流量检测分析。另一方面,将分析结果作为对HTTPS恶意流量的初步筛选,进而与传统检测分析手段相结合对可疑的流量再进一步解密确认,最终提升恶意加密流量整体检测分析的效率。
如图1所示,具体的,本实施例的基于在线训练算法的恶意HTTPS流量智能分析方法,包括以下步骤:
步骤1、获取数据集,该数据集中包含恶意HTTPS流量和正常HTTPS流量。
本实施例提出方法中重要基础部分为数据收集,数据的真实性和可靠性直接决定着后期训练得到模型的有效性。对此,拟采用的数据集有:CTU-13数据集、MCFP数据集、模拟正常流量集。
CTU-13数据集:CTU-13数据集是2011年在捷克共和国CTU大学捕获的。CTU-13数据集中包含了13个真实环境下恶意软件的HTTPS流量及正常情况下的HTTPS流量。
MCFP数据集:该数据集来自于Stratosphere Malware Capture Facility项目,由Maria Jose Erquiaga完成收集。通过在虚拟机运行恶意软件,共收集了53个恶意软件的HTTPS流量及6个正常情况下HTTPS流量集。
模拟正常流量集:由于CTU-13数据集和MCFP数据集主要包含了各种恶意软件的HTTPS流量,缺乏正常HTTPS流量作为对照组,本发明将模拟捕获更多的正常流量,即访问一系列主流网站,利用Wireshark抓取筛选其中的HTTPS流量。
步骤2、对数据集中的恶意HTTPS流量和正常HTTPS流量进行预处理生成训练集,包括:
步骤2.1、首先使用深度包检测(DIP技术)对恶意HTTPS流量和正常HTTPS流量进行解析,生成三个log日志文件。
以上三个数据集收集的流量数据均包含在pcap文件中,首先使用DIP(深度包解析流量)进行处理,生成相应的日志文件再进行处理。DIP可选用开源组件实现,比如Bro IDS是一个开源的网络流量分析器,本身是用作安全监控使用,但是它支持广泛的流量分析任务,本发明拟利用其强大的流量分析功能对众pcap文件进行预处理,生成相应的网络活动日志文件,日志文件文件如表1所示。
表1深度解析生成的日志文件
所述conn.log文件提供了数据集中流量聚合后的连接记录,每一行聚合一组数据包,并描述两个端点之间的连接。各连接记录包括源IP、目的IP、目的端口、传输层协议、连接状态、数据包数量、标签、持续时间等信息。
所述ssl.log文件提供了数据集中流量聚合后的ssl记录,描述了SSL/TLS握手和加密连接建立过程,各ssl记录包括SSL/TLS版本、使用的密码、服务器名称、证书路径、SSL主题(包括公用名称、单位名称、证书申请单位所在地和其他字段(如电子邮件、电话号码、地址、邮政编码等)、发行者等信息。
所述x509.log文件提供数据集中流量的证书记录,x509.log文件中每一行为一条证书记录,所述证书记录包括证书序列号、常用名称、时间有效性、x509主题(包括国家、组织、组织单位、专有名称限定符、州或省名、通用名称和序列号)、签名算法、以位为单位的密钥长度、证书第一路径等信息。捕获的流量中多个HTTPS记录可能使用的是同一份证书,所以在x509.log文件中可能存在多条证书记录记录的是同一份证书的描述信息。
步骤2.2、对log日志文件进行SSL聚合,得到包含源IP、目的IP、目的端口、传输层协议的连接四元组。
本实施例中进行SSL聚合主要执行了以下步骤:从log日志文件中提取出多个SSL握手包,形成SSL聚合池;从SSL握手包中提取源IP、目的IP、目的端口、传输层协议组成连接四元组。
步骤2.3、根据连接四元组对三个log日志文件中的信息进行分类聚合,完成以连接四元组为单位的特征提取,以连接四元组、特征、以及连接四元组对应的HTTPS流量为恶意或正常的标签作为训练集。
本实施例中对日志文件中的信息进行分类聚合,主要为了完成对三个日志文件中的对应记录的整理,包括以下步骤:
步骤2.3.1、从ssl.log文件中读取一条ssl记录,获取其使用的密码,根据使用的密码在conn.log文件中查找唯一的连接记录,conn.log文件中包含以使用的密码表示连接记录的标识,并获取对应的连接四元组和标签,若查找到的连接记录没有相应的标签或者没有找到连接记录则跳至下一条ssl记录重新执行;
步骤2.3.2、若连接四元组以及标签成功找到,则根据ssl记录的证书路径在x509.log文件中查找证书第一路径为该证书路径的证书记录,若未查找到相应的证书记录则跳至下一条ssl记录重新执行;
步骤2.3.3、若成功找到证书记录,则将对应的ssl记录、连接记录和证书记录所包含的内容作为特征,以连接四元组为单元连同标签存入训练集作为一条训练样本。最终模型训练集如表2所示:
表2模型训练集
四元组 | 特征1 | 特征2 | ... | 标签 |
(192.168.1.1,102.35.45.6,443,tcp) | f1 | f2 | ... | 正常 |
(192.168.3.1,142.36.15.6,443,tcp) | f1 | f2 | ... | 异常 |
步骤3、对训练集中每个连接四元组对应的特征进行提取得到连接特征、SSL特征、证书特征。
对于每个连接四元组,本发明拟提取下述特征,大部分是基于对该领域的专业知识和对恶意软件数据的彻底分析而创建的。对于这些特征将它们分为3组:连接特征、SSL特征、证书特征。连接特征是来自连接记录的特征,描述与证书和加密无关的通信流的常见行为。SSL特征是来自SSL记录的特征,描述了SSL握手和加密通信的信息,而证书特征是来自证书记录的特性,描述了web服务人员在SSL握手期间提供给本发明的证书的信息。每个特性都是某个浮点值,如果由于缺少信息而无法计算该特征,则值为-1。
本实施例中各特征包含的内容如下:
一、连接特征:
1)SSL聚合和连接记录的数量:
每个连接四元组包含SSL聚合和连接记录。第一个特征就是这两个特性的数量和,其中SSL聚合的数量应理解为连接四元组的个数。
2)SSL聚合和连接记录的持续时间均值:
连接四元组中的每个连接记录都包含一个持续时间(以秒为单位)。对于每个传入的连接记录,连接四元组将此持续时间值存储在一个列表中,最后从该持续时间列表计算平均值。
3)SSL聚合和连接记录的持续时间范围的标准差:
这个特性描述了所有持续时间值中有多少百分比超出了范围。这个范围有两个极限,上限是均值+标准偏差,下限是均值-标准偏差。
4)来自originator(源IP)的payload字节数:
connect.log中以originator统计所有连接记录发送的有效负载字节数。
5)来自responder(目的IP)的payload字节数:
connect.log中以responder统计所有连接记录发送的有效负载字节数。对于每个传入的连接记录,本实施例只添加这个值。
二、SSL特征:
1)连接记录和SSL聚合的比率:
该特性描述了非SSL连接记录与SSL连接记录之间的比率。
2)自签名证书比率:
Bro能够识别最终用户证书是否自签名。此信息在SSL记录中。该特性是连接四元组中的自签名证书和所有最终用户证书的比值。
三、证书特征:
1)捕获期间证书周期的有效性:
通过捕获时间和证书的有效期,本发明可以确定捕获期间的证书是否有效。如果捕获时间在证书的有效期内,则没有问题。根据实验来看,绝大部分恶意软件使用过期证书的频率比正常软件要高。
2)证书的年龄均值:
证书已获得的时间均值。
最终本实施例的数据模型是一个值矩阵,其中每一行由连接四元组ID标识,列是特征值。每个特性的范围从0到1,或者值为-1。在数据模型中,20%作为测试数据,其余80%作为训练数据。
步骤4、基于Pegasos算法利用每个连接四元组对应的连接特征、SSL特征、证书特征对所采用的恶意HTTPS流量智能分析模型进行训练,得到符合预设条件的恶意HTTPS流量智能分析模型。
由于在线学习在理论和应用方面的优势,以及近年来大数据应用需求的显著增长,在线学习已成为热门的研究方向。尤其是在2007年,Shai Shalev-shwartz等人首次利用随机梯度下降设计出一个高效的在线SVM求解算法-Primal Estimated Sub-gradientSolver for SVM(简称Pegasos),对支持向量机问题进行求解。该算法具有良好的收敛保证,且在大规模的文本分类数据集上,与先进的批量SVM算法相比,Pegasos在保持好的泛化性能的同时,学习效率提高了一个数量级,适用于大规模文本分类等大规模数据集分类问题,因此被应用在很多不同的领域中对实时数据进行分类。本发明拟采用Pegasos算法进行恶意HTTPS流量智能分析。与传统的恶意流量检测技术相比,基于Pegasos算法优化的HTTPS恶意加密流量检测,有以下两个方面的优点:首先就是在线训练无需保存历史数据,从而减少了存储空间的占用;另一个就是,在线训练在新的训练中充分利用了历史的训练结果,从而显著减少模型后继训练更新的时间,即体现了实时性。
本实施例提供的一种常规模型训练方法如下:
步骤4.1、取待训练的恶意HTTPS流量智能分析模型;
步骤4.2、将连接四元组对应的连接特征、SSL特征、证书特征输入至恶意HTTPS流量智能分析模型中;
步骤4.3、获取恶意HTTPS流量智能分析模型输出的对当前连接四元组进行检测分析得到的预测标签;
步骤4.4、由安全专家对预测标签进行核对,若预测标签与当前连接四元组真实的标签不相符,则保存当前连接四元组并通过Pegasos算法更新恶意HTTPS流量智能分析模型的模型参数,执行下一步;若预测标签与当前连接四元组真实的标签相符,则直接执行下一步;
步骤4.5、获取新的连接四元组对应的连接特征、SSL特征、证书特征并重复执行步骤4.2,直至得到符合预设条件的恶意HTTPS流量智能分析模型。
为了得到更加适应实际使用场景的训练方式,如图2所示,在另一实施例中提供另一种模型训练方式的具体训练步骤如下:
步骤4.1、选取少量标记好的样本,对恶意HTTPS流量智能分析模型进行训练,得到初代模型;
步骤4.2、将训练好的初代模型预加载,并对Hive中读取的数据进行特征提取,将提取得到的特征向量输入SVM支持向量机,SVM支持向量机对输入的样本的特征向量进行检测分析,根据设定好的阈值标准,对样本进行标注,超出阈值的为负样本,低于阈值的为正样本;Hive中存储的为流量深度包解析后的数据,在具体实施的过程中,还需要对训练数据集进行清洗和过滤,比如恶意软件流量数据集中会夹杂一些正常流量,根据域名进行过滤,保证训练数据集的准确性。
步骤4.3、打好标签的样本会经由安全专家进行人工核对,确认模型是否存在误报,如果没有误报,那就直接结束。否则,将误报的数据样本(包含了正负样本)保存,并更正标签,反馈给在线学习模块。通过pegasos算法,将误报的样本加入待更新集合,样本批处理完毕后,更新权重向量,使得模型参数实时更新,准备下一轮的流量检测,此后继续重复以上步骤。
步骤5、采用训练后的恶意HTTPS流量智能分析模型对待检测的HTTPS流量进行智能分析,输出为恶意HTTPS流量或正常HTTPS流量的分析结果。
容易理解的是,由于恶意HTTPS流量智能分析模型对在训练时针对连接四元组对应的连接特征、SSL特征、证书特征进行训练,即在实际检测时也需要对应的将待检测的HTTPS流量转化为待检测的连接特征、SSL特征、证书特征进行检测,转化过程与训练中的一致,这里就不再进行赘述。
并且在实际应用过程中,我们检测到的恶意的HTTPS可能会有误报(正常HTTPS也被报警为可疑的),但是漏报很小(真实的恶意HTTPS被认为是正常的)。也就是宁可错杀,也不放过。因此可以仅基于本申请训练得到的模型进行检测,也可以进一步配合上传统检测分析手段以提高检测准确性。在现在的流量审计中,传统检测分析手段审计人员要在全流量上进行分析,无疑大大浪费时间。而若在本申请的模型基础上结合传统检测分析手段,则可以先由模型做一遍筛选,去除大部分正常流量再进行人工分析,既可以提高效率,又可以降低误报。
本实施例提供的方法通过数据预处理的方式将加密流量做深度包解析得到三项文件日志,即ssl日志、连接日志、证书日志。对三项日志做进一步关联分析得到连接四元组,以连接四元组为单元提取特征。最终通过支持向量机在线训练算法模型进行训练和预测,在对原始流量不进行解密的基础上实现高精度恶意流量检测分析,一方面可以保证用户的隐私和通信安全,同时由于不需要事先解密流量,针对恶意HTTPS流量检测的效率将得到极大提高。
本申请在训练分析模型时与传统检测分析手段相结合,作为对HTTPS恶意流量的初步筛选,对可疑的流量再进一步解密确认,最终提升恶意加密流量整体检测分析的效率。
以上所述实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。
Claims (6)
1.一种基于在线训练算法的恶意HTTPS流量智能分析方法,其特征在于,所述基于在线训练算法的恶意HTTPS流量智能分析方法,包括:
步骤1、获取数据集,该数据集中包含恶意HTTPS流量和正常HTTPS流量;
步骤2、对数据集中的恶意HTTPS流量和正常HTTPS流量进行预处理生成训练集,包括:
步骤2.1、首先使用深度包检测对恶意HTTPS流量和正常HTTPS流量进行解析,生成三个log日志文件;
步骤2.2、对log日志文件进行SSL聚合,得到包含源IP、目的IP、目的端口、传输层协议的连接四元组;
步骤2.3、根据连接四元组对三个log日志文件中的信息进行分类聚合,完成以连接四元组为单位的特征提取,以连接四元组、特征、以及连接四元组对应的HTTPS流量为恶意或正常的标签作为训练集;
步骤3、对训练集中每个连接四元组对应的特征进行提取得到连接特征、SSL特征、证书特征;
步骤4、基于Pegasos算法利用每个连接四元组对应的连接特征、SSL特征、证书特征对所采用的恶意HTTPS流量智能分析模型进行训练,得到符合预设条件的恶意HTTPS流量智能分析模型;
步骤5、采用训练后的恶意HTTPS流量智能分析模型对待检测的HTTPS流量进行智能分析,输出为恶意HTTPS流量或正常HTTPS流量的分析结果。
2.如权利要求1所述的基于在线训练算法的恶意HTTPS流量智能分析方法,其特征在于,所述三个log日志文件包括conn.log文件、ssl.log文件和x509.log文件;
所述conn.log文件提供了数据集中流量聚合后的连接记录,所述连接记录包括源IP、目的IP、目的端口、传输层协议、连接状态、数据包数量、标签、持续时间;所述ssl.log文件提供了数据集中流量聚合后的ssl记录,所述ssl记录包括SSL/TLS版本、使用的密码、服务器名称、证书路径、SSL主题、发行者;所述x509.log文件提供数据集中流量的证书记录,所述证书记录包括证书序列号、常用名称、时间有效性、x509主题、签名算法、以位为单位的密钥长度。
3.如权利要求2所述的基于在线训练算法的恶意HTTPS流量智能分析方法,其特征在于,所述根据连接四元组对三个log日志文件中的信息进行分类聚合,完成以连接四元组为单位的特征提取,包括:
步骤2.3.1、从ssl.log文件中读取一条ssl记录,获取其使用的密码,根据使用的密码在conn.log文件中查找唯一的连接记录,并获取对应的连接四元组和标签,若查找到的连接记录没有相应的标签或者没有找到连接记录则跳至下一条ssl记录重新执行;
步骤2.3.2、若连接四元组以及标签成功找到,则根据ssl记录的证书路径在x509.log文件中查找证书第一路径为该证书路径的证书记录,若未查找到相应的证书记录则跳至下一条ssl记录重新执行;
步骤2.3.3、若成功找到证书记录,则将对应的ssl记录、连接记录和证书记录所包含的内容作为特征,以连接四元组为单元连同标签存入训练集作为一条训练样本。
4.如权利要求2所述的基于在线训练算法的恶意HTTPS流量智能分析方法,其特征在于,所述对训练集中每个连接四元组对应的特征进行提取得到连接特征、SSL特征、证书特征,包括:
步骤3.1、连接特征是来自连接记录的特征,具体包含SSL聚合和连接记录的数量、SSL聚合和连接记录的持续时间均值、SSL聚合和连接记录的持续时间范围的标准差、来自originator的payload字节数、来自responder的payload字节数;
步骤3.2、SSL特征是来自SSL记录的特征,具体包含连接记录和SSL聚合的比率、自签名证书比率;
步骤3.3、证书特征是来自证书记录的特征,具体包含捕获期间证书周期的有效性、证书的年龄均值。
5.如权利要求1所述的基于在线训练算法的恶意HTTPS流量智能分析方法,其特征在于,所述对log日志文件进行SSL聚合,得到包含源IP、目的IP、目的端口、传输层协议的连接四元组,包括:
从log日志文件中提取出多个SSL握手包;
从SSL握手包中提取源IP、目的IP、目的端口、传输层协议组成连接四元组。
6.如权利要求1所述的基于在线训练算法的恶意HTTPS流量智能分析方法,其特征在于,所述基于Pegasos算法利用每个连接四元组对应的连接特征、SSL特征、证书特征对所采用的恶意HTTPS流量智能分析模型进行训练,得到符合预设条件的恶意HTTPS流量智能分析模型,包括:
步骤4.1、取待训练的恶意HTTPS流量智能分析模型;
步骤4.2、将连接四元组对应的连接特征、SSL特征、证书特征输入至恶意HTTPS流量智能分析模型中;
步骤4.3、获取恶意HTTPS流量智能分析模型输出的对当前连接四元组进行检测分析得到的预测标签;
步骤4.4、由安全专家对预测标签进行核对,若预测标签与当前连接四元组真实的标签不相符,则保存当前连接四元组并通过Pegasos算法更新恶意HTTPS流量智能分析模型的模型参数,执行下一步;若预测标签与当前连接四元组真实的标签相符,则直接执行下一步;
步骤4.5、获取新的连接四元组对应的连接特征、SSL特征、证书特征并重复执行步骤4.2,直至得到符合预设条件的恶意HTTPS流量智能分析模型。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110339731.9A CN113259313A (zh) | 2021-03-30 | 2021-03-30 | 一种基于在线训练算法的恶意https流量智能分析方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110339731.9A CN113259313A (zh) | 2021-03-30 | 2021-03-30 | 一种基于在线训练算法的恶意https流量智能分析方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113259313A true CN113259313A (zh) | 2021-08-13 |
Family
ID=77181490
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110339731.9A Pending CN113259313A (zh) | 2021-03-30 | 2021-03-30 | 一种基于在线训练算法的恶意https流量智能分析方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113259313A (zh) |
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113746869A (zh) * | 2021-11-05 | 2021-12-03 | 北京广通优云科技股份有限公司 | 一种基于多层次卷积的运维资产入侵探测方法 |
CN113761522A (zh) * | 2021-09-02 | 2021-12-07 | 恒安嘉新(北京)科技股份公司 | 一种webshell流量的检测方法、装置、设备和存储介质 |
CN113904861A (zh) * | 2021-10-21 | 2022-01-07 | 厦门安胜网络科技有限公司 | 一种加密流量安全检测方法及装置 |
CN114091087A (zh) * | 2022-01-17 | 2022-02-25 | 北京浩瀚深度信息技术股份有限公司 | 一种基于人工智能算法的加密流量识别方法 |
CN114143037A (zh) * | 2021-11-05 | 2022-03-04 | 山东省计算中心(国家超级计算济南中心) | 一种基于进程行为分析的恶意加密信道检测方法 |
CN114172748A (zh) * | 2022-02-10 | 2022-03-11 | 中国矿业大学(北京) | 一种加密恶意流量检测方法 |
CN114301698A (zh) * | 2021-12-30 | 2022-04-08 | 北京天融信网络安全技术有限公司 | 流量数据库构建方法和流量检测模型训练方法 |
CN114640519A (zh) * | 2022-03-17 | 2022-06-17 | 上海斗象信息科技有限公司 | 一种加密流量的检测方法及装置、可读存储介质 |
CN115085992A (zh) * | 2022-06-09 | 2022-09-20 | 北京启明星辰信息安全技术有限公司 | 一种恶意https隐秘通道的检测系统及其检测方法 |
CN115296937A (zh) * | 2022-10-09 | 2022-11-04 | 中孚信息股份有限公司 | 一种用于实时加密恶意流量识别的方法及设备 |
CN115499344A (zh) * | 2022-08-25 | 2022-12-20 | 鹏城实验室 | 一种网络流量实时预测方法及系统 |
CN117955734A (zh) * | 2024-03-21 | 2024-04-30 | 道普信息技术有限公司 | 一种加密协议的pcap元数据再分析方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102984243A (zh) * | 2012-11-20 | 2013-03-20 | 杭州迪普科技有限公司 | 一种ssl协议中应用的自动识别方法和装置 |
CN110113349A (zh) * | 2019-05-15 | 2019-08-09 | 北京工业大学 | 一种恶意加密流量特征分析方法 |
CN111447232A (zh) * | 2020-03-30 | 2020-07-24 | 杭州迪普科技股份有限公司 | 一种网络流量检测方法及装置 |
CN112270351A (zh) * | 2020-10-24 | 2021-01-26 | 国网江苏省电力有限公司信息通信分公司 | 基于辅助分类生成对抗网络的半监督加密流量识别方法 |
-
2021
- 2021-03-30 CN CN202110339731.9A patent/CN113259313A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102984243A (zh) * | 2012-11-20 | 2013-03-20 | 杭州迪普科技有限公司 | 一种ssl协议中应用的自动识别方法和装置 |
CN110113349A (zh) * | 2019-05-15 | 2019-08-09 | 北京工业大学 | 一种恶意加密流量特征分析方法 |
CN111447232A (zh) * | 2020-03-30 | 2020-07-24 | 杭州迪普科技股份有限公司 | 一种网络流量检测方法及装置 |
CN112270351A (zh) * | 2020-10-24 | 2021-01-26 | 国网江苏省电力有限公司信息通信分公司 | 基于辅助分类生成对抗网络的半监督加密流量识别方法 |
Non-Patent Citations (1)
Title |
---|
ZHENGQIU WENG ET AL.: "TLSmell: Direct Identification on Malicious HTTPs Encryption Traffic with Simple Connection-Specific Indicators", 《CSSE》 * |
Cited By (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113761522A (zh) * | 2021-09-02 | 2021-12-07 | 恒安嘉新(北京)科技股份公司 | 一种webshell流量的检测方法、装置、设备和存储介质 |
CN113904861A (zh) * | 2021-10-21 | 2022-01-07 | 厦门安胜网络科技有限公司 | 一种加密流量安全检测方法及装置 |
CN113904861B (zh) * | 2021-10-21 | 2023-10-17 | 厦门安胜网络科技有限公司 | 一种加密流量安全检测方法及装置 |
CN114143037A (zh) * | 2021-11-05 | 2022-03-04 | 山东省计算中心(国家超级计算济南中心) | 一种基于进程行为分析的恶意加密信道检测方法 |
CN113746869B (zh) * | 2021-11-05 | 2022-03-08 | 北京广通优云科技股份有限公司 | 一种基于多层次卷积的运维系统资产入侵探测方法 |
CN113746869A (zh) * | 2021-11-05 | 2021-12-03 | 北京广通优云科技股份有限公司 | 一种基于多层次卷积的运维资产入侵探测方法 |
CN114301698A (zh) * | 2021-12-30 | 2022-04-08 | 北京天融信网络安全技术有限公司 | 流量数据库构建方法和流量检测模型训练方法 |
CN114091087B (zh) * | 2022-01-17 | 2022-04-15 | 北京浩瀚深度信息技术股份有限公司 | 一种基于人工智能算法的加密流量识别方法 |
CN114091087A (zh) * | 2022-01-17 | 2022-02-25 | 北京浩瀚深度信息技术股份有限公司 | 一种基于人工智能算法的加密流量识别方法 |
CN114172748A (zh) * | 2022-02-10 | 2022-03-11 | 中国矿业大学(北京) | 一种加密恶意流量检测方法 |
CN114640519A (zh) * | 2022-03-17 | 2022-06-17 | 上海斗象信息科技有限公司 | 一种加密流量的检测方法及装置、可读存储介质 |
CN114640519B (zh) * | 2022-03-17 | 2023-01-31 | 上海斗象信息科技有限公司 | 一种加密流量的检测方法及装置、可读存储介质 |
CN115085992A (zh) * | 2022-06-09 | 2022-09-20 | 北京启明星辰信息安全技术有限公司 | 一种恶意https隐秘通道的检测系统及其检测方法 |
CN115085992B (zh) * | 2022-06-09 | 2023-08-15 | 北京启明星辰信息安全技术有限公司 | 一种恶意https隐秘通道的检测系统及其检测方法 |
CN115499344A (zh) * | 2022-08-25 | 2022-12-20 | 鹏城实验室 | 一种网络流量实时预测方法及系统 |
CN115499344B (zh) * | 2022-08-25 | 2024-03-19 | 鹏城实验室 | 一种网络流量实时预测方法及系统 |
CN115296937A (zh) * | 2022-10-09 | 2022-11-04 | 中孚信息股份有限公司 | 一种用于实时加密恶意流量识别的方法及设备 |
CN115296937B (zh) * | 2022-10-09 | 2023-04-18 | 中孚信息股份有限公司 | 一种用于实时加密恶意流量识别的方法及设备 |
CN117955734A (zh) * | 2024-03-21 | 2024-04-30 | 道普信息技术有限公司 | 一种加密协议的pcap元数据再分析方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113259313A (zh) | 一种基于在线训练算法的恶意https流量智能分析方法 | |
Janarthanan et al. | Feature selection in UNSW-NB15 and KDDCUP'99 datasets | |
Haddadi et al. | Benchmarking the effect of flow exporters and protocol filters on botnet traffic classification | |
CN113705619B (zh) | 一种恶意流量检测方法、系统、计算机及介质 | |
KR102387725B1 (ko) | 멀웨어 호스트 넷플로우 분석 시스템 및 방법 | |
CN111277578A (zh) | 加密流量分析特征提取方法、系统、存储介质、安全设备 | |
Wu et al. | Bot detection using unsupervised machine learning | |
CN107370752B (zh) | 一种高效的远控木马检测方法 | |
CN110417729B (zh) | 一种加密流量的服务与应用分类方法及系统 | |
US11544575B2 (en) | Machine-learning based approach for malware sample clustering | |
CN111030941A (zh) | 一种基于决策树的https加密流量分类方法 | |
CN102420723A (zh) | 一种面向多类入侵的异常检测方法 | |
CN109450721A (zh) | 一种基于深度神经网络的网络异常行为识别方法 | |
CN110611640A (zh) | 一种基于随机森林的dns协议隐蔽通道检测方法 | |
Watson | A comparison of header and deep packet features when detecting network intrusions | |
CN110868404B (zh) | 一种基于tcp/ip指纹的工控设备自动识别方法 | |
CN112217763A (zh) | 一种基于机器学习的隐蔽tls通信流检测方法 | |
Liu et al. | Maldetect: A structure of encrypted malware traffic detection | |
CN112800424A (zh) | 一种基于随机森林的僵尸网络恶意流量监测方法 | |
Fallahi et al. | Automated flow-based rule generation for network intrusion detection systems | |
CN110958233A (zh) | 一种基于深度学习的加密型恶意流量检测系统和方法 | |
Kumar et al. | Light weighted CNN model to detect DDoS attack over distributed scenario | |
CN113660267B (zh) | 一种针对IoT环境的僵尸网络检测的系统、方法及存储介质 | |
Ali et al. | A generic machine learning approach for IoT device identification | |
Komárek et al. | Passive NAT detection using HTTP access logs |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
WD01 | Invention patent application deemed withdrawn after publication | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20210813 |