CN109450842A - 一种基于神经网络的网络恶意行为识别方法 - Google Patents
一种基于神经网络的网络恶意行为识别方法 Download PDFInfo
- Publication number
- CN109450842A CN109450842A CN201811035524.9A CN201811035524A CN109450842A CN 109450842 A CN109450842 A CN 109450842A CN 201811035524 A CN201811035524 A CN 201811035524A CN 109450842 A CN109450842 A CN 109450842A
- Authority
- CN
- China
- Prior art keywords
- network
- data
- domain name
- dga
- gram
- 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.)
- Granted
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/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
-
- 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/06—Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons
- G06N3/061—Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons using biological neurons, e.g. biological neurons connected to an integrated circuit
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/09—Mapping addresses
- H04L61/10—Mapping addresses of different types
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/45—Network directories; Name-to-address mapping
- H04L61/4505—Network directories; Name-to-address mapping using standardised directories; using standardised directory access protocols
- H04L61/4511—Network directories; Name-to-address mapping using standardised directories; using standardised directory access protocols using domain name system [DNS]
-
- 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
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D30/00—Reducing energy consumption in communication networks
- Y02D30/50—Reducing energy consumption in communication networks in wire-line communication networks, e.g. low power modes or reduced link rate
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- General Engineering & Computer Science (AREA)
- Computing Systems (AREA)
- Health & Medical Sciences (AREA)
- Life Sciences & Earth Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Molecular Biology (AREA)
- Neurology (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- General Health & Medical Sciences (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Artificial Intelligence (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Computer And Data Communications (AREA)
Abstract
本发明涉及一种基于神经网络的网络恶意行为识别方法,所述方法包括以下步骤:步骤一:正常域名及动态域名训练形成训练数据;步骤二:获取网络数据包;步骤三:根据数据过滤器设置过滤数据并设置归并;步骤四:对协议数据进行特征预抽取;步骤五:将获取的向量进行标记;步骤六:生成LSTM神经网络权重及偏置描述文件。该技术方案为更好地发现网络安全问题、检测各类逃避手段提供了分析依据、方法及工具,特别针对动态域名请求及其后续发生的行为甄别提供了有力的解决方案。
Description
技术领域
本发明涉及一种识别方法,具体涉及一种基于神经网络的网络恶意行为识别方法,属于深度包检测技术领域。
背景技术
域名服务(DNS):域名服务是在internet上作为域名和IP地址相互映射的一个分布式数据库,能够使用户更方便的访问互联网,而不用去记住能够被机器直接读取的IP数串。通过域名,最终得到该域名对应的IP地址的过程叫做域名解析(或主机名解析)。DNS 协议运行在UDP或TCP(当包长超出一定大小之后)协议之上,使用端口号53。
动态生成算法(DGA):在域名产生机制中,基于动态生成算法(DynamicGeneration Algorithm,缩写为DGA)是一种根据一定随机方式生成的域名,信息安全领域中它一般被用于木马回连(被称作命令与控制,即Command and Control,简称C&C),即内网服务器或终端由于某种原因安装了木马程序,从而将一些敏感信息泄露到外网(因对于防火墙策略配置而言,比较重视外网连接的约束,而对于内网访问外网则不会进行过多控制),此类程序为了实施逃避和远程操控,会使用一些随机生成的域名进行通讯。
长短时记忆神经网络:长短时记忆神经网络(Long Short-Term Memory,简称LSTM)是长短期记忆网络,是一种时间递归神经网络,适合于处理和预测时间序列中间隔和延迟相对较长的重要事件。
LSTM已经在科技领域有了多种应用。基于LSTM的系统可以学习翻译语言、控制机器人、图像分析、文档摘要、语音识别图像识别、手写识别、控制聊天机器人、预测疾病、点击率和股票、合成音乐等等任务。
传统的网络行为异常识别是针对网络数据包的结构化头部进行分析并基于网络会话进行统计;其主要流程一般都是遵循如下方式进行:
1.对网络数据包的各层进行解码,包括以太头(二层)、网络层(三层)、传输层(四层)以及应用层(七层)等;其中最为重要的部分,即可成为各类恶意行为所利用的数据就是应用层;
2.根据应用层数据进行较为详细的分析,拆解成各个元数据(如HTTP的域名等);
3.使用各类规则(如入侵检测)对七层原始数据或格式化后的数据进行检测,检测的手段无外乎单模式、多模式或正则匹配,如发现有命中规则的部分则生成告警数据。
然而随着网络的不断发展,许多病毒、恶意代码、入侵指令、垃圾邮件、电子货币挖矿行为(如比特币、莱特币等,这实质上也是一种木马行为,会占用一些网络带宽、计算机算力,并且会消耗很多电力资源)等信息都隐藏在数据包的内容之中,而且这些数据一般会被加密,很难或者几乎不可能通过特征规则去匹配;因此,当前在进行网络安全检测时,除了要使用传统的特征库匹配方式,还需要进一步挖掘出层出不穷的恶意网络行为中存在的规律。
另外,当今信息安全行业越来越重视对于威胁情报的共享,并会在安全产品中集成威胁情报检测功能,但本质上这些威胁情报也是基于特征进行的(如黑IP地址或黑域名),而威胁情报毕竟存在一定的迟滞性,而且由于用户并不清楚情报的来龙去脉,所以会产生一些误解,非常明显的就是其中含有类似中国电信域名服务器地址114.114.114.114以及Google域名服务器8.8.8.8等(实质上是存在有恶意软件向上述DNS服务器请求地址,故会被威胁情报收集组织加入名单),造成不好的感受,认为是相关安全产品的误报。
而越来越多的恶意软件会使用动态域名技术以规避相关情报等的检测,这更加造成了对于网络中失陷主机侦测的难度;而且,黑客所广泛采用的域名快闪技术也会在一定程度上对网络恶意行为的检测造成困扰,所以一种主要以针对各种域名检测的方法、综合机器学习手段及其它网络异常特征,以发现网络安全问题的技术就成为必须。
初步检索后,现有技术中相关的方案如下:公开号为CN201810079555.8(一种基于大数据的实时网络异常行为检测系统及方法)公开了一种基于大数据的实时网络异常行为检测系统,包括流量采集层、数据管道层、实时计算层、数据存储层、数据分析层以及应用层;所述流量采集层,包括采集装置;所述数据管道层,包括采用分布式消息系统的数据管道服务模块;所述实时计算层,包括流式计算模块;所述数据存储层,包括分布式文件服务模块、分布式数据库模块以及检索服务模块;所述数据分析层,包括模型训练模块、实时检测模块;所述应用层,包括可视化告警模块。还公开了一种基于大数据的实时网络异常行为检测方法。如其名称中所示,其主要是利用大数据方法对网络数据进行一般维度的统计,没有看到其对七层数据的分析而且是基于一般统计方法(无采用何种训练方法的相关描述),可能对部分异常流量有一定的作用,但已然不符合现今信息安全发展的趋势;公开号为CN201710541775.3(一种网络异常行为检测与分析的方法及系统)公开了一种网络异常行为检测与分析的方法及系统,用以解决现有技术中训练数据不平衡影响训练效果并且无法对所有种类的攻击行为和攻击手段进行穷举的问题。该方法包括:S1、统计安全用户的访问行为特征数据;S2、根据所述特征数据构建一类支持向量机模型;S3、利用所述一类支持向量机模型对全网用户的访问行为特征进行预测分析以识别异常访问行为。本发明基于机器学习,更好地检测到网络的异常行为,及时发现不同类型的攻击,利用数据挖掘的特点,研究在线网络异常行为分析与检测,从而能够针对其作出有效的决策响应,提高网络安全性和资源利用率。此发明主要利用 URL进行分词来检测异常访问,并且采用支持向量机进行判断;这种方法存在较大局限性,特别是如恶意软件使用HTTPS进行数据的传递,则完全失效,故没有特别的实用价值;公开号为CN201610500130.0(网络异常行为的监测方法及系统)公开了一种网络异常行为的检测方法及系统。其中方法包括:从网络访问日志中获取网络访问数据集;从网络访问数据集中提取每个特定域名下的网络访问数据,计算网络访问数据中指定字段的统计特性参数;从不同维度检测网络访问数据集中各条网络访问数据的行为特性,生成各条网络访问数据对应的多维特征向量;基于训练数据集中各条训练数据的多维特征向量和各条训练数据的实际类标、以及检测数据集中各条检测数据的多维特征向量,采用机器学习中的分类算法,得到检测数据集中各条检测数据的预测类标。此发明采用的方法与 CN201710541775.3类似,也将URL作为识别的重要特征,没有充分利用DNS信息,故存在问题也与前者类似,不再赘述。因此,迫切的需要一种新的方案解决上述技术问题。
发明内容
本发明正是针对现有技术中存在的技术问题,提供一种基于神经网络的网络恶意行为识别方法,该技术方案为更好地发现网络安全问题、检测各类逃避手段提供了分析依据、方法及工具,特别针对动态域名请求及其后续发生的行为甄别提供了有力的解决方案。
为了实现上述目的,本发明的技术方案如下:一种基于神经网络的网络恶意行为识别方法,其特征在于,所述方法包括以下步骤:
步骤一:正常域名及动态域名训练形成训练数据;
步骤二:获取网络数据包;
步骤三:根据数据过滤器设置过滤数据并设置归并;
步骤四:对协议数据进行特征预抽取;
步骤五:将获取的向量进行标记;
步骤六:生成LSTM神经网络权重及偏置描述文件。
作为本发明的一种改进,所述步骤一对正常域名及动态域名训练形成训练数据,具体定义如下:
在实际实施时,采用分布式部署方式(分布式部署有利于加速数据的训练),使用的操作系统均为CentOS6.9(内核为2.6.32-696),采取Intel 64位硬件架构,网卡使用Intel e1000e,网络捕包采用Netmap高速网络数据包获取架构。
首先,考虑到性能问题,采用2-gram(如采用3gram会造成转移矩阵的过于稀疏)马尔科夫转移分布对白域名以及DGA域名进行训练,具体方法如下:
遍历所有白域名,对这些域名的顶级域名(即TLD)抽取2-gram(如对www.baidu.com,则抽取ba、ai、id和du)数据计算一步转移频次(按照上述例子,一步转移即为ba->ai, ai->id,id->du的次数),将频次除以所有2-gram可能即为转移概率,生成转移概率矩阵,矩阵中每个元素的计算公式如下:
其中,i和j分别就是两个不同的2-gram,total_mode就是所有可能的组合模式;其次,与上述方法类似,对DGA产生域名(本发明使用八十万个由不同算法生成的动态域名)进行马尔科夫一步转移概率的计算,生成转移概率矩阵,公式同上,即对于一个长度为n的域名而言,所谓2-gram方法是指每两个相邻字母组成一个模式,故可形成n-1个模式,如对于域名baidu,我们使用2-gram方法可以得到ba、 ai、id和du四个模式,对于其它域名也类似
对于上述生成的两种转移矩阵而言,对一个域名是否为动态生成,进行如下判断:将待判域名也分解成2-gram形式,对每个2-gram而言分别从正常域名和DGA域名中获取平均转移概率,如正常域名的平均转移概率大于DGA平均转移概率则认为是正常的,否则为动态生成,平均转移概率计算方式如下;
其中,n是被捡域名的2-gram个数,而mjk是每个2-gram模式在马尔科夫转移矩阵中的分布概率。
作为本发明的一种改进,所述步骤二:获取网络数据包,对网络相关数据包(基于以太类型的网络)的各层信息及会话信息标记进行规格化,具体定义如下:
数据链路层:源、目的MAC地址,在一些情况下会包含VLAN ID或QinQ ID;
网络层:IP协议类型(IPv4或IPv6)、网络IP源/目的地址,主要抓取由内网传送至外网的数据;
传输层:UDP或TCP协议(其它类型协议由于极少被恶意行为所利用故考虑不予支持);应用层:特别对诸如HTTP、DNS、HTTPS、TLS、SSH等常见协议进行深度解包,将如请求域名(针对HTTP、DNS)、返回IP地址(针对DNS),并标识无法识别的协议为加密/非加密,可以通过熵值划分进行特别处理(一般加密数据的熵值会较非加密协议高,但需去除其中一些特殊格式的数据,如音频、视频、常见格式的图片、可执行文件等)。
作为本发明的一种改进,所述步骤三:根据数据过滤器设置过滤数据并设置归并具体如下:
对需要进行处理的相关网络连接会话数据进行过滤,其主要目的是提取一些并不在白名单的数据,白名单主要包含白IP地址、白域名等,以免造成数据特征抽取过慢或特征抽取错误(因为一些正常门户会返回大量地址,这需要过滤掉);
对满足过滤条件的数据按相关会话字段进行归并方式的选择,如源地址、源地理位置等 (可以按子网前缀或国家/省份/城市等进行归并,从而减少分类后所产生的数据类别);作为本发明的一种改进,所述步骤四:对协议数据进行特征预抽取即对DNS、HTTP以及其它协议数据进行特征预抽取(针对一段时间的,本发明采用10分钟为采样窗口),主要包括如下若干方面的特征处理,每个特征均被认为是向量数据中的一个维度:
DNS请求在总体网络流量中的占比情况;
DNS请求返回地址离散程度均值;离散度用Sigmoid函数评估离散程度(使用Sigmoid 的方法就是为了能对相关数值进行归一化),越离散则越接近1,其具体公式如下:
其中,|x|就是对于某一域名请求所返回不同IP地址的数量,乘以系数0.1是为了不使离散度过快地趋近于1;总体离散程度均值如下:
其中,n为不同域名的数量;
DNS请求返回地址离散程度标准差;
DGA请求在所有DNS请求中的占比,DGA算法使用上文中提到的基于2-gram马尔科夫转移分布;
DGA请求后,流量中出现DGA相关返回地址所占网络整体流量中的比例;
各类加密流量所占网络整体流量的比例;
使用加密方式并应用DGA请求返回地址访问占比;
威胁情报IP地址或域名访问占总体访问比例;
其它未知协议或端口访问的网络连接数量占比;
其它未知协议或端口访问的网络连接流量占比。
作为本发明的一种改进,所述步骤五:将获取的向量进行标记;具体如下:
对数据进行多分类(为了获取相关可能的置信程度),需要获取各个分类(例如分类的数量为10种)的学习数据,将它们的标志分别赋值为1-10;
作为本发明的一种改进,所述步骤六:生成LSTM神经网络权重及偏置描述文件具体如下,构建长短时记忆神经网络结构(本发明采用其中一个变种,即PeepHold;每个神经元具备遗忘门、输入门及输出门结构;只不过比标准的LSTM多了一项输入);网络中输入神经元为10个(对应上文中所提到的10个维度),隐层采用128个LTSM全连接神经元,输出为10个神经元,分别对应每个类别,约定数值越高则为网络恶意行为的可能性越高,以向用户提供更为丰富的判断标准;对正常网络连接数据和异常网络连接数据进行训练 (可设定一定的迭代次数,如1000次),输出各层神经元的权值和偏置,将它们保存在特定的文件中;在应用时,预先从之前保存的文件中读入数据,重新构建整个网络;将某个时段的网络连接行为按约定的方式进行向量化,然后将向量化后的数据通过重新构建的网络进行验证分类。
相对于现有技术,本发明的优点如下:1)该方案通在一般广域网环境下,结合域名请求等应用层数据,能在更深的层次和更广的层面提供对网络应用及其相关异常会话进行分析的基础;2)为更好地发现网络安全问题、检测各类逃避手段提供了分析依据、方法及工具,特别针对动态域名请求及其后续发生的行为甄别提供了有力的解决方案;3)此方法特别对于目前各类恶意软件(主要是各类木马、灰件等)在域名请求中所表现的各类异常给出了一定方法,特别如动态域名、Fast Flux等;4)该方案为各类机构及企事业单位的基于网络的大数据安全分析提供了更为有力的分析工具。
附图说明
图1为基于神经网络的网络恶意行为识别方法流程图;
图2为应用时,重新构建整个网络流程图。
具体实施方式
为了加强对本发明的理解和认识,下面结合附图和具体实施方式对本发明做出进一步的说明和介绍。
实施例1:参见图1,在实际实施时,采用分布式部署方式(分布式部署有利于加速数据的训练),使用的操作系统均为CentOS6.9(内核为2.6.32-696),采取Intel 64 位硬件架构,网卡使用Intel e1000e,网络捕包采用Netmap高速网络数据包获取架构。
一种基于神经网络的网络恶意行为识别方法,所述方法包括以下步骤:
步骤一:正常域名及动态域名训练形成训练数据;
步骤二:获取网络数据包;
步骤三:根据数据过滤器设置过滤数据并设置归并;
步骤四:对协议数据进行特征预抽取;
步骤五:将获取的向量进行标记;
步骤六:生成LSTM神经网络权重及偏置描述文件。
所述步骤一对正常域名及动态域名训练形成训练数据,具体定义如下:
在实际实施时,采用分布式部署方式(分布式部署有利于加速数据的训练),使用的操作系统均为CentOS6.9(内核为2.6.32-696),采取Intel 64位硬件架构,网卡使用Intel e1000e,网络捕包采用Netmap高速网络数据包获取架构。
首先,考虑到性能问题,采用2-gram(如采用3gram会造成转移矩阵的过于稀疏)马尔科夫转移分布对白域名以及DGA域名进行训练,具体方法如下:
遍历所有白域名,对这些域名的顶级域名(即TLD)抽取2-gram(如对www.baidu.com,则抽取ba、ai、id和du)数据计算一步转移频次(按照上述例子,一步转移即为ba->ai, ai->id,id->du的次数),将频次除以所有2-gram可能即为转移概率,生成转移概率矩阵,矩阵中每个元素的计算公式如下:
其中,i和j分别就是两个不同的2-gram,total_mode就是所有可能的组合模式;
其次,与上述方法类似,对DGA产生域名(本发明使用八十万个由不同算法生成的动态域名)进行马尔科夫一步转移概率的计算,生成转移概率矩阵,公式同上,
对于上述生成的两种转移矩阵而言,对一个域名是否为动态生成,进行如下判断:将待判域名也分解成2-gram形式,对每个2-gram而言分别从正常域名和DGA域名中获取平均转移概率,如正常域名的平均转移概率大于DGA平均转移概率则认为是正常的,否则为动态生成,平均转移概率计算方式如下;
其中,n是被捡域名的2-gram个数,而mjk是每个2-gram模式在马尔科夫转移矩阵中的分布概率。
所述步骤二:获取网络数据包,对网络相关数据包(基于以太类型的网络)的各层信息及会话信息标记进行规格化,具体定义如下:
数据链路层:源、目的MAC地址,在一些情况下会包含VLAN ID或QinQ ID;
网络层:IP协议类型(IPv4或IPv6)、网络IP源/目的地址,主要抓取由内网传送至外网的数据;
传输层:UDP或TCP协议(其它类型协议由于极少被恶意行为所利用故考虑不予支持);应用层:特别对诸如HTTP、DNS、HTTPS、TLS、SSH等常见协议进行深度解包,将如请求域名(针对HTTP、DNS)、返回IP地址(针对DNS),并标识无法识别的协议为加密/非加密,可以通过熵值划分进行特别处理(一般加密数据的熵值会较非加密协议高,但需去除其中一些特殊格式的数据,如音频、视频、常见格式的图片、可执行文件等)。
所述步骤三:根据数据过滤器设置过滤数据并设置归并具体如下:
对需要进行处理的相关网络连接会话数据进行过滤,其主要目的是提取一些并不在白名单的数据,白名单主要包含白IP地址、白域名等,以免造成数据特征抽取过慢或特征抽取错误(因为一些正常门户会返回大量地址,这需要过滤掉);
对满足过滤条件的数据按相关会话字段进行归并方式的选择,如源地址、源地理位置等 (可以按子网前缀或国家/省份/城市等进行归并,从而减少分类后所产生的数据类别);所述步骤四:对协议数据进行特征预抽取即对DNS、HTTP以及其它协议数据进行特征预抽取(针对一段时间的,本发明采用10分钟为采样窗口),主要包括如下若干方面的特征处理,每个特征均被认为是向量数据中的一个维度:
DNS请求在总体网络流量中的占比情况;
DNS请求返回地址离散程度均值;离散度用Sigmoid函数评估离散程度(使用Sigmoid 的方法就是为了能对相关数值进行归一化),越离散则越接近1,其具体公式如下:
其中,|x|就是对于某一域名请求所返回不同IP地址的数量,乘以系数0.1是为了不使离散度过快地趋近于1;总体离散程度均值如下:
其中,n为不同域名的数量;
DNS请求返回地址离散程度标准差;
DGA请求在所有DNS请求中的占比,DGA算法使用上文中提到的基于2-gram马尔科夫转移分布;
DGA请求后,流量中出现DGA相关返回地址所占网络整体流量中的比例;
各类加密流量所占网络整体流量的比例;
使用加密方式并应用DGA请求返回地址访问占比;
威胁情报IP地址或域名访问占总体访问比例;
其它未知协议或端口访问的网络连接数量占比;
其它未知协议或端口访问的网络连接流量占比。
所述步骤五:将获取的向量进行标记;具体如下:
对数据进行多分类(为了获取相关可能的置信程度),需要获取各个分类(例如分类的数量为10种)的学习数据,将它们的标志分别赋值为1-10;
所述步骤六:生成LSTM神经网络权重及偏置描述文件具体如下,构建长短时记忆神经网络结构(本发明采用其中一个变种,即PeepHold;每个神经元具备遗忘门、输入门及输出门结构;只不过比标准的LSTM多了一项输入);具体参见图2,网络中输入神经元为 10个(对应上文中所提到的10个维度),隐层采用128个LTSM全连接神经元,输出为10个神经元,分别对应每个类别,约定数值越高则为网络恶意行为的可能性越高,以向用户提供更为丰富的判断标准;对正常网络连接数据和异常网络连接数据进行训练(可设定一定的迭代次数,如1000次),输出各层神经元的权值和偏置,将它们保存在特定的文件中;在应用时,预先从之前保存的文件中读入数据,重新构建整个网络;将某个时段的网络连接行为按约定的方式进行向量化,然后将向量化后的数据通过重新构建的网络进行验证分类,。
应用实例:现提供一个样例,主要部分体现在特征抽取上(为阐述清晰,设目前存在100 个网络会话连接,此样本被标识为6,即存在一定可疑):
1.DNS请求在总体网络流量中的占比情况:如出现20个DNS请求,则为0.2
2.DNS请求返回地址离散程度均值:设这些DNS请求中,返回1个IP地址的为10个,返回5个不同地址有5个,返回10个不同地址有5个,则平均离散程度值为0.51
3.地址离散程度标准差为0.001
4.DGA请求在所有DNS请求中的占比:经检查这20个域名请求中有5个为DGA域名,则此特征值为0.25
5.DGA请求后,流量中出现DGA相关返回地址所占网络整体流量中的比例:经检查在 100个连接中有30个和DGA域名相关返回地址的临界,此特征值为0.3
6.各类加密流量所占网络整体流量的比例:经检查流量中使用SSL/TLS加密传输的流量占比为30%,即0.3
7.使用加密方式并应用DGA请求返回地址访问占比:经检查其中有10个连接有此行为则此特征值为0.1
8.威胁情报IP地址或域名访问占总体访问比例:经检查未发现相关IP地址或域名(仅有正常域名和DGA域名),此特征值为0
9.其它未知协议或端口访问的网络连接数量占比:所有连接均为已知协议,故此特征值为0
10.其它未知协议或端口访问的网络连接流量占比:同上此特征值为0
综上所述,此特征向量为(0.2,0.51,0.001,0.25,0.3,0.3,0.1,0,0,0,6),最后为向量的标记(tag);其它类似数据通过上述方法进行标识,将它们放入LTSM神经网络进行训练
需要说明的是上述实施例,并没有用来限定本发明的保护范围,在上述基础上所作出的等同替换或者替代均属于本发明权利要求的保护范围。
Claims (7)
1.一种基于神经网络的网络恶意行为识别方法,其特征在于,所述方法包括以下步骤:
步骤一:正常域名及动态域名训练形成训练数据;
步骤二:获取网络数据包;
步骤三:根据数据过滤器设置过滤数据并设置归并;
步骤四:对协议数据进行特征预抽取;
步骤五:将获取的向量进行标记;
步骤六:生成LSTM神经网络权重及偏置描述文件。
2.根据权利要求1所述的基于神经网络的网络恶意行为识别方法,其特征在于,所述步骤一对正常域名及动态域名训练形成训练数据,具体定义如下:
首先,考虑到性能问题,采用2-gram马尔科夫转移分布对白域名以及DGA域名进行训练,具体方法如下:
遍历所有白域名,对这些域名的顶级域名(即TLD)抽取2-gram数据计算一步转移频次,将频次除以所有2-gram可能即为转移概率,生成转移概率矩阵,矩阵中每个元素的计算公式如下:
其中,i和j分别就是两个不同的2-gram,total_mode就是所有可能的组合模式;
其次,与上述方法类似,对DGA产生域名进行马尔科夫一步转移概率的计算,生成转移概率矩阵,即对于一个长度为n的域名而言,所谓2-gram方法是指每两个相邻字母组成一个模式,故可形成n-1个模式,
对于上述生成的两种转移矩阵而言,对一个域名是否为动态生成,进行如下判断:将待判域名也分解成2-gram形式,对每个2-gram而言分别从正常域名和DGA域名中获取平均转移概率,如正常域名的平均转移概率大于DGA平均转移概率则认为是正常的,否则为动态生成,平均转移概率计算方式如下;
其中,n是被捡域名的2-gram个数,而mjk是每个2-gram模式在马尔科夫转移矩阵中的分布概率。
3.根据权利要求1所述的基于神经网络的网络恶意行为识别方法,其特征在于,所述步骤二:获取网络数据包,对网络相关数据包(基于以太类型的网络)的各层信息及会话信息标记进行规格化,具体定义如下:
数据链路层:源、目的MAC地址,
网络层:IP协议类型(IPv4或IPv6)、网络IP源/目的地址,主要抓取由内网传送至外网的数据;
传输层:UDP或TCP协议;
应用层:对HTTP、DNS、HTTPS、TLS、SSH等常见协议进行深度解包。
4.根据权利要求1所述的基于神经网络的网络恶意行为识别方法,其特征在于,所述步骤三:根据数据过滤器设置过滤数据并设置归并具体如下:
对需要进行处理的相关网络连接会话数据进行过滤,其主要目的是提取一些并不在白名单的数据,白名单主要包含白IP地址、白域名;
对满足过滤条件的数据按相关会话字段进行归并方式的选择。
5.根据权利要求1所述的基于神经网络的网络恶意行为识别方法,其特征在于,所述步骤四:对协议数据进行特征预抽取即对DNS、HTTP以及其它协议数据进行特征预抽取,主要包括如下若干方面的特征处理,每个特征均被认为是向量数据中的一个维度:
DNS请求在总体网络流量中的占比情况;
DNS请求返回地址离散程度均值;离散度用Sigmoid函数评估离散程度(使用Sigmoid的方法就是为了能对相关数值进行归一化),越离散则越接近1,其具体公式如下:
其中,|x|就是对于某一域名请求所返回不同IP地址的数量,乘以系数0.1是为了不使离散度过快地趋近于1;总体离散程度均值如下:
其中,n为不同域名的数量;
DNS请求返回地址离散程度标准差;
DGA请求在所有DNS请求中的占比,DGA算法使用上文中提到的基于2-gram马尔科夫转移分布;
DGA请求后,流量中出现DGA相关返回地址所占网络整体流量中的比例;
各类加密流量所占网络整体流量的比例;
使用加密方式并应用DGA请求返回地址访问占比;
威胁情报IP地址或域名访问占总体访问比例;
其它未知协议或端口访问的网络连接数量占比;
其它未知协议或端口访问的网络连接流量占比。
6.根据权利要求1所述的基于神经网络的网络恶意行为识别方法,其特征在于,所述步骤五:将获取的向量进行标记;具体如下:
对数据进行多分类,需要获取各个分类的学习数据。
7.根据权利要求1所述的基于神经网络的网络恶意行为识别方法,其特征在于,所述步骤六:生成LSTM神经网络权重及偏置描述文件具体如下,
构建长短时记忆神经网络结构;网络中输入神经元为10个,隐层采用128个LTSM全连接神经元,输出为10个神经元,分别对应每个类别,约定数值越高则为网络恶意行为的可能性越高,以向用户提供更为丰富的判断标准;
对正常网络连接数据和异常网络连接数据进行训练;输出各层神经元的权值和偏置,将它们保存在特定的文件中;在应用时,预先从之前保存的文件中读入数据,重新构建整个网络;将某个时段的网络连接行为按约定的方式进行向量化,然后将向量化后的数据通过重新构建的网络进行验证分类。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811035524.9A CN109450842B (zh) | 2018-09-06 | 2018-09-06 | 一种基于神经网络的网络恶意行为识别方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811035524.9A CN109450842B (zh) | 2018-09-06 | 2018-09-06 | 一种基于神经网络的网络恶意行为识别方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109450842A true CN109450842A (zh) | 2019-03-08 |
CN109450842B CN109450842B (zh) | 2023-06-13 |
Family
ID=65532938
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811035524.9A Active CN109450842B (zh) | 2018-09-06 | 2018-09-06 | 一种基于神经网络的网络恶意行为识别方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109450842B (zh) |
Cited By (24)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110012122A (zh) * | 2019-03-21 | 2019-07-12 | 东南大学 | 一种基于词嵌入技术的域名相似性分析方法 |
CN110046253A (zh) * | 2019-04-10 | 2019-07-23 | 广州大学 | 一种语言冲突的预测方法 |
CN110113327A (zh) * | 2019-04-26 | 2019-08-09 | 北京奇安信科技有限公司 | 一种检测dga域名的方法及装置 |
CN110149346A (zh) * | 2019-06-12 | 2019-08-20 | 上海观安信息技术股份有限公司 | 一种电力网络中异常指令的检测方法及系统 |
CN110213287A (zh) * | 2019-06-12 | 2019-09-06 | 北京理工大学 | 一种基于集成机器学习算法的双模式入侵检测装置 |
CN110414597A (zh) * | 2019-07-26 | 2019-11-05 | 博雅创智(天津)科技有限公司 | 基于深度学习的非人工网络请求数据纹路的识别方法 |
CN110493208A (zh) * | 2019-08-09 | 2019-11-22 | 南京聚铭网络科技有限公司 | 一种多特征的dns结合https恶意加密流量识别方法 |
CN110535821A (zh) * | 2019-05-17 | 2019-12-03 | 南京聚铭网络科技有限公司 | 一种基于dns多特征的失陷主机检测方法 |
CN111277603A (zh) * | 2020-02-03 | 2020-06-12 | 杭州迪普科技股份有限公司 | 无监督异常检测系统和方法 |
CN111818049A (zh) * | 2020-07-08 | 2020-10-23 | 宝牧科技(天津)有限公司 | 一种基于马尔可夫模型的僵尸网络流量检测方法及系统 |
CN112270568A (zh) * | 2020-11-02 | 2021-01-26 | 重庆邮电大学 | 面向隐藏信息的社交电商平台营销活动下单率预测方法 |
US10911481B2 (en) | 2018-01-31 | 2021-02-02 | Micro Focus Llc | Malware-infected device identifications |
CN112367293A (zh) * | 2020-10-10 | 2021-02-12 | 浙江大学 | 一种基于时序特征的加密流量异常检测方法 |
CN112437460A (zh) * | 2020-11-23 | 2021-03-02 | 中国联合网络通信集团有限公司 | Ip地址黑灰名单分析方法、服务器、终端及存储介质 |
US10965697B2 (en) | 2018-01-31 | 2021-03-30 | Micro Focus Llc | Indicating malware generated domain names using digits |
US11108794B2 (en) | 2018-01-31 | 2021-08-31 | Micro Focus Llc | Indicating malware generated domain names using n-grams |
CN113542280A (zh) * | 2021-07-16 | 2021-10-22 | 湖南大学 | 一种基于BA-BNN算法的LDoS攻击检测方法 |
CN113596065A (zh) * | 2021-10-08 | 2021-11-02 | 成都数默科技有限公司 | 一种基于机器学习的ssh协议登录状态检测方法 |
CN113726615A (zh) * | 2021-11-02 | 2021-11-30 | 北京广通优云科技股份有限公司 | 一种it智能运维系统中基于网络行为的加密业务稳定性判定方法 |
US11245720B2 (en) | 2019-06-06 | 2022-02-08 | Micro Focus Llc | Determining whether domain is benign or malicious |
CN114124463A (zh) * | 2021-10-27 | 2022-03-01 | 中国电子科技集团公司第三十研究所 | 基于网络行为特征的暗网加密应用服务识别方法及系统 |
CN114465741A (zh) * | 2020-11-09 | 2022-05-10 | 腾讯科技(深圳)有限公司 | 一种异常检测方法、装置、计算机设备及存储介质 |
CN117834311A (zh) * | 2024-03-06 | 2024-04-05 | 成都工业职业技术学院 | 一种用于网络安全的恶意行为识别系统 |
CN117834311B (zh) * | 2024-03-06 | 2024-05-14 | 成都工业职业技术学院 | 一种用于网络安全的恶意行为识别系统 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104144089A (zh) * | 2014-08-06 | 2014-11-12 | 山东大学 | 一种基于bp神经网络进行流量识别的方法 |
CN105577660A (zh) * | 2015-12-22 | 2016-05-11 | 国家电网公司 | 基于随机森林的dga域名检测方法 |
US20170026390A1 (en) * | 2015-07-22 | 2017-01-26 | Cisco Technology, Inc. | Identifying Malware Communications with DGA Generated Domains by Discriminative Learning |
CN106375345A (zh) * | 2016-10-28 | 2017-02-01 | 中国科学院信息工程研究所 | 一种基于周期性检测的恶意软件域名检测方法及系统 |
CN106992969A (zh) * | 2017-03-03 | 2017-07-28 | 南京理工大学 | 基于域名字符串统计特征的dga生成域名的检测方法 |
CN107682348A (zh) * | 2017-10-19 | 2018-02-09 | 杭州安恒信息技术有限公司 | 基于机器学习的dga域名快速判别方法及装置 |
CN107786575A (zh) * | 2017-11-11 | 2018-03-09 | 北京信息科技大学 | 一种基于dns流量的自适应恶意域名检测方法 |
CN108200034A (zh) * | 2017-12-27 | 2018-06-22 | 新华三信息安全技术有限公司 | 一种识别域名的方法及装置 |
-
2018
- 2018-09-06 CN CN201811035524.9A patent/CN109450842B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104144089A (zh) * | 2014-08-06 | 2014-11-12 | 山东大学 | 一种基于bp神经网络进行流量识别的方法 |
US20170026390A1 (en) * | 2015-07-22 | 2017-01-26 | Cisco Technology, Inc. | Identifying Malware Communications with DGA Generated Domains by Discriminative Learning |
CN105577660A (zh) * | 2015-12-22 | 2016-05-11 | 国家电网公司 | 基于随机森林的dga域名检测方法 |
CN106375345A (zh) * | 2016-10-28 | 2017-02-01 | 中国科学院信息工程研究所 | 一种基于周期性检测的恶意软件域名检测方法及系统 |
CN106992969A (zh) * | 2017-03-03 | 2017-07-28 | 南京理工大学 | 基于域名字符串统计特征的dga生成域名的检测方法 |
CN107682348A (zh) * | 2017-10-19 | 2018-02-09 | 杭州安恒信息技术有限公司 | 基于机器学习的dga域名快速判别方法及装置 |
CN107786575A (zh) * | 2017-11-11 | 2018-03-09 | 北京信息科技大学 | 一种基于dns流量的自适应恶意域名检测方法 |
CN108200034A (zh) * | 2017-12-27 | 2018-06-22 | 新华三信息安全技术有限公司 | 一种识别域名的方法及装置 |
Non-Patent Citations (1)
Title |
---|
周康;万良;丁红卫;: "基于AN和LSTM的恶意域名检测" * |
Cited By (35)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10911481B2 (en) | 2018-01-31 | 2021-02-02 | Micro Focus Llc | Malware-infected device identifications |
US11108794B2 (en) | 2018-01-31 | 2021-08-31 | Micro Focus Llc | Indicating malware generated domain names using n-grams |
US10965697B2 (en) | 2018-01-31 | 2021-03-30 | Micro Focus Llc | Indicating malware generated domain names using digits |
CN110012122A (zh) * | 2019-03-21 | 2019-07-12 | 东南大学 | 一种基于词嵌入技术的域名相似性分析方法 |
CN110012122B (zh) * | 2019-03-21 | 2022-01-21 | 东南大学 | 一种基于词嵌入技术的域名相似性分析方法 |
CN110046253A (zh) * | 2019-04-10 | 2019-07-23 | 广州大学 | 一种语言冲突的预测方法 |
CN110046253B (zh) * | 2019-04-10 | 2022-01-04 | 广州大学 | 一种语言冲突的预测方法 |
CN110113327A (zh) * | 2019-04-26 | 2019-08-09 | 北京奇安信科技有限公司 | 一种检测dga域名的方法及装置 |
CN110535821A (zh) * | 2019-05-17 | 2019-12-03 | 南京聚铭网络科技有限公司 | 一种基于dns多特征的失陷主机检测方法 |
US11245720B2 (en) | 2019-06-06 | 2022-02-08 | Micro Focus Llc | Determining whether domain is benign or malicious |
CN110213287B (zh) * | 2019-06-12 | 2020-07-10 | 北京理工大学 | 一种基于集成机器学习算法的双模式入侵检测装置 |
CN110149346A (zh) * | 2019-06-12 | 2019-08-20 | 上海观安信息技术股份有限公司 | 一种电力网络中异常指令的检测方法及系统 |
CN110213287A (zh) * | 2019-06-12 | 2019-09-06 | 北京理工大学 | 一种基于集成机器学习算法的双模式入侵检测装置 |
CN110414597A (zh) * | 2019-07-26 | 2019-11-05 | 博雅创智(天津)科技有限公司 | 基于深度学习的非人工网络请求数据纹路的识别方法 |
CN110414597B (zh) * | 2019-07-26 | 2023-05-05 | 博雅创智(天津)科技有限公司 | 基于深度学习的非人工网络请求数据纹路的识别方法 |
CN110493208A (zh) * | 2019-08-09 | 2019-11-22 | 南京聚铭网络科技有限公司 | 一种多特征的dns结合https恶意加密流量识别方法 |
CN111277603A (zh) * | 2020-02-03 | 2020-06-12 | 杭州迪普科技股份有限公司 | 无监督异常检测系统和方法 |
CN111277603B (zh) * | 2020-02-03 | 2021-11-19 | 杭州迪普科技股份有限公司 | 无监督异常检测系统和方法 |
CN111818049A (zh) * | 2020-07-08 | 2020-10-23 | 宝牧科技(天津)有限公司 | 一种基于马尔可夫模型的僵尸网络流量检测方法及系统 |
CN112367293A (zh) * | 2020-10-10 | 2021-02-12 | 浙江大学 | 一种基于时序特征的加密流量异常检测方法 |
CN112270568B (zh) * | 2020-11-02 | 2022-07-12 | 重庆邮电大学 | 面向隐藏信息的社交电商平台营销活动下单率预测方法 |
CN112270568A (zh) * | 2020-11-02 | 2021-01-26 | 重庆邮电大学 | 面向隐藏信息的社交电商平台营销活动下单率预测方法 |
CN114465741A (zh) * | 2020-11-09 | 2022-05-10 | 腾讯科技(深圳)有限公司 | 一种异常检测方法、装置、计算机设备及存储介质 |
CN114465741B (zh) * | 2020-11-09 | 2023-09-26 | 腾讯科技(深圳)有限公司 | 一种异常检测方法、装置、计算机设备及存储介质 |
CN112437460A (zh) * | 2020-11-23 | 2021-03-02 | 中国联合网络通信集团有限公司 | Ip地址黑灰名单分析方法、服务器、终端及存储介质 |
CN112437460B (zh) * | 2020-11-23 | 2023-07-04 | 中国联合网络通信集团有限公司 | Ip地址黑灰名单分析方法、服务器、终端及存储介质 |
CN113542280A (zh) * | 2021-07-16 | 2021-10-22 | 湖南大学 | 一种基于BA-BNN算法的LDoS攻击检测方法 |
CN113596065A (zh) * | 2021-10-08 | 2021-11-02 | 成都数默科技有限公司 | 一种基于机器学习的ssh协议登录状态检测方法 |
CN113596065B (zh) * | 2021-10-08 | 2021-12-07 | 成都数默科技有限公司 | 一种基于机器学习的ssh协议登录状态检测方法 |
CN114124463A (zh) * | 2021-10-27 | 2022-03-01 | 中国电子科技集团公司第三十研究所 | 基于网络行为特征的暗网加密应用服务识别方法及系统 |
CN114124463B (zh) * | 2021-10-27 | 2023-05-16 | 中国电子科技集团公司第三十研究所 | 基于网络行为特征的暗网加密应用服务识别方法及系统 |
CN113726615B (zh) * | 2021-11-02 | 2022-02-15 | 北京广通优云科技股份有限公司 | 一种it智能运维系统中基于网络行为的加密业务稳定性判定方法 |
CN113726615A (zh) * | 2021-11-02 | 2021-11-30 | 北京广通优云科技股份有限公司 | 一种it智能运维系统中基于网络行为的加密业务稳定性判定方法 |
CN117834311A (zh) * | 2024-03-06 | 2024-04-05 | 成都工业职业技术学院 | 一种用于网络安全的恶意行为识别系统 |
CN117834311B (zh) * | 2024-03-06 | 2024-05-14 | 成都工业职业技术学院 | 一种用于网络安全的恶意行为识别系统 |
Also Published As
Publication number | Publication date |
---|---|
CN109450842B (zh) | 2023-06-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109450842A (zh) | 一种基于神经网络的网络恶意行为识别方法 | |
CN110233849B (zh) | 网络安全态势分析的方法及系统 | |
CN114257386B (zh) | 检测模型的训练方法、系统、设备及存储介质 | |
Kayacik et al. | Selecting features for intrusion detection: A feature relevance analysis on KDD 99 intrusion detection datasets | |
Liu et al. | An intrusion detection model with hierarchical attention mechanism | |
CN109309675A (zh) | 一种基于卷积神经网络的网络入侵检测方法 | |
CN110830490B (zh) | 基于带对抗训练深度网络的恶意域名检测方法及系统 | |
Koshal et al. | Cascading of C4. 5 decision tree and support vector machine for rule based intrusion detection system | |
CN109688154B (zh) | 一种网络入侵检测模型建立方法及网络入侵检测方法 | |
Al-Shabi | Design of a network intrusion detection system using complex deep neuronal networks | |
CN114531283B (zh) | 入侵检测模型的鲁棒性测定方法、系统、存储介质及终端 | |
Yang et al. | Detecting DNS covert channels using stacking model | |
Harbola et al. | Improved intrusion detection in DDoS applying feature selection using rank & score of attributes in KDD-99 data set | |
Mimura et al. | Leaving all proxy server logs to paragraph vector | |
CN117454376A (zh) | 工业互联网数据安全检测响应与溯源方法及装置 | |
Tian et al. | A transductive scheme based inference techniques for network forensic analysis | |
Yang et al. | Identification of DNS covert channel based on stacking method | |
Sun et al. | Advances in Artificial Intelligence and Security: 7th International Conference, ICAIS 2021, Dublin, Ireland, July 19-23, 2021, Proceedings, Part III | |
Herrero et al. | Mobile hybrid intrusion detection | |
Wang et al. | A two-stage method for fine-grained dns covert tunnel behavior detection | |
Zhou et al. | Fingerprinting IIoT devices through machine learning techniques | |
Kozik et al. | Semi-unsupervised machine learning for anomaly detection in http traffic | |
Ahuja et al. | DDoS attack traffic classification in SDN using deep learning | |
Zhang et al. | Which DGA Family does A Malicious Domain Name Belong To | |
Wu et al. | WebIoT: Classifying Internet of Things Devices at Internet Scale through Web Characteristics |
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 |