CN105721242B - 一种基于信息熵的加密流量识别方法 - Google Patents
一种基于信息熵的加密流量识别方法 Download PDFInfo
- Publication number
- CN105721242B CN105721242B CN201610052839.9A CN201610052839A CN105721242B CN 105721242 B CN105721242 B CN 105721242B CN 201610052839 A CN201610052839 A CN 201610052839A CN 105721242 B CN105721242 B CN 105721242B
- Authority
- CN
- China
- Prior art keywords
- comentropy
- encryption
- data
- flux based
- information
- 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
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/06—Generation of reports
- H04L43/062—Generation of reports related to network traffic
-
- 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/30—Network architectures or network communication protocols for network security for supporting lawful interception, monitoring or retaining of communications or communication related information
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Technology Law (AREA)
- Computer Hardware Design (AREA)
- Computer Security & Cryptography (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
一种基于信息熵的加密流量识别方法,属于计算机网络安全技术领域。含有信息熵加密检测算法,通过计算待测流量有效载荷的信息熵,如果计算出的信息熵在与相对应的平均信息熵的3倍置信区间之内,则为加密信息,否则为非加密信息;包括以下步骤:网络数据采集;平均信息熵计算;实际数据包信息熵计算;流量识别及结果分析。本发明的优点在于能够实现在线识别,不会侵犯用户隐私,并且拥有较高的分析效率和低误报率。
Description
技术领域
本发明涉及一种基于信息熵的加密流量识别方法,属于计算机网络安全技术领域。
背景技术
随着计算机网络的不断发展和普及,各种网络应用层出不穷,安全性问题也不断升级,都要求网络监管机构能对各种网络流量进行识别、分类和控制。其中加密流量在网络中占有相当的比重,一些恶意破坏分子利用加密流量和匿名通信协议进行破坏活动,在一定程度上极有可能危及国家网络安全,因此对加密流量和匿名通信协议进行识别逐渐成为亟需解决的问题。
网络应用层流量识别对网络规划、网络管理、流量工程等至关重要。传统方法中针对网络流量应用分析的研究主要有两类:第一种途径是根据熟知的TCP/UDP协议中的端口号进行应用识别,这种检测方法假设网络中的应用均遵循和使用由IANA(InternetAssigned Numbers Authority)提供的知名端口,然而这种假设逐渐被非标准端口的使用所推翻。一些应用软件(例如Skype,迅雷)为了穿越防火墙或者绕过操作系统的某些限制而使用动态端口或常用协议的端口(例如80,443端口),致使基于端口的流识别方法的准确率受到极大影响。
而另外一种途径则是采用深层数据包检测技术(DPI)对网络流进行分类识别。这类检测方法则是基于深层数据包检测技术(Deep Packet Inspection,DPI技术),而DPI技术则主要通过对数据包的应用层数据进行特征匹配来进行流量的识别,这种特征匹配的识别技术也决定了被遍历的所有数据包内容均需可以被正确访问。然而,以Secure Shell(SSH)和Skype Voice over Internet Protocol(VoIP)为代表的加密流量的普及使得DPI技术正逐步失去其原有的统治地位。因此,针对加密流量的高准确度识别技术研究也变得极具有实际意义,并且逐步成为了一个发展方向。
发明内容
为了克服现有技术的不足,本发明提供一种基于信息熵的加密流量识别方法,对网络流量审计和识别有重要作用,并且拥有较高的分析效率和低误报率,针对现有的各种匿名网络实行加密流量传输的情况,采用此方法提高加密流量的识别效率。
从网络流量中区分出加密流量对维护网络环境的安全起着非常重要的作用,本方法通过对加密流量编码特征的深入研究,借鉴信息论编码知识提出了一种基于信息熵的加密流量识别方法,该方法可以结合传统机器学习方法,且能够实现在线识别,不会侵犯用户隐私,并且拥有较高的分析效率和低误报率。
一种基于信息熵的加密流量识别方法,含有信息熵加密检测算法,通过计算待测流量有效载荷的信息熵,如果计算出的信息熵在与相对应的平均信息熵的3倍置信区间之内,则为加密信息,否则为非加密信息。
包括以下步骤:
步骤S1、网络数据采集;
步骤S2、平均信息熵计算;
步骤S3、实际数据包信息熵计算;
步骤S4、流量识别及结果分析。
本发明的优点在于借鉴信息论编码知识提出了一种基于信息熵的加密流量识别方法,且能够实现在线识别,不会侵犯用户隐私,并且拥有较高的分析效率和低误报率。
附图说明
当结合附图考虑时,通过参照下面的详细描述,能够更完整更好地理解本发明以及容易得知其中许多伴随的优点,但此处所说明的附图用来提供对本发明的进一步理解,构成本发明的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定,如图其中:
图1为本发明的结构示意图。
下面结合附图和实施例对本发明进一步说明。
具体实施方式
显然,本领域技术人员基于本发明的宗旨所做的许多修改和变化属于本发明的保护范围。
实施例1:如图1所示,一种基于信息熵的加密流量识别方法,含有以下步骤;
步骤S1、网络数据采集;
步骤S2、平均信息熵计算;
步骤S3、实际数据包信息熵计算;
步骤S4、流量识别及结果分析。
步骤S1的包括下列步骤:
步骤S11、从网络中截取一部分数据流量包,将其保存为pacp文件;
步骤S12、按照数据包的格式读取TCP协议下数据流负载的有效载荷部分,即将协议头去掉后的部分的前64字节的内容存储至一个64*256的二维特征向量中;
步骤S2的包括下列步骤:
步骤S21、利用蒙特卡洛方法模拟10000次长度为64字节的在0-256之间伪随机数生成序列;
步骤S22、将每次的序列根据公式(1):
其中
来计算HN(u),N为字节长度64,m为256,ni表示0-256之间字符i对应的频率;此方法即为利用最大似然估计得到的平均信息熵HN(u);
步骤S3的包括下列步骤;
步骤S31、统计步骤S12中64*256的二维特征向量中每个0~256字符的个数;
步骤S32、利用公式(3)
来计算此次事件的信息熵H,其中Pi为每个字符的频数;
步骤S4的包括下列步骤:
步骤S41、将步骤S2中每次产生的信息熵的方差σ计算出来,公式(4)如下:
σ=((H1(P)-Hu(p))2+...(Hk(P)-Hu(p))2)/k (4)
其中HK(P)表示第K次事件的信息熵,Hu(p)表示所有事件的平均信息熵;
步骤S42、看每次在S3中计算的实际信息熵是否在平均信息熵的三倍置信区间内,是则为加密信息,反之则,没有加密。
实施例2:如图1所示,一种基于信息熵的加密流量识别方法,含有以下步骤;
步骤S1、网络数据采集;本步骤直接用现有的抓包软件如Wireshark等来采集网络的数据流量包,作为输入的样本,然后对流量包按照需要的格式进行处理,提取出本实验需要的信息,并对数据进行保存,值得注意的是在此过程中尽量将不属于TCP的流量先过滤掉,这样可以在后面的识别过程中达到尽可能高的识别率;
步骤S2、平均信息熵计算:此过程是该发明要执行的尤为重要的过程,通过利用对s1过程中形成的数据向量进行处理,为了更好的从样本中反应总体参数特征,引入N截断信息熵,也就是说利用长度为N的语句w,然后根据蒙特卡洛的方法来模拟出每种情况下N字节的不同组成情况,然后根据公式(1)的最大似然方法来求出所有N字节情况的信息熵的平均值,作为判断信息熵的阀值,以备下面步骤的输入用;
步骤S3、实际数据包信息熵计算:该步骤是此次发明的核心步骤,主要根据香农在信息论中提出的信息熵的计算,一个系统越是有序,信息熵就越低,因此信息熵是系统有序化程度的一个度量。在数据处理过程中,导致信息熵增加的方法主要有压缩算法和加密算法两种。压缩算法使得数据表示的比特数最少,数据加密使得任何原消息中可以预测的特征模式被去除。其中指出m个可能事件A1~Am每个可能发生的概率分别为P1,P2,..Pm已知。熵定义为以下所示公式:
其中Pi表示事件Ai发生的频率;
它能够测量信息量不确定性的大小,进而通过这种方法使得可以根据每次截取的数据包的数据来计算单独一次的信息熵,并作为以下步骤的输入;
步骤S4、流量识别及结果分析:该步骤用来形成对观测流量的识别结果。在此过程总根据在计算平均信息熵阀值的过程中模拟计算出所有情况的信息熵的方差,在取得步骤S2、步骤S3的计算结果后,利用概率统计中的无偏估计法,得出在最大似然估计值和(1)式得出的值越接近,那么该待测样本越有可能是平均分布的。也就说越接近则越有可能是加密数据或者是压缩数据,在此取3倍的方差,作为置信区间的阀值来判断,如果在其范围内,就认为是加密信息,反之则不是。
本方案相关术语定义:
信息熵:信息熵能够用作测量消息的信息量不确定性大小。一个系统越是有序,信息熵就越低,因此信息熵是系统有序化程度的一个度量。
最大似然估计:是一种具有理论性的点估计法,此方法的基本思想是:当从模型总体随机抽取n组样本观测值后,最合理的参数估计量应该使得从模型中抽取该n组样本观测值的概率最大。
平均信息熵:所有长度为N的信息熵求和的平均值。
如上所述,对本发明的实施例进行了详细地说明,但是只要实质上没有脱离本发明的发明点及效果可以有很多的变形,这对本领域的技术人员来说是显而易见的。因此,这样的变形例也全部包含在本发明的保护范围之内。
Claims (9)
1.一种基于信息熵的加密流量识别方法,其特征在于含有信息熵加密检测算法,通过计算待测流量有效载荷的信息熵,如果计算出的信息熵在与相对应的平均信息熵的3倍置信区间之内,则为加密信息,否则为非加密信息;包括以下步骤:
步骤S1、网络数据采集;
步骤S2、平均信息熵计算;
步骤S3、实际数据包信息熵计算;
步骤S4、流量识别及结果分析。
2.根据权利要求1所述的一种基于信息熵的加密流量识别方法,其特征在于步骤S1的包括下列步骤:
步骤S11、从网络中截取一部分数据流量包,将其保存为pacp文件;
步骤S12、按照数据包的格式读取TCP协议下数据流负载的有效载荷部分,即将协议头去掉后的部分的前64字节的内容存储至一个64*256的二维特征向量中。
3.根据权利要求1所述的一种基于信息熵的加密流量识别方法,其特征在于步骤S2的包括下列步骤:
步骤S21、利用蒙特卡洛方法模拟10000次长度为64字节的在0-256之间伪随机数生成序列;
步骤S22、将每次的序列根据公式(1):
其中
来计算HN(u),N为字节长度64,m为256,ni表示0-256之间字符i对应的频率;此方法即为利用最大似然估计得到的平均信息熵HN(u)。
4.根据权利要求1所述的一种基于信息熵的加密流量识别方法,其特征在于步骤S3的包括下列步骤;
步骤S31、统计步骤S12中64*256的二维特征向量中每个0~256字符的个数;
步骤S32、利用公式(3)
来计算此次事件的信息熵H,其中Pi为每个字符的频率。
5.根据权利要求1所述的一种基于信息熵的加密流量识别方法,其特征在于步骤S4的包括下列步骤:
步骤S41、将步骤S2中每次产生的信息熵的方差σ计算出来,公式(4)如下:
σ=((H1(P)-Hu(p))2+...(Hk(P)-Hu(p))2)/k (4)
步骤S42、看每次在S3中计算的实际信息熵是否在平均信息熵的三倍置信区间内,是则为加密信息,反之则,没有加密。
6.根据权利要求1所述的一种基于信息熵的加密流量识别方法,其特征在于步骤S1网络数据采集;用现有的抓包软件如Wireshark来采集网络的数据流量包,作为输入的样本,然后对流量包按照需要的格式进行处理,提取出需要的信息,并对数据进行保存,将不属于TCP的流量先过滤掉。
7.根据权利要求3所述的一种基于信息熵的加密流量识别方法,其特征在于步骤S2平均信息熵计算:通过利用对步骤S1过程中形成的数据向量进行处理,引入N截断信息熵,利用长度为N的语句w,然后根据蒙特卡洛的方法来模拟出每种情况下N字节的不同组成情况,然后根据公式(1)的最大似然方法来求出所有N字节情况的信息熵的平均值,作为判断信息熵的阀值,以备下面步骤的输入用。
8.根据权利要求3所述的一种基于信息熵的加密流量识别方法,其特征在于步骤S3实际数据包信息熵计算,根据每次截取的数据包的数据来计算单独一次的信息熵,并作为以下步骤的输入。
9.根据权利要求3所述的一种基于信息熵的加密流量识别方法,其特征在于步骤S4流量识别及结果分析:根据在计算平均信息熵阀值的过程中模拟计算出所有情况的信息熵的方差,在取得步骤S2、步骤S3的计算结果后,利用概率统计中的无偏估计法,得出在最大似然估计值和(1)式得出的值越接近,那么该待测样本越有可能是平均分布的;也就说越接近则越有可能是加密数据或者是压缩数据,在此取3倍的方差,作为置信区间的阀值来判断,如果在其范围内,就认为是加密信息,反之则不是。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610052839.9A CN105721242B (zh) | 2016-01-26 | 2016-01-26 | 一种基于信息熵的加密流量识别方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610052839.9A CN105721242B (zh) | 2016-01-26 | 2016-01-26 | 一种基于信息熵的加密流量识别方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105721242A CN105721242A (zh) | 2016-06-29 |
CN105721242B true CN105721242B (zh) | 2018-10-12 |
Family
ID=56155022
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610052839.9A Active CN105721242B (zh) | 2016-01-26 | 2016-01-26 | 一种基于信息熵的加密流量识别方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105721242B (zh) |
Families Citing this family (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106953854B (zh) * | 2016-12-15 | 2019-10-18 | 中国电子科技集团公司第三十研究所 | 一种基于svm机器学习的暗网流量识别模型的建立方法 |
CN106850344B (zh) * | 2017-01-22 | 2019-10-29 | 中国人民解放军信息工程大学 | 基于流梯度导向的加密流量识别方法 |
CN107085687B (zh) * | 2017-05-11 | 2020-10-27 | 北京理工大学 | 基于二进制熵的模糊测试加解密函数定位方法 |
CN110502894B (zh) * | 2018-05-18 | 2023-03-21 | 阿里巴巴集团控股有限公司 | 操作行为的识别方法、设备和系统 |
WO2019223697A1 (en) * | 2018-05-23 | 2019-11-28 | Guangdong Oppo Mobile Telecommunications Corp., Ltd. | Communication method, terminal device and core network device |
CN109104441A (zh) * | 2018-10-24 | 2018-12-28 | 上海交通大学 | 一种基于深度学习的加密恶意流量的检测系统和方法 |
CN110012029B (zh) * | 2019-04-22 | 2020-05-26 | 中国科学院声学研究所 | 一种区分加密和非加密压缩流量的方法和系统 |
CN110391958B (zh) * | 2019-08-15 | 2021-04-09 | 北京中安智达科技有限公司 | 一种对网络加密流量自动进行特征提取和识别的方法 |
JP7221170B2 (ja) * | 2019-08-30 | 2023-02-13 | エヌ・ティ・ティ・コミュニケーションズ株式会社 | 属性情報生成装置、属性識別装置、属性情報生成方法及び属性識別方法 |
CN113810336A (zh) * | 2020-06-11 | 2021-12-17 | 北京威努特技术有限公司 | 一种数据报文加密判定方法、装置及计算机设备 |
CN111901307B (zh) * | 2020-06-29 | 2021-09-10 | 北京天融信网络安全技术有限公司 | 一种加密流量识别方法、装置、设备及介质 |
CN113626846A (zh) * | 2021-08-23 | 2021-11-09 | 中国银行股份有限公司 | 加密方式的识别方法、装置和存储介质 |
CN116915504B (zh) * | 2023-09-11 | 2023-11-21 | 中国电子科技集团公司第三十研究所 | 未知协议流量数据明密态的细粒度识别方法 |
CN117172611B (zh) * | 2023-09-27 | 2024-08-23 | 北京瑞风协同科技股份有限公司 | 一种设计制造过程中全机紧固件测评的方法、系统及设备 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101645884A (zh) * | 2009-08-26 | 2010-02-10 | 西安理工大学 | 基于相对熵理论的多测度网络异常检测方法 |
CN101795215A (zh) * | 2010-01-28 | 2010-08-04 | 哈尔滨工程大学 | 网络流量异常检测方法及检测装置 |
CN104079452A (zh) * | 2014-06-30 | 2014-10-01 | 电子科技大学 | 一种数据监测技术和分类网络流量异常的方法 |
WO2015128609A1 (en) * | 2014-02-28 | 2015-09-03 | British Telecommunications Public Limited Company | Profiling for malicious encrypted network traffic identification |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4074851B2 (ja) * | 2003-12-25 | 2008-04-16 | 株式会社日立製作所 | 通信中継方法および中継装置 |
-
2016
- 2016-01-26 CN CN201610052839.9A patent/CN105721242B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101645884A (zh) * | 2009-08-26 | 2010-02-10 | 西安理工大学 | 基于相对熵理论的多测度网络异常检测方法 |
CN101795215A (zh) * | 2010-01-28 | 2010-08-04 | 哈尔滨工程大学 | 网络流量异常检测方法及检测装置 |
WO2015128609A1 (en) * | 2014-02-28 | 2015-09-03 | British Telecommunications Public Limited Company | Profiling for malicious encrypted network traffic identification |
CN104079452A (zh) * | 2014-06-30 | 2014-10-01 | 电子科技大学 | 一种数据监测技术和分类网络流量异常的方法 |
Non-Patent Citations (2)
Title |
---|
基于信息熵的加密会话检测方法;陈利,张利,班晓芳,梁杰;《计算机科学》;20150131;正文全文 * |
基于信息熵的流量识别方法;吴震,刘兴彬,童晓民;《计算机工程》;20091031;正文全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN105721242A (zh) | 2016-06-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105721242B (zh) | 一种基于信息熵的加密流量识别方法 | |
Shrestha et al. | A support vector machine-based framework for detection of covert timing channels | |
CN107646190B (zh) | 恶意加密流量检测器、识别方法以及计算机程序元件 | |
CN107637041A (zh) | 恶意加密网络流量识别的习得的简况 | |
Lin et al. | Timing-based anomaly detection in SCADA networks | |
JP2006279930A (ja) | 不正アクセス検出方法及び装置、並びに不正アクセス遮断方法及び装置 | |
CN109672687B (zh) | 基于可疑度评估的http混淆流量检测方法 | |
CN111181901A (zh) | 异常流量检测装置及其异常流量检测方法 | |
CN106973047A (zh) | 一种异常流量检测方法和装置 | |
Alshehri et al. | Attacking and protecting tunneled traffic of smart home devices | |
CN112769633B (zh) | 一种代理流量检测方法、装置、电子设备及可读存储介质 | |
Celik et al. | Salting public traces with attack traffic to test flow classifiers | |
Yan et al. | Identifying wechat red packets and fund transfers via analyzing encrypted network traffic | |
Charlier et al. | SynGAN: Towards generating synthetic network attacks using GANs | |
JP2004312064A (ja) | ネットワーク異常検出装置、ネットワーク異常検出方法およびネットワーク異常検出プログラム | |
Iglesias et al. | DAT detectors: uncovering TCP/IP covert channels by descriptive analytics | |
Zhong et al. | Stealthy malware traffic-not as innocent as it looks | |
Zhang et al. | Network packet length covert channel based on empirical distribution function | |
Labib et al. | Detecting and visualizing denialof-service and network probe attacks using principal component analysis | |
Vieira et al. | Model order selection and eigen similarity based framework for detection and identification of network attacks | |
CN117371044A (zh) | 一种基于大数据的计算机信息安全处理方法及系统 | |
Mather et al. | Pinpointing side-channel information leaks in web applications | |
Karimpour et al. | Intrusion detection in network flows based on an optimized clustering criterion | |
CN106790175A (zh) | 一种蠕虫事件的检测方法及装置 | |
Oujezsky et al. | Botnet C&C traffic and flow lifespans using survival analysis |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |