CN113904861B - 一种加密流量安全检测方法及装置 - Google Patents
一种加密流量安全检测方法及装置 Download PDFInfo
- Publication number
- CN113904861B CN113904861B CN202111229293.7A CN202111229293A CN113904861B CN 113904861 B CN113904861 B CN 113904861B CN 202111229293 A CN202111229293 A CN 202111229293A CN 113904861 B CN113904861 B CN 113904861B
- Authority
- CN
- China
- Prior art keywords
- tls
- certificate
- ssl
- ssl certificate
- value
- 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.)
- Active
Links
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/08—Network architectures or network communication protocols for network security for authentication of entities
- H04L63/0823—Network architectures or network communication protocols for network security for authentication of entities using certificates
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/24—Traffic characterised by specific attributes, e.g. priority or QoS
- H04L47/2441—Traffic characterised by specific attributes, e.g. priority or QoS relying on flow classification, e.g. using integrated services [IntServ]
-
- 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/02—Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3236—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions
- H04L9/3239—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions involving non-keyed hash functions, e.g. modification detection codes [MDCs], MD5, SHA or RIPEMD
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Computer Security & Cryptography (AREA)
- Signal Processing (AREA)
- Computing Systems (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Software Systems (AREA)
- General Physics & Mathematics (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Data Mining & Analysis (AREA)
- Biophysics (AREA)
- Evolutionary Computation (AREA)
- Mathematical Physics (AREA)
- Computational Linguistics (AREA)
- Biomedical Technology (AREA)
- Artificial Intelligence (AREA)
- Life Sciences & Earth Sciences (AREA)
- Health & Medical Sciences (AREA)
- Computer Hardware Design (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本申请提供一种加密流量安全检测方法及装置,该方法包括:采集网络设备的流量并对流量进行分类,保存HTTPS流量中TLS/SSL的握手协议数据包并提取握手协议数据包中的IP和域名,保存TLS/SSL证书并提取证书的基础信息,以及计算并获取TLS/SSL证书的MD5值;TLS/SSL证书的MD5值与恶意证书MD5库和合法证书MD5库中的MD5值进行匹配,以及对TLS/SSL证书进行静态分析;响应于确定TLS/SSL证书的MD5值与恶意证书MD5库或合法证书MD5库中的MD5值均不相同,且TLS/SSL证书为非自签发且处于有效期内的证书,对TLS/SSL证书进行预处理并映射成图片,获得TLS/SSL证书画像;通过深度学习检测模型对TLS/SSL证书画像进行检测分类,识别出恶意TLS/SSL证书并生成安全隐患与威胁预警。
Description
技术领域
本申请涉及信息安全技术领域,具体涉及一种加密流量安全检测方法及装置。
背景技术
随着全球互联网的高速发展,全面加密的时代已经是大势所趋。根据统计数据显示,当前互联网流量中加密流量占比已突破了80%,而且预计这一数字仍会保持快速增长。随着使用TLS/SSL对通信内容进行加密的应用的增多;TLS/SSL的安全隐患和威胁攻击也在不断的增加。根据Zscaler的新威胁研究报告,未来五年,针对绕过传统安全控制的加密流量(TLS/SSL)的攻击将增长260%。
目前常见的加密流量安全检测主要分为内容解密后检测和不解密检测。使用流量解密的方式检测加密流量的安全性,该方式需耗费大量的资源,违背了加密流量保护隐私的初衷。使用不解密的方式检测加密流量的安全性,该方式主要是采集已知恶意的加密流量的特征作为特征码供后续进行防护比对。然而,随着恶意程序的升级,流量特征也随之改变,其防护效果也随之失效。随着越来越多的恶意行为利用TLS/SSL加密来隐藏其通信,以绕过传统的检测设备或平台,无论是分发恶意软件还是窃取数据。目前现有的检测技术已经不足以保障运行环境的安全。
由此可见,如何快速且有效地检测出存在安全隐患和威胁的加密流量是本领域亟需解决的问题。
发明内容
本申请实施例提出了一种加密流量安全检测方法及装置,来解决以上背景技术部分提到的技术问题。
第一方面,本申请实施例提供了一种加密流量安全检测方法,该方法包括以下步骤:
S1、采集网络设备的流量并对流量进行分类,响应于确定流量属于 HTTPS流量,保存HTTPS流量中TLS/SSL的握手协议数据包并提取握手协议数据包中的IP和域名,保存TLS/SSL证书并提取证书的基础信息,以及计算并获取TLS/SSL证书的MD5值;
S2、TLS/SSL证书的MD5值与恶意证书MD5库和合法证书MD5 库中的MD5值进行匹配,以及对TLS/SSL证书进行静态分析,静态分析包括判断TLS/SSL证书是否处于有效期内、是否为自签发的证书;
S3、响应于确定TLS/SSL证书的MD5值与恶意证书MD5库或合法证书MD5库中的MD5值均不相同,且TLS/SSL证书为非自签发且处于有效期内的证书,对TLS/SSL证书进行预处理并映射成图片,进而获得 TLS/SSL证书画像;
S4、通过深度学习检测模型对TLS/SSL证书画像进行检测分类,识别出恶意TLS/SSL证书并生成安全隐患与威胁预警。
该方法将静态分析方法与深度学习技术相结合,能够快速检测出存在安全隐患和威胁的加密流量,快速检测出使用恶意TLS/SSL证书的加密流量以及恶意TLS/SSL证书家族的加密流量。
在一些实施例中,步骤S2还包括:
将TLS/SSL证书的MD5值与恶意证书MD5库中的MD5值进行匹配;
响应于确定TLS/SSL证书的MD5值与恶意证书MD5库中的MD5 值相同,则生成安全隐患与威胁预警;响应于确定TLS/SSL证书的MD5 值与恶意证书MD5库中的MD5值不相同,则确定TLS/SSL证书为未知 TLS/SSL证书;
响应于确定未知TLS/SSL证书为非自签发且处于有效期内的证书,则通过握手协议数据包中的IP或者域名获取合法证书MD5库中对应的 TLS/SSL证书的基础信息及MD5值,并将获取对应的TLS/SSL证书的基础信息及MD5值与未知TLS/SSL证书的基础信息和MD5值进行比对;
响应于确定基础信息和MD5值不一致,则生成安全隐患与威胁预警,响应于确定基础信息和MD5值一致,则结束进程。
该方法通过TLS/SSL证书的MD5值与恶意证书MD5库中的MD5 值进行快速比对,可以快速发现检测出恶意TLS/SSL证书,进而生成安全隐患与威胁预警。通过TLS/SSL证书的MD5值与合法证书MD5库中的MD5值进行匹配,进一步检测出合法TLS/SSL证书,以结束进程提高排查效率,若仍判断不出是否为合法TLS/SSL证书则再进一步进行深度学习模型检测。
在一些实施例中,在步骤S3中对TLS/SSL证书进行预处理并映射成图片以获得TLS/SSL证书画像,包括:
对TLS/SSL证书进行预处理,预处理过程包括去掉TLS/SSL证书的有效期、公钥、签名算法和签名哈希算法;
将经过预处理的TLS/SSL证书以二进制的形式映射成图片,并将图片转换为缩略图,使用迭代最佳阈值算法对缩略图进行二值化处理,最终获得TLS/SSL证书画像。
该操作可以极大地提升深度学习检测的速度与效率。
在一些实施例中,在步骤S2中对TLS/SSL证书进行静态分析,包括:
判断TLS/SSL证书是否在有效期内,响应于确定TLS/SSL证书未在有效期内,则生成安全隐患与威胁预警;
响应于TLS/SSL证书在有效期内,则进一步判断TLS/SSL证书是否为自签发证书;
响应于确定TLS/SSL证书为自签发证书,则生成安全隐患与威胁预警;响应于确定TLS/SSL证书为非自签发证书,则将TLS/SSL证书的 MD5值与合法证书MD5库中的MD5值进行匹配。
通过静态分析方法与MD5值的初步审查判断,可以进一步将未知的 TLS/SSL证书筛选出来以便进行下一步骤。
在一些实施例中,,在步骤S1中的采集网络设备的流量并对流量进行分类,响应于确实流量属于HTTPS流量,包括:
判断流量是否属于HTTPS流量;
响应于确定不属于HTTPS流量,则直接结束进程;
响应于确定属于HTTPS流量,则进行握手协议数据包的保存及提取 TLS/SSL证书的基础信息和计算MD5值。
通过该方法可以快速进行流量判别,识别出非HTTPS流量直接结束进程。
在一些实施例中,步骤S4中的深度学习检测模型通过以下步骤训练得到:
获取恶意证书MD5库和合法证书MD5库并进行分类,获得合法家族证书样本和恶意家族证书样本并进行标注;
对标注后的合法家族证书样本和恶意家族证书样本进行预处理,将经过预处理的合法家族证书样本和恶意家族证书样本以二进制的形式映射为BMP格式的图片,并转换为缩略图;
使用迭代最佳阈值算法对缩略图进行二值化处理以获得TLS/SSL证书画像;
使用ResNet18即18层卷积层网络对TLS/SSL证书画像进行卷积训练,最终获得能够检测出恶意TLS/SSL证书及其家族和合法TLS/SSL证书及其家族的深度学习检测模型。
通过使用深度学习技术对流量中的恶意TLS/SSL证书进行检测和分类,训练得到的模型可以进一步配合上述的传统检测及分析手段以提高检测准确性。
在一些实施例中,安全隐患与威胁预警包括安全隐患、威胁信息和威胁等级,通过查询安全知识库得到对应的安全权重,采用加权的方式算出最终的安全权重,最后根据最终的安全权重获得对应等级的安全隐患与威胁信息并且获得对应威胁等级的预警;
其中,安全知识库中包含各种安全隐患类型、安全隐患信息、威胁类型、威胁信息、威胁等级及对应的安全权重。
通过该方式,用户可以清晰地了解到对应流量的安全隐患、威胁信息和威胁等级。
在一些实施例中,在步骤S1中基础信息包括:证书有效期、使用者信息和颁发者信息;在步骤S2中恶意证书MD5库包括已确认为恶意程序使用的TLS/SSL证书计算所得到的MD5值、威胁信息、威胁等级;合法证书MD5库包括已确认为安全合法程序使用的TLS/SSL证书的基础信息和MD5值,以及IP、域名。
第二方面,本申请实施例提供了一种加密流量安全检测装置,该装置包括:
获取模块,用于采集网络设备的流量并对流量进行分类,响应于确定流量属于HTTPS流量,保存HTTPS流量中TLS/SSL的握手协议数据包并提取握手协议数据包中的IP和域名,保存TLS/SSL证书并提取证书的基础信息,以及计算并获取TLS/SSL证书的MD5值;
分析模块,用于TLS/SSL证书的MD5值与恶意证书MD5库和合法证书MD5库中的MD5值进行匹配,以及对TLS/SSL证书进行静态分析,静态分析包括判断TLS/SSL证书是否处于有效期内、是否为自签发的证书;
转换模块,用于响应于确定TLS/SSL证书的MD5值与恶意证书MD5 库或合法证书MD5库中的MD5值均不相同,且TLS/SSL证书为非自签发且处于有效期内的证书,对TLS/SSL证书进行预处理并映射成图片,进而获得TLS/SSL证书画像;
识别模块,用于通过深度学习检测模型对TLS/SSL证书画像进行检测分类,识别出恶意TLS/SSL证书并生成安全隐患与威胁预警。
第三方面,本申请实施例提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序在被处理器执行时实施如以上所述中任一项的方法。
本申请实施例提供的一种加密流量安全检测方法及装置,使用静态分析方法和深度学习技术相结,在静态分析方法中首次提出以流量中 TLS/SSL证书的MD5值与恶意证书MD5库进行静态匹配;与合法 TLS/SSL证书MD5库进行合法性的校验;在深度学习模型检测方法中,首次提出恶意TLS/SSL证书家族的概念;并且提出使用深度学习技术对流量中恶意TLS/SSL证书的检测和分类。
通过该方法能够快速检测出使用恶意TLS/SSL证书的加密流量及恶意TLS/SSL证书家族的加密流量;检测出使用伪造TLS/SSL证书的中间人攻击的加密流量;检测出使用了可能被中间人攻击利用的自签 TLS/SSL证书的加密流量及其他存在的安全隐患与威胁的加密流量。
附图说明
通过阅读参照以下附图,所作的对非限制性实施例所作的详细描述,本申请的其它特征、目的和优点将会变得更明显:
图1是根据本申请的加密流量安全检测方法的一个实施例的流程图;
图2是根据本申请的加密流量安全检测方法的检测流程图;
图3是根据本申请的加密流量安全检测方法的ResNet18的结构示意图;
图4是根据本申请的加密流量安全检测方法检测出为合法TLS/SSL 证书图像示意图;
图5是根据本申请的加密流量安全检测方法检测出为恶意TLS/SSL 证书图像示意图;
图6是根据本申请的一种加密流量安全检测装置的一个实施例的结构示意图;
图7是适于用来实现本申请实施例的终端设备或服务器的计算机系统的结构示意图。
具体实施方式
下面结合附图和实施例对本申请作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释相关发明,而非对该发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与有关发明相关的部分。
需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本申请。
图1示出了本申请的加密流量安全检测方法的一个实施例的流程图 100,图2是根据本申请的加密流量安全检测方法的检测流程图。结合参考图1和图2,该安全检测方法,包括以下步骤:
步骤101,采集网络设备的流量并对流量进行分类,响应于确定流量属于HTTPS流量,保存HTTPS流量中TLS/SSL的握手协议数据包并提取握手协议数据包中的IP和域名,保存TLS/SSL证书并提取证书的基础信息,以及计算并获取TLS/SSL证书的MD5值。
本实施例提出方法中重要基础部分为数据采集,系统通过对网络设备的流量进行实时采集,采用传统特征码方式对流量进行匹配识别和分类;并且保存HTTPS流量中TLS/SSL相关的握手协议数据包。
在本实施例中,采集网络设备的流量并对流量进行分类,响应于确实流量属于HTTPS流量,具体还包括:
判断流量是否属于HTTPS流量;
响应于确定不属于HTTPS流量,则直接结束进程;
响应于确定属于HTTPS流量,则提取握手协议数据包中的IP、域名,保存TLS/SSL证书,并且提取其基础信息,包括证书的有效期、使用者信息、颁发者信息以及计算证书的MD5值。
通过该方法可以快速进行流量判别,识别出非HTTPS流量直接结束进程,提高检测效率,识别出HTTPS流量则进行下一步骤。
步骤102,TLS/SSL证书的MD5值与恶意证书MD5库和合法证书 MD5库中的MD5值进行匹配,以及对TLS/SSL证书进行静态分析,静态分析包括判断TLS/SSL证书是否处于有效期内、是否为自签发的证书。
在本实施例中,在步骤102中恶意证书MD5库包括已确认为恶意程序使用的TLS/SSL证书计算所得到的MD5值、威胁信息、威胁等级;合法证书MD5库包括已确认为安全合法程序使用的TLS/SSL证书的基础信息和MD5值,以及IP、域名。
在本实施例中,步骤102,具体还包括:
首先将TLS/SSL证书的MD5值与恶意证书MD5库中的MD5值进行匹配;
响应于确定TLS/SSL证书的MD5值与恶意证书MD5库中的MD5 值相同,则生成安全隐患与威胁预警;响应于确定TLS/SSL证书的MD5 值与恶意证书MD5库中的MD5值不相同,则判定该TLS/SSL证书为未知TLS/SSL证书;
判断该未知TLS/SSL证书是否在有效期内,响应于确定该未知 TLS/SSL证书未在有效期内,则生成安全隐患与威胁预警;
响应于该未知TLS/SSL证书在有效期内,则进一步判断TLS/SSL证书是否为自签发证书;
响应于确定TLS/SSL证书为自签发证书,则生成安全隐患与威胁预警;响应于确定TLS/SSL证书为非自签发证书,则将TLS/SSL证书的 MD5值与合法证书MD5库中的MD5值进行匹配。
在本实施例中,响应于确定未知TLS/SSL证书为非自签发且处于有效期内的证书,则通过握手协议数据包中的IP或者域名获取合法证书 MD5库中对应的TLS/SSL证书的基础信息及MD5值,并将获取对应的 TLS/SSL证书的基础信息及MD5值与未知TLS/SSL证书的基础信息和 MD5值进行比对;
响应于确定基础信息和MD5值不一致,则生成安全隐患与威胁预警,响应于确定基础信息和MD5值一致,则结束进程。
该方法通过TLS/SSL证书的MD5值与恶意证书MD5库中的MD5 值进行快速比对,可以快速发现检测出恶意TLS/SSL证书,进而生成安全隐患与威胁预警。通过TLS/SSL证书的MD5值与合法证书MD5库中的MD5值进行匹配,进一步检测出合法TLS/SSL证书,以结束进程提高排查效率,若仍判断不出是否为合法TLS/SSL证书则再进一步进行深度学习模型检测。
步骤103,响应于确定TLS/SSL证书的MD5值与恶意证书MD5库或合法证书MD5库中的MD5值均不相同,且TLS/SSL证书为非自签发且处于有效期内的证书,对TLS/SSL证书进行预处理并映射成图片,进而获得TLS/SSL证书画像。
即未检测出有安全隐患或威胁的流量,并且未能确定具备合法 TLS/SSL证书则进行深度学习检测。
在本实施例中,在步骤103中对TLS/SSL证书进行预处理并映射成图片以获得TLS/SSL证书画像,具体包括:
对提取的TLS/SSL证书进行预处理,预处理过程包括去掉TLS/SSL 证书的有效期、公钥、签名算法和签名哈希算法,保留有效期、使用者信息、颁发者信息、使用者备用名称、指纹算法、指纹等字段。
将经过预处理的TLS/SSL证书以二进制的形式映射为1024*1024的 BMP格式的图片,并将该图片转换为224*224的缩略图,最后使用迭代最佳阈值算法对缩略图进行二值化处理,从而形成TLS/SSL证书画像。
步骤104,通过深度学习检测模型对TLS/SSL证书画像进行检测分类,识别出恶意TLS/SSL证书并生成安全隐患与威胁预警。
在本实施例中,深度学习检测模型通过以下步骤训练得到:
从公开渠道获取恶意证书MD5库和合法证书MD5库,并由网络安全专家对该证书进行分类,从而获得合法家族证书样本和恶意家族证书样本,以及对这些分类好的证书样本进行标注;
对标注后的合法家族证书样本和恶意家族证书样本进行预处理,去掉有效期、公钥、签名算法、签名哈希算法,保留有效期、使用者信息、颁发者信息、使用者备用名称、指纹算法、指纹等字段。
将经过预处理的合法家族证书样本和恶意家族证书样本以二进制的形式映射为1024*1024的BMP格式的图片,并转换为224*224的缩略图,最后使用迭代最佳阈值算法对缩略图进行二值化处理,从而获得 TLS/SSL证书画像;
其中,最佳阈值算法原理如下所示:
(1)求出图象的最大灰度值gl和最小灰度值gu,令初始阈值T0为:
(2)根据初始阈值T0将TLS/SSL证书画像分割为前景和背景,分别求出两者的平均灰度值Ab和Af:
(3)令阈值Tk为:
若Tk=Tk+1,则取Tk为所求得的阈值,否则,转(2)继续进行迭代。
使用卷积神经网络对TLS/SSL证书画像进行卷积训练,自动提取 TLS/SSL证书的特征,最终获得能够检测出恶意TLS/SSL证书及其家族和合法TLS/SSL证书及其家族的深度学习检测模型。
在本实施例中,本发明使用的是基于CNN(Convolutional Neural Network,卷积神经网络)的图像分类器,使用的架构为目前特征提取能力最强的ResNet架构(ResidualNetwork),这种残差学习网络最深可达到1000多层,仍然具有极好的特征提取能力,远超过往包括VGG在内的优秀深度学习结构。目前暂时使用ResNet18即18层卷积层网络进行特征提取分类。ResNet18的结构图如下图4所示,输入图片为3通道 (RGB)大小为224*224图片,原图大小不是224*224通过Pytorch进行变换。Pytorch是基于python的一个科学计算工具,本方法中调用Pytorch 内置函数对图像进行处理。
训练超参数设置:
学习周期(epoch):200个epoch,每个epoch运算一次完整的训练集
学习率(Learning rate,LR):初始为0.01
批量大小(Batch Size):50
gamma参数:0.6
步长大小(setpsize):2000,迭代2000次,学习率从第一个0.01变成0.01*(gamma)0.6=0.006,下一次迭代4000次是0.006*0.6=0.0036
正则化权重(Weight decay):设为0.0002,用来对抗过拟合,权重衰减到更小的值,在一定程度上减少模型过拟合的问题,即训练集表现良好但验证集表现不好。
将数据分别为训练过程中的训练集和验证集,训练集数量是验证集的4~10倍,并且两者不能有重叠,获取数据集图像均值和标准差的文件,图像均值和标准差在训练时图像预处理归一化时需要使用。训练完使用模型进行测试与判别。
结果判定:根据数据训练集深度学习获得的模型参数,对TLS/SSL 证书图像进行机器识别,得出该TLS/SSL证书图像为合法TLS/SSL证书或恶意TLS/SSL证书。如图4所示,该TLS/SSL证书图像经过卷积神经网络判定为合法TLS/SSL证书,如图5所示,该TLS/SSL证书图像经过卷积神经网络判定为恶意TLS/SSL证书。
通过使用深度学习技术对流量中的恶意TLS/SSL证书进行检测和分类,训练得到的模型可以进一步配合上述的传统检测及分析手段以提高检测准确性。能够快速检测出存在安全隐患和威胁的加密流量,快速检测出使用恶意TLS/SSL证书的加密流量以及恶意TLS/SSL证书家族的加密流量。
上述步骤102和步骤104中的安全隐患与威胁预警包括安全隐患、威胁信息和威胁等级,通过查询安全知识库得到对应的安全权重,采用加权的方式算出最终的安全权重,最后根据最终的安全权重获得对应等级的安全隐患与威胁信息并且获得对应威胁等级的预警;
其中,安全知识库中包含各种安全隐患类型、安全隐患信息、威胁类型、威胁信息、威胁等级及对应的安全权重。
下表罗列出部分安全知识库的威胁等级及权重:
通过该方式,用户可以清晰地了解到对应流量的安全隐患、威胁信息和威胁等级。
第二方面,本申请实施例提供了一种加密流量安全检测装置200,如图6所示,该装置200包括:
获取模块201,用于采集网络设备的流量并对流量进行分类,响应于确定流量属于HTTPS流量,保存HTTPS流量中TLS/SSL的握手协议数据包并提取握手协议数据包中的IP和域名,保存TLS/SSL证书并提取证书的基础信息,以及计算并获取TLS/SSL证书的MD5值;
分析模块202,用于TLS/SSL证书的MD5值与恶意证书MD5库和合法证书MD5库中的MD5值进行匹配,以及对TLS/SSL证书进行静态分析,静态分析包括判断TLS/SSL证书是否处于有效期内、是否为自签发的证书;
转换模块203,用于响应于确定TLS/SSL证书的MD5值与恶意证书 MD5库或合法证书MD5库中的MD5值均不相同,对TLS/SSL证书进行预处理并映射成图片,进而获得TLS/SSL证书画像;
识别模块204,用于通过深度学习检测模型对TLS/SSL证书画像进行检测分类,识别出恶意TLS/SSL证书并生成安全隐患与威胁预警。
本申请实施例提供的一种加密流量安全检测方法及装置,使用静态分析方法和深度学习技术相结,在静态分析方法中首次提出以流量中 TLS/SSL证书的MD5值与恶意证书MD5库进行静态匹配;与合法 TLS/SSL证书MD5库进行合法性的校验;在深度学习模型检测方法中,首次提出恶意TLS/SSL证书家族的概念;并且提出使用深度学习技术对流量中恶意TLS/SSL证书的检测和分类。
通过该方法能够快速检测出使用恶意TLS/SSL证书的加密流量及恶意TLS/SSL证书家族的加密流量;检测出使用伪造TLS/SSL证书的中间人攻击的加密流量;检测出使用了可能被中间人攻击利用的自签 TLS/SSL证书的加密流量及其他存在的安全隐患与威胁的加密流量。
第三方面,本申请实施例提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序在被处理器执行时实施以上所述任一项的方法。
下面参考图7,其示出了适于用来实现本申请实施例的终端设备或服务器的计算机系统300的结构示意图。该终端设备或服务器仅仅是一个示例,不应对本申请实施例的功能和使用范围带来任何限制。
如图7所示,计算机系统300包括中央处理单元(CPU)301,其可以根据存储在只读存储器(ROM)302中的程序或者从存储部分308加载到随机访问存储器(RAM)303中的程序而执行各种适当的动作和处理。在RAM 303中,还存储有系统300操作所需的各种程序和数据。CPU 301、ROM 302以及RAM 303通过总线304彼此相连。输入/输出(I/O) 接口305也连接至总线304。
以下部件连接至I/O接口305:包括键盘、鼠标等的输入部分306;包括液晶显示器(LCD)等以及扬声器等的输出部分307;包括硬盘等的存储部分308;以及包括诸如LAN卡、调制解调器等的网络接口卡的通信部分309。通信部分309经由诸如因特网的网络执行通信处理。驱动器 310也根据需要连接至I/O接口305。可拆卸介质311,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器310上,以便于从其上读出的计算机程序根据需要被安装入存储部分308。
特别地,根据本公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分309从网络上被下载和安装,和/或从可拆卸介质311被安装。在该计算机程序被中央处理单元(CPU)301执行时,执行本申请的方法中限定的上述功能。需要说明的是,本申请所述的计算机可读介质可以是计算机可读信号介质或者计算机可读介质或者是上述两者的任意组合。计算机可读介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本申请中,计算机可读介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本申请中,计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:无线、电线、光缆、RF等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言或其组合来编写用于执行本申请的操作的计算机程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
附图中的流程图和框图,图示了按照本申请各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,该模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
描述于本申请实施例中所涉及到的模块可以通过软件的方式实现,也可以通过硬件的方式来实现。所描述的模块也可以设置在处理器中,例如,可以描述为:一种处理器包括获取模块、分析模块和输出模块。其中,这些模块的名称在某种情况下并不构成对该模块本身的限定。
以上描述仅为本申请的较佳实施例以及对所运用技术原理的说明。本领域技术人员应当理解,本申请中所涉及的发明范围,并不限于上述技术特征的特定组合而成的技术方案,同时也应涵盖在不脱离上述发明构思的情况下,由上述技术特征或其等同特征进行任意组合而形成的其它技术方案。例如上述特征与本申请中公开的(但不限于)具有类似功能的技术特征进行互相替换而形成的技术方案。
Claims (10)
1.一种加密流量安全检测方法,其特征在于,所述方法包括:
S1、采集网络设备的流量并对所述流量进行分类,响应于确定所述流量属于HTTPS流量,保存所述HTTPS流量中TLS/SSL的握手协议数据包并提取所述握手协议数据包中的IP和域名,保存TLS/SSL证书并提取证书的基础信息,以及计算并获取所述TLS/SSL证书的MD5值;
S2、所述TLS/SSL证书的MD5值与恶意证书MD5库和合法证书MD5库中的MD5值进行匹配,以及对所述TLS/SSL证书进行静态分析,所述静态分析包括判断所述TLS/SSL证书是否处于有效期内、是否为自签发的证书;
S3、响应于确定所述TLS/SSL证书的MD5值与恶意证书MD5库的MD5值,以及所述TLS/SSL证书的基础信息与合法证书的基础信息均不相同,且所述TLS/SSL证书为非自签发且处于有效期内的证书,对所述TLS/SSL证书进行预处理并映射成图片,进而获得TLS/SSL证书画像;
S4、通过深度学习检测模型对所述TLS/SSL证书画像进行检测分类,识别出恶意TLS/SSL证书并生成安全隐患与威胁预警。
2.根据权利要求1所述的加密流量安全检测方法,其特征在于,步骤S2还包括:
将所述TLS/SSL证书的MD5值与所述恶意证书MD5库中的MD5值进行匹配;
响应于确定所述TLS/SSL证书的MD5值与所述恶意证书MD5库中的MD5值相同,则生成安全隐患与威胁预警;响应于确定所述TLS/SSL证书的MD5值与所述恶意证书MD5库中的MD5值不相同,则确定所述TLS/SSL证书为未知TLS/SSL证书;
响应于确定所述未知TLS/SSL证书为非自签发且处于有效期内的证书,则通过所述握手协议数据包中的IP或者域名获取合法证书MD5库中对应的所述TLS/SSL证书的基础信息及MD5值,并将所述获取对应的所述TLS/SSL证书的基础信息及MD5值与所述未知TLS/SSL证书的基础信息和MD5值进行比对;
响应于确定所述基础信息相同而MD5值不相同,则生成安全隐患与威胁预警,响应于确定所述基础信息和MD5值均相同,则结束进程。
3.根据权利要求1所述的加密流量安全检测方法,其特征在于,在步骤S3中对所述TLS/SSL证书进行预处理并映射成图片以获得TLS/SSL证书画像,包括:
对所述TLS/SSL证书进行预处理,预处理过程包括去掉所述TLS/SSL证书的有效期、公钥、签名算法和签名哈希算法;
将经过预处理的所述TLS/SSL证书以二进制的形式映射成图片,并将所述图片转换为缩略图,使用迭代最佳阈值算法对所述缩略图进行二值化处理,最终获得所述TLS/SSL证书画像。
4.根据权利要求1所述的加密流量安全检测方法,其特征在于,在步骤S2中对所述TLS/SSL证书进行静态分析,包括:
判断所述TLS/SSL证书是否在有效期内,响应于确定所述TLS/SSL证书未在有效期内,则生成安全隐患与威胁预警;
响应于所述TLS/SSL证书在有效期内,则进一步判断所述TLS/SSL证书是否为自签发证书;
响应于确定所述TLS/SSL证书为自签发证书,则生成安全隐患与威胁预警;响应于确定所述TLS/SSL证书为非自签发证书,则将所述TLS/SSL证书的MD5值与所述合法证书MD5库中的MD5值进行匹配。
5.根据权利要求1所述的加密流量安全检测方法,其特征在于,在步骤S1中的采集网络设备的流量并对所述流量进行分类,响应于确实所述流量属于HTTPS流量,包括:
判断所述流量是否属于HTTPS流量;
响应于确定不属于所述HTTPS流量,则直接结束进程;
响应于确定属于所述HTTPS流量,则进行所述握手协议数据包的保存及提取所述TLS/SSL证书的基础信息和计算MD5值。
6.根据权利要求1所述的加密流量安全检测方法,其特征在于,步骤S4中的所述深度学习检测模型通过以下步骤训练得到:
获取所述恶意证书MD5库和所述合法证书MD5库并进行分类,获得合法家族证书样本和恶意家族证书样本并进行标注;
对标注后的所述合法家族证书样本和所述恶意家族证书样本进行预处理,将经过预处理的所述合法家族证书样本和所述恶意家族证书样本以二进制的形式映射为BMP格式的图片,并转换为缩略图;
使用迭代最佳阈值算法对所述缩略图进行二值化处理以获得TLS/SSL证书画像;
使用ResNet18即18层卷积层网络对所述TLS/SSL证书画像进行卷积训练,最终获得能够检测出恶意TLS/SSL证书及其家族和合法TLS/SSL证书及其家族的深度学习检测模型。
7.根据权利要求1所述的加密流量安全检测方法,其特征在于,安全隐患与威胁预警包括安全隐患、威胁信息和威胁等级,通过查询安全知识库得到对应的安全权重,采用加权的方式算出最终的安全权重,最后根据所述最终的安全权重获得对应等级的安全隐患与威胁信息并且获得对应威胁等级的预警;
其中,所述安全知识库中包含各种安全隐患类型、安全隐患信息、威胁类型、威胁信息、威胁等级及对应的安全权重。
8.根据权利要求1所述的加密流量安全检测方法,其特征在于,在步骤S1中所述基础信息包括:证书有效期、使用者信息和颁发者信息;在步骤S2中所述恶意证书MD5库包括已确认为恶意程序使用的TLS/SSL证书计算所得到的MD5值、威胁信息、威胁等级;所述合法证书MD5库包括已确认为安全合法程序使用的TLS/SSL证书的基础信息和MD5值,以及IP、域名。
9.一种加密流量安全检测装置,其特征在于,所述装置包括:
获取模块,用于采集网络设备的流量并对所述流量进行分类,响应于确定所述流量属于HTTPS流量,保存所述HTTPS流量中TLS/SSL的握手协议数据包并提取所述握手协议数据包中的IP和域名,保存TLS/SSL证书并提取证书的基础信息,以及计算并获取所述TLS/SSL证书的MD5值;
分析模块,用于所述TLS/SSL证书的MD5值与恶意证书MD5库和合法证书MD5库中的MD5值进行匹配,以及对所述TLS/SSL证书进行静态分析,所述静态分析包括判断所述TLS/SSL证书是否处于有效期内、是否为自签发的证书;
转换模块,用于响应于确定所述TLS/SSL证书的MD5值与恶意证书MD5库的MD5值,以及所述TLS/SSL证书的基础信息与合法证书的基础信息均不相同,且所述TLS/SSL证书为非自签发且处于有效期内的证书,对所述TLS/SSL证书进行预处理并映射成图片,进而获得TLS/SSL证书画像;
识别模块,用于通过深度学习检测模型对所述TLS/SSL证书画像进行检测分类,识别出恶意TLS/SSL证书并生成安全隐患与威胁预警。
10.一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序在被处理器执行时实施如权利要求1-8中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111229293.7A CN113904861B (zh) | 2021-10-21 | 2021-10-21 | 一种加密流量安全检测方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111229293.7A CN113904861B (zh) | 2021-10-21 | 2021-10-21 | 一种加密流量安全检测方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113904861A CN113904861A (zh) | 2022-01-07 |
CN113904861B true CN113904861B (zh) | 2023-10-17 |
Family
ID=79025905
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111229293.7A Active CN113904861B (zh) | 2021-10-21 | 2021-10-21 | 一种加密流量安全检测方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113904861B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114679307A (zh) * | 2022-03-18 | 2022-06-28 | 深圳市纽创信安科技开发有限公司 | 一种tls加密威胁检测方法和系统 |
CN115085992B (zh) * | 2022-06-09 | 2023-08-15 | 北京启明星辰信息安全技术有限公司 | 一种恶意https隐秘通道的检测系统及其检测方法 |
CN115941361B (zh) * | 2023-02-16 | 2023-05-09 | 科来网络技术股份有限公司 | 恶意流量识别方法、装置及设备 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106603519A (zh) * | 2016-12-07 | 2017-04-26 | 中国科学院信息工程研究所 | 一种基于证书特征泛化和服务器变迁行为的ssl/tls加密恶意服务发现方法 |
CN109379377A (zh) * | 2018-11-30 | 2019-02-22 | 极客信安(北京)科技有限公司 | 加密恶意流量检测方法、装置、电子设备及存储介质 |
CN110113349A (zh) * | 2019-05-15 | 2019-08-09 | 北京工业大学 | 一种恶意加密流量特征分析方法 |
CN112152961A (zh) * | 2019-06-26 | 2020-12-29 | 北京观成科技有限公司 | 一种恶意加密流量的识别方法及装置 |
CN112152966A (zh) * | 2019-06-27 | 2020-12-29 | 北京观成科技有限公司 | 非法ssl证书的识别方法及装置 |
CN113259313A (zh) * | 2021-03-30 | 2021-08-13 | 浙江工业大学 | 一种基于在线训练算法的恶意https流量智能分析方法 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP2996300B1 (en) * | 2014-09-11 | 2018-11-07 | The Boeing Company | A computer implemented method of analyzing x.509 certificates in ssl/tls communications and the data-processing system |
US10686831B2 (en) * | 2016-11-16 | 2020-06-16 | Cisco Technology, Inc. | Malware classification and attribution through server fingerprinting using server certificate data |
-
2021
- 2021-10-21 CN CN202111229293.7A patent/CN113904861B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106603519A (zh) * | 2016-12-07 | 2017-04-26 | 中国科学院信息工程研究所 | 一种基于证书特征泛化和服务器变迁行为的ssl/tls加密恶意服务发现方法 |
CN109379377A (zh) * | 2018-11-30 | 2019-02-22 | 极客信安(北京)科技有限公司 | 加密恶意流量检测方法、装置、电子设备及存储介质 |
CN110113349A (zh) * | 2019-05-15 | 2019-08-09 | 北京工业大学 | 一种恶意加密流量特征分析方法 |
CN112152961A (zh) * | 2019-06-26 | 2020-12-29 | 北京观成科技有限公司 | 一种恶意加密流量的识别方法及装置 |
CN112152966A (zh) * | 2019-06-27 | 2020-12-29 | 北京观成科技有限公司 | 非法ssl证书的识别方法及装置 |
CN113259313A (zh) * | 2021-03-30 | 2021-08-13 | 浙江工业大学 | 一种基于在线训练算法的恶意https流量智能分析方法 |
Non-Patent Citations (2)
Title |
---|
Android Malware Detection Scheme Based on Level of SSL Server Certificate;Kato Hiroya;《IEICE TRANSACTIONS ON INFORMATON AND SYSTEM》;第E103D卷(第2期);全文 * |
基于机器学习的TLS恶意加密流量检测方案;骆子铭;许书彬;刘晓东;;网络与信息安全学报(第01期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN113904861A (zh) | 2022-01-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113904861B (zh) | 一种加密流量安全检测方法及装置 | |
US10834128B1 (en) | System and method for identifying phishing cyber-attacks through deep machine learning via a convolutional neural network (CNN) engine | |
CN113705619B (zh) | 一种恶意流量检测方法、系统、计算机及介质 | |
US20190104154A1 (en) | Phishing attack detection | |
Qin et al. | Perceptual image hashing with selective sampling for salient structure features | |
CN109492395B (zh) | 一种检测恶意程序的方法、装置及存储介质 | |
CN111385270A (zh) | 基于waf的网络攻击检测方法及装置 | |
KR101803066B1 (ko) | 불법 복제된 서적의 통합 식별 시스템 및 방법 | |
AlGarni et al. | An efficient convolutional neural network with transfer learning for malware classification | |
Alkhowaiter et al. | Evaluating perceptual hashing algorithms in detecting image manipulation over social media platforms | |
CN111049828A (zh) | 网络攻击检测及响应方法及系统 | |
CN110895811A (zh) | 一种图像篡改检测方法和装置 | |
CN113420295A (zh) | 恶意软件的检测方法及装置 | |
CN115987687B (zh) | 网络攻击取证方法、装置、设备及存储介质 | |
CN107995167B (zh) | 一种设备识别方法及服务器 | |
CN116738369A (zh) | 一种流量数据的分类方法、装置、设备及存储介质 | |
CN113888760B (zh) | 基于软件应用的违规信息监控方法、装置、设备及介质 | |
CN115688107A (zh) | 一种涉诈app检测系统和方法 | |
Li | Handbook of Research on Computational Forensics, Digital Crime, and Investigation: Methods and Solutions: Methods and Solutions | |
Toraskar et al. | Efficient computer forensic analysis using machine learning approaches | |
Reddy et al. | Hash code based image authentication using rotation invariant local phase quantization | |
Miao et al. | A Good Fishman Knows All the Angles: A Critical Evaluation of Google's Phishing Page Classifier | |
CN116070286B (zh) | 一种数据伪造检测方法、装置及设备 | |
Liu | Correlation analysis for illegal tampering image evidence detection | |
Jin et al. | Digital image forensics: A two-step approach for identifying source and detecting forgeries |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |