CN112217763A - 一种基于机器学习的隐蔽tls通信流检测方法 - Google Patents

一种基于机器学习的隐蔽tls通信流检测方法 Download PDF

Info

Publication number
CN112217763A
CN112217763A CN201910618066.XA CN201910618066A CN112217763A CN 112217763 A CN112217763 A CN 112217763A CN 201910618066 A CN201910618066 A CN 201910618066A CN 112217763 A CN112217763 A CN 112217763A
Authority
CN
China
Prior art keywords
machine learning
tls
flow
module
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
Application number
CN201910618066.XA
Other languages
English (en)
Inventor
刘亮
韦佶宏
郑荣锋
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sichuan University
Original Assignee
Sichuan University
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Sichuan University filed Critical Sichuan University
Priority to CN201910618066.XA priority Critical patent/CN112217763A/zh
Publication of CN112217763A publication Critical patent/CN112217763A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1441Countermeasures against malicious traffic
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/14Network analysis or design
    • H04L41/145Network analysis or design involving simulating, designing, planning or modelling of a network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/24Traffic characterised by specific attributes, e.g. priority or QoS
    • H04L47/2441Traffic characterised by specific attributes, e.g. priority or QoS relying on flow classification, e.g. using integrated services [IntServ]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/24Traffic characterised by specific attributes, e.g. priority or QoS
    • H04L47/2483Traffic characterised by specific attributes, e.g. priority or QoS involving identification of individual flows
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/02Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
    • H04L63/0227Filtering policies
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1441Countermeasures against malicious traffic
    • H04L63/145Countermeasures against malicious traffic the attack involving the propagation of malware through the network, e.g. viruses, trojans or worms

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Virology (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明公开了一种基于机器学习的隐蔽TLS通信流检测方法,涉及计算机网络空间安全领域,该方法使用TLS协议明文握手信息来作为识别特征,使用机器学习方法来进行模型训练。该方法包含特征数据采集模块、数据分析提取模块、机器学习训练模块、模型保存备份模块以及流量识别模块。通过数据采集、特征提取以及各模块的组合判断,本发明能够在不需要对流量进行解密的情况下就能够对流量的恶意性进行判断,从而对恶意加密流量进行分析。

Description

一种基于机器学习的隐蔽TLS通信流检测方法
技术领域
本发明涉及计算机网络空间安全领域,特别针对使用TLS协议的恶意加密流量进行识别,识别出通信流是否具有恶意性。
背景技术
虽然加密流量的增长无疑提升了网络的安全性,但更高的加密流量比率也对监控和检测威胁提出了严峻挑战。攻击者将加密作为隐藏活动的工具,加密流量给攻击者隐藏其命令与控制活动提供了可乘之机。全球互联网走向全面加密时代已经是大势所趋,但在加密访问可保障通讯安全的情况下,现有网络设备对网络攻击、恶意软件等加密流量却无能为力。
TLS(Transport Layer Security),也称传输层安全,其前身为安全套接层(SSL,Secure Sockets Layer),是为网络通信提供安全及数据完整性的一种安全协议。TLS协议为应用层和传输层之间的数据提供安全性机制,通过对数据进行加密和隐藏,确保数据在传输中不被截取与改变,目前已成为网际网络上保密通信的工业标准。
攻击者常常利用TLS等加密通道完成恶意软件载荷和漏洞利用的投递和分发,以及完成受感染主机与命令和控制(C&C)服务器之间的通信。
由于网络流量大多采用TLS技术来保障传输层以上的数据加密,流量被加密后负载统计特征和流统计特征都发生了改变,因此加密流量的内容不具备固定的特征字段。传统非加密流量识别方法包括基于深度报文检测和基于深度流检测等方法,但都不适用于加密流量。现有的恶意加密流量检测技术,通常需要通过对加密流量进行解密后再对有效载荷的内容进行分析才能识别,但这种方法要求苛刻,实际应用难度大。近年来出现的基于机器学习的分析方法虽然在一定程度上能够在不解密的情况下进行加密流量的识别,但也没有做到对恶意加密流量进行很好的分类。
因此,本领域的技术人员致力于开发出一种基于机器学习的隐蔽TLS通信流检测方法。
发明内容
由于现有技术的上述缺陷,本发明所要解决的技术问题是在不需要对恶意加密流量进行解密的情况下,对恶意加密流量进行识别。
为了实现上述目的,本发明提出了一种方法。该方法核心具体可以表述为:通过提取TLS通信的明文握手特征信息形成特征样本;将正常样本、恶意样本分别打好标签后,使用逻辑回归机器学习算法进行模型训练,得出每个特征的权重值。筛选出有价值的特征后,使用这些特征来训练最后的识别模型。
基于以上识别模型,能够实现对使用了TLS协议的恶意加密流量进行识别。该方法的完整技术框架包括两大部分,一部分为预处理部分,另一部分为处理部分。
预处理部分主要包含以下模块:
1.特征筛选模块;
2.机器学习训练模块;
3.模型保存备份模块。
其中,特征筛选模块,主要用于筛选出有价值的特征,从而减小机器学习训练模块的训练难度,提高识别精度。
机器学习训练模块用于训练识别模型,使用机器学习算法来对预先收集到的打好标签的优质样本来进行训练,构建出识别模型。而模型保存备份模块则用于将机器学习训练模块产生的模型保存备份,供处理部分读取调用。前文所说的优质样本为过滤掉同一类型通信流里的残缺的(缺少完整的TLS握手信息)、重复的样本后剩下的样本。
处理部分主要包含以下模块:
1.数据采集模块;
2.数据分析提取模块;
3.流量识别模块。
其中,数据采集模块用于对通信流量的收集,并存储为PCAP(ProcessCharacterization Analysis Package,过程特性分析软件包)格式的文件。更详细的描述为,该模块根据通信协议的四元组(源IP地址、目的IP地址、源端口、目的端口) 作为过滤条件,把在某一时间段内具有相同四元组的通信数据组合在一起,构成一条单向数据流。再把通信实体双方的两份单向数据流根据时间先后聚合在一起,构成一条双向数据流。该数据流具有完整的TLS握手信息。并根据具体的需求,过滤出想要识别的PCAP文件,供后续识别模块使用。
数据分析提取模块对需要进行识别分类的每一条双向数据流进行读取,提取出明文的握手信息,并对提取出的明文信息使用one-hot编码方案进行数值化编码。
流量识别模块,读取机器学习训练模块产生的二分类模型来进行识别,判断该条流量是否属于恶意加密流量。
附图说明
图1是预处理部分的流程示意图
图2是整个系统的流程示意图
图3是数据分析提取的流程图
具体实施方式
以下将结合附图对本发明的技术框架、运行流程以及产生的效果作详细的说明。
从原始TLS流提取出来的TLS握手信息并不都完全转化为特征,也不是所有特征都有效,因此在预处理部分需要先筛选出有较为有用的确特征条目,这些条目应该尽可能少,从而降低输入数据的维度,提高训练的效率与识别准确率。
如图2所示,这是整个系统的预处理部分。首先第一步是将经过过滤与分类的优质的包含恶意及正常流量样本的特征数据输入逻辑回归机器学习算法,得出每个特征的权重值,经过筛选之后确定最终特征条目,使用经过筛选的特征数据输入机器学习训练模块,产生出一个二分类模型,并由识别模型保存模块将其保存下来。在特征筛选过程中,可以反复迭代与验证,产生出识别率最高的识别模型。
经过不断地训练筛选与验证,我们得出了一个较佳的特征方案如下:
Client Hello部分的特征:
Figure BDA0002124609670000031
ServerHello部分的特征:
特征名称 说明
s_hello_version ServerHello所用的协议版本
s_cipher ServerHello所选用的加密算法
s_extensions_num Server Hello所携带的Extension的数目
Certificate部分的特征:
特征名称 说明
certificates_num 所携带的证书数目
cert_subject 证书里subject字段所携带的信息
cert_issuer 证书里issuer字段所携带的信息
cert_extension_number 证书里所携带的Extension的数目
cert_days_validity 证书的有效期
cert_version 证书的版本号
cert_has_expired 证书是否已经过期
cert_cipher 证书所使用的签名算法
cert_pbk_len 证书里公钥的长度
预处理部分操作完毕后,就进入了处理部分。如图1所示,这是整个系统的框架流程图。整个系统有两个输入部分,一个是数据采集模块,用于采集需要识别的流量,根据预设的过滤特征将想要进行识别的两个通信间实体产生的流量捕获并保存为PCAP包。另一个输入入口是预处理部分,主要输入之前已经训练好的机器学习识别模型,供流量识别模块调用。
当捕获到的PCAP包就绪之后,就开始进入特征分析提取阶段。如图3所示,这是数据分析提取模块的流程。首先读取数据采集模块保存的含有双向流的PCAP文件,分别提取ClientHello、 ServerHello、Certificate信息。在提取出原始的明文信息后,转化为对应特征。在提取Certificate 部分的明文特征时,若携带的证书不止一份,则根据证书链原则,选择最后一份证书作为提取信息的目标。分析提取出明文握手信息的特征后使用one-hot编码进行数值化后输入流量识别模块。
进一步地,流量识别模块判断这个基于TLS通信协议的加密流量是否属于恶意加密流量,如果不属于恶意加密流量,则得出该流量为正常流量的反馈结果。

Claims (6)

1.一种基于机器学习的隐蔽 TLS通信流检测方法,其特征在于所述的方法包括以下部分:
1.1 数据分析提取部分:提取 PCAP 格式的双向完整的基于TLS协议的通信数据流中TLS握手特征信息,并将这些特征数值化,使用数字来表示特征;
1.2 特征筛选部分:将提取到的完整的特征数据,使用逻辑回归机器学习算法训练,排除掉权值低于自定义阈值的特征条目;
1.3 特征表示部分:使用稀疏表达的方式来表示特征,即使用 one-hot (独热码)编码方案对特征进行数值化编码表示;
1.4 机器学习训练部分:使用机器学习算法来对筛选后的特征数据来进行训练,构建出识别模型。
2.根据权利要求1一种基于机器学习的隐蔽 TLS 通信流检测方法,所述的方法 1.1中“TLS握手信息特征”包括如下:
2.1 TLS 握手协议下的Client Hello 版本、Client Hello 的载荷长度、ClientHello中支持的密码套件、ClientHello中支持的压缩方法、ClientHello 中的 Extension 载荷长度、ClientHello 中的 Extension 的数目、ClientHello 中的所有 Extension信息;
2.2 TLS握手协议下的 ServerHello版本,ServerHello的载荷长度、ServerHello 中选择的密码套件、ServerHello 中的Extension 载荷长度、ServerHello 中Extension的数目、ServerHello 中的所有 Extension信息;
2.3 TLS握手协议下的 Certificate部分,提取的内容包括该通信中Certificate 部分所携带的证书个数、若携带多个证书,则选择最后一个证书来提取信息,提取的具体特征内容包括:证书的版本、issuer 字段下的信息,subject 字段下的信息、证书公钥长度、证书的有效期、证书的 Extension数目、证书的签名算法。
3.一种基于机器学习的隐蔽 TLS 通信流检测方法,其特征在于所述方法包括以下模块:
3.1 特征筛选模块:用于筛选出最佳的特征;
3.2 机器学习训练模块:基于随机森林机器学习算法对优质样本数据进行训练,构建出识别模型;
3.3 模型保存备份模块:用于保存训练好的机器学习识别模型;
3.4 数据采集模块:根据预设规则采集需要进行识别的通信流;
3.5 数据分析提取模块:用于解析保存为 PCAP 格式的通信流,提取出需要的特征信息;
3.6 流量识别模块:用于对加密流量进行识别,判断该加密流量是否属于恶意加密流量。
4.一种基于机器学习的隐蔽 TLS 通信流检测方法,其特征在于所述方法包括以下步骤:
4.1 基于预先收集到的打好标签的优质样本,提取出TLS握手信息特征,使用 one-hot编码对提取出的特征进行数值化后保存为 CSV(Comma-Separated Values,逗号分隔值)格式,利用随机森林机器学习算法来进行训练,构建出识别模型,同时将训练出的模型进行保存备份;
4.2 从流量采集模块获取到通信实体产生的双向TLS协议通信流,并提取出TLS握手信息特征,进行使用 one-hot 编码方案对特征数据进行数值化;
4.3 将数据分析提取模块提取出来的经过数值化后的特征数据输入流量识别模块,给出识别结果。
5.根据权利要求4所述的一种基于机器学习的隐蔽TLS 通信流检测方法,所述的步骤4.1 中“优质样本”定义如下:
5.1 数据流中使用的通信协议为TLS协议;
5.2 数据流是一个完整的双向流;
5.3 数据流含有完整的TLS握手信息,包括 ClientHello、ServerHello、Certificate;
5.4 样本集合中不含TLS握手信息重复的条目。
6.根据权利要求5所述的一种基于机器学习的隐蔽TLS 通信流检测方法,所述的定义5.4 中“TLS握手信息重复的条目”进一步定义如下:
6.1 两条通信流中,ClientHello中的 Extension 条目下的ServerName子项完全相同、整个 ClientHello 的长度相同、整个 ServerHello的长度相同,则定义为重复的条目。
CN201910618066.XA 2019-07-10 2019-07-10 一种基于机器学习的隐蔽tls通信流检测方法 Pending CN112217763A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910618066.XA CN112217763A (zh) 2019-07-10 2019-07-10 一种基于机器学习的隐蔽tls通信流检测方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910618066.XA CN112217763A (zh) 2019-07-10 2019-07-10 一种基于机器学习的隐蔽tls通信流检测方法

Publications (1)

Publication Number Publication Date
CN112217763A true CN112217763A (zh) 2021-01-12

Family

ID=74048432

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910618066.XA Pending CN112217763A (zh) 2019-07-10 2019-07-10 一种基于机器学习的隐蔽tls通信流检测方法

Country Status (1)

Country Link
CN (1) CN112217763A (zh)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113518080A (zh) * 2021-06-23 2021-10-19 北京观成科技有限公司 一种tls加密流量检测方法、装置和电子设备
CN113660210A (zh) * 2021-07-20 2021-11-16 北京天融信网络安全技术有限公司 恶意tls加密流量检测模型训练方法、检测方法及终端
CN113794687A (zh) * 2021-08-17 2021-12-14 北京天融信网络安全技术有限公司 基于深度学习的恶意加密流量检测方法及装置
CN113938315A (zh) * 2021-11-25 2022-01-14 北京天融信网络安全技术有限公司 隐蔽信道检测方法、装置、设备及存储介质
CN114079579A (zh) * 2021-10-21 2022-02-22 北京天融信网络安全技术有限公司 一种恶意加密流量检测方法及装置
CN114124551A (zh) * 2021-11-29 2022-03-01 中国电子科技集团公司第三十研究所 一种WireGuard协议下基于多粒度特征提取的恶意加密流量识别的方法

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106603519A (zh) * 2016-12-07 2017-04-26 中国科学院信息工程研究所 一种基于证书特征泛化和服务器变迁行为的ssl/tls加密恶意服务发现方法
CN106992965A (zh) * 2017-02-27 2017-07-28 南京邮电大学 一种基于网络行为的木马检测方法
US20170364794A1 (en) * 2016-06-20 2017-12-21 Telefonaktiebolaget Lm Ericsson (Publ) Method for classifying the payload of encrypted traffic flows
CN108833360A (zh) * 2018-05-23 2018-11-16 四川大学 一种基于机器学习的恶意加密流量识别技术
CN109450895A (zh) * 2018-11-07 2019-03-08 北京锐安科技有限公司 一种流量识别方法、装置、服务器及存储介质
CN109639739A (zh) * 2019-01-30 2019-04-16 大连理工大学 一种基于自动编码器网络的异常流量检测方法
CN109936578A (zh) * 2019-03-21 2019-06-25 西安电子科技大学 一种面向网络中https隧道流量的检测方法

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170364794A1 (en) * 2016-06-20 2017-12-21 Telefonaktiebolaget Lm Ericsson (Publ) Method for classifying the payload of encrypted traffic flows
CN106603519A (zh) * 2016-12-07 2017-04-26 中国科学院信息工程研究所 一种基于证书特征泛化和服务器变迁行为的ssl/tls加密恶意服务发现方法
CN106992965A (zh) * 2017-02-27 2017-07-28 南京邮电大学 一种基于网络行为的木马检测方法
CN108833360A (zh) * 2018-05-23 2018-11-16 四川大学 一种基于机器学习的恶意加密流量识别技术
CN109450895A (zh) * 2018-11-07 2019-03-08 北京锐安科技有限公司 一种流量识别方法、装置、服务器及存储介质
CN109639739A (zh) * 2019-01-30 2019-04-16 大连理工大学 一种基于自动编码器网络的异常流量检测方法
CN109936578A (zh) * 2019-03-21 2019-06-25 西安电子科技大学 一种面向网络中https隧道流量的检测方法

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113518080A (zh) * 2021-06-23 2021-10-19 北京观成科技有限公司 一种tls加密流量检测方法、装置和电子设备
CN113518080B (zh) * 2021-06-23 2021-11-19 北京观成科技有限公司 一种tls加密流量检测方法、装置和电子设备
CN113660210A (zh) * 2021-07-20 2021-11-16 北京天融信网络安全技术有限公司 恶意tls加密流量检测模型训练方法、检测方法及终端
CN113660210B (zh) * 2021-07-20 2023-05-12 北京天融信网络安全技术有限公司 恶意tls加密流量检测模型训练方法、检测方法及终端
CN113794687A (zh) * 2021-08-17 2021-12-14 北京天融信网络安全技术有限公司 基于深度学习的恶意加密流量检测方法及装置
CN114079579A (zh) * 2021-10-21 2022-02-22 北京天融信网络安全技术有限公司 一种恶意加密流量检测方法及装置
CN114079579B (zh) * 2021-10-21 2024-03-15 北京天融信网络安全技术有限公司 一种恶意加密流量检测方法及装置
CN113938315A (zh) * 2021-11-25 2022-01-14 北京天融信网络安全技术有限公司 隐蔽信道检测方法、装置、设备及存储介质
CN114124551A (zh) * 2021-11-29 2022-03-01 中国电子科技集团公司第三十研究所 一种WireGuard协议下基于多粒度特征提取的恶意加密流量识别的方法
CN114124551B (zh) * 2021-11-29 2023-05-23 中国电子科技集团公司第三十研究所 一种WireGuard协议下基于多粒度特征提取的恶意加密流量识别的方法

Similar Documents

Publication Publication Date Title
CN112217763A (zh) 一种基于机器学习的隐蔽tls通信流检测方法
Wang et al. End-to-end encrypted traffic classification with one-dimensional convolution neural networks
CN113705619B (zh) 一种恶意流量检测方法、系统、计算机及介质
CN113259313A (zh) 一种基于在线训练算法的恶意https流量智能分析方法
CN105138709B (zh) 一种基于物理内存分析的远程取证系统
CN111385145B (zh) 一种基于集成学习的加密流量识别方法
CN111224946A (zh) 一种基于监督式学习的tls加密恶意流量检测方法及装置
CN112800424A (zh) 一种基于随机森林的僵尸网络恶意流量监测方法
CN113923026A (zh) 一种基于TextCNN的加密恶意流量检测模型及其构建方法
CN114785563A (zh) 一种软投票策略的加密恶意流量检测方法
CN115134250A (zh) 一种网络攻击溯源取证方法
CN111182002A (zh) 基于http首个问答包聚类分析的僵尸网络检测装置
CN113794687A (zh) 基于深度学习的恶意加密流量检测方法及装置
CN112637292A (zh) 数据处理方法、装置、电子设备及存储介质
Zhou et al. Malicious encrypted traffic features extraction model based on unsupervised feature adaptive learning
CN117056797A (zh) 基于非平衡数据的加密流量分类方法、设备及介质
CN113141349B (zh) 一种多分类器自适应融合的https加密流量分类方法
CN115987687A (zh) 网络攻击取证方法、装置、设备及存储介质
CN113746707B (zh) 一种基于分类器及网络结构的加密流量分类方法
CN114362988B (zh) 网络流量的识别方法及装置
CN115051874A (zh) 一种多特征的cs恶意加密流量检测方法和系统
CN113141375A (zh) 一种网络安全监控的方法、装置、存储介质及服务器
CN110557402A (zh) 异常流量的检测方法及装置
CN113095426A (zh) 一种加密流量分类方法、系统、设备及可读存储介质
CN103051501B (zh) 一种根据网络数据恢复的方式识别网络数据的检测方法

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
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20210112