CN112929341A - 一种dga域名的检测方法、系统及装置 - Google Patents
一种dga域名的检测方法、系统及装置 Download PDFInfo
- Publication number
- CN112929341A CN112929341A CN202110087178.4A CN202110087178A CN112929341A CN 112929341 A CN112929341 A CN 112929341A CN 202110087178 A CN202110087178 A CN 202110087178A CN 112929341 A CN112929341 A CN 112929341A
- Authority
- CN
- China
- Prior art keywords
- domain name
- word
- neural network
- features
- encoding
- 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/10—Network architectures or network communication protocols for network security for controlling access to devices or network resources
- H04L63/101—Access control lists [ACL]
-
- 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/1408—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
- H04L63/1416—Event detection, e.g. attack signature detection
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2463/00—Additional details relating to network architectures or network communication protocols for network security covered by H04L63/00
- H04L2463/144—Detection or countermeasures against botnets
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Image Analysis (AREA)
Abstract
本发明公开了一种DGA域名的检测方法、系统及装置,其中,所述方法包括:获取域名白名单样本,并提取所述域名白名单样本的词嵌入特征;将所述词嵌入特征编码为中间特征,并将所述中间特征解码为输出特征;比较所述词嵌入特征和所述输出特征,并根据对比结果对编码和解码的过程进行校正,以通过校正后的编码和解码的过程,检测目标域名是否为DGA域名。本申请提供的技术方案,能够提高DGA域名的检测精度。
Description
技术领域
本发明涉及互联网技术领域,特别涉及一种DGA域名的检测方法、系统及装置。
背景技术
随着互联网技术的不断发展,网络安全问题也日益突出。目前,通过DGA(DomainGeneration Algorithm,域名生成算法)可以快速地生成大量的DGA域名,通过DGA域名可以构建鲁棒性较好的僵尸网络。攻击者利用僵尸网络,可以向网络中的设备发起网络攻击。
由于DGA域名可以快速地投入使用,并且可以快速地被废弃,因此通过黑名单的方式来规避DGA域名的攻击往往效果不佳。目前业内通常利用机器学习的方式,对大量的正常域名和DGA域名进行学习,从而能够检测出正常域名和DGA域名。然而,现有的这种机器学习的方式,如果要获得较高的检测精度,往往需要提供比较完备的正样本(正常域名)和负样本(DGA域名)。但DGA域名的变化相当快,很容易会出现新型的DGA域名,面对新型的DGA域名,现有的机器学习方式检测的精度不高。
发明内容
本申请的目的在于提供一种DGA域名的检测方法、系统及装置,能够提高DGA域名的检测精度。
为实现上述目的,本申请一方面提供一种DGA域名的检测方法,所述方法包括:获取域名白名单样本,并提取所述域名白名单样本的词嵌入特征;将所述词嵌入特征编码为中间特征,并将所述中间特征解码为输出特征;比较所述词嵌入特征和所述输出特征,并根据对比结果对编码和解码的过程进行校正,以通过校正后的编码和解码的过程,检测目标域名是否为DGA域名。
为实现上述目的,本申请另一方面还提供一种DGA域名的检测系统,所述系统包括:特征提取单元,用于获取域名白名单样本,并提取所述域名白名单样本的词嵌入特征;重构单元,用于将所述词嵌入特征编码为中间特征,并将所述中间特征解码为输出特征;校正单元,用于比较所述词嵌入特征和所述输出特征,并根据对比结果对编码和解码的过程进行校正,以通过校正后的编码和解码的过程,检测目标域名是否为DGA域名。
为实现上述目的,本申请另一方面还提供一种DGA域名的检测装置,其所述装置包括存储器和处理器,所述存储器用于存储计算机程序,所述计算机程序被所述处理器执行时,实现上述的DGA域名的检测方法。
由上可见,本申请一个或者多个实施方式提供的技术方案,可以采用自编码的方式,将域名白名单样本的词嵌入特征经过编码和解码的过程,从而得到输出特征。在对词嵌入特征进行编码和解码的过程中,利用词嵌入特征对输出特征进行监督训练,从而可以不断校正编码和解码的过程。这样,校正后的编码和解码的过程能够重构输出特征,最终使得重构的输出特征能够与输入的词嵌入特征比较接近。通过这种利用词嵌入特征,对自编码过程进行监督训练的方式,一方面不需要负样本(DGA域名)的参与,从而减少了训练样本的收集难度;另一方面通过上述方式对正样本(域名白名单样本)进行训练,可以得到正常域名的一个判定基准,后续便可以利用该判定基准对目标域名进行检测,从而提高了DGA域名检测的精度。
附图说明
为了更清楚地说明本发明实施方式中的技术方案,下面将对实施方式描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施方式中DGA域名的检测方法步骤图;
图2是本发明实施方式中自编码器所处的系统架构示意图;
图3是本发明实施方式中自编码器内的神经网络结构示意图;
图4是本发明实施方式中目标域名的检测方法示意图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合本申请具体实施方式及相应的附图对本申请技术方案进行清楚、完整地描述。显然,所描述的实施方式仅是本申请一部分实施方式,而不是全部的实施方式。基于本申请中的实施方式,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施方式,都属于本申请保护的范围。
如图1所示,本申请一个实施方式提供的DGA域名的检测方法,可以包括以下多个步骤。
S1:获取域名白名单样本,并提取所述域名白名单样本的词嵌入特征。
在本实施方式中,可以只收集训练过程中的正样本,即域名白名单样本,这些域名白名单样本可以是经过安全检测的正常域名。通常而言,域名白名单样本中的字符往往会具备一定的规律,例如,其可能是符合自然语言习惯的拼音、词组等。而DGA域名由于是随机生成的,因此其中的字符会具备较强的随机性。鉴于这种区别,本申请可以训练得到域名白名单样本的一个判定基准,然后如果目标域名的检测结果偏离该判定基准较大,则可以认为该目标域名为DGA域名。
在本实施方式中,在获取到域名白名单样本后,由于自编码模型通常只能对数字信息进行处理,而无法直接对字符数据进行处理,因此需要对域名白名单样本进行预处理,从而将字符数据转换为对应的数字信息。具体地,可以采用词嵌入的方式,将域名白名单样本中的字符数据转换为数字矩阵,该数字矩阵便可以作为从域名白名单样本中提取的词嵌入特征。在实际应用中,one-hot编码(独热码)、信息检索技术(例如TF-IDF算法)、布朗聚类、Word2vec算法等都可以实现词嵌入的过程。
在本申请的一个实施方式中,可以采用Word2vec算法,利用skip-gram模型或者CBOW模型,将域名白名单样本的字符数据转换为对应的数字矩阵。具体地,可以对域名白名单样本先进行分词处理,从而得到一连串的单词。在实际应用中,分词的方式也可以多种多样。例如,可以将域名白名单样本中的每个字符都作为一个单词进行分词,也可以将每两个字符作为一个单词进行分词,还可以通过一些自然语言模型对域名白名单样本进行处理后,自动得到分词结果。
在本实施方式中,得到分词处理的单词后,针对每个单词,可以通过词嵌入算法生成各自的词向量,这些词向量共同形成的矩阵便可以作为该域名白名单样本的词嵌入特征。举例来说,域名白名单样本经过分词处理后,得到18个单词,那么每个单词都可以被转换为对应的词向量(通常而言,这些词向量中包含的向量元素的数量都是相同的,例如都包含n个向量元素),那么这些词向量组合起来,便可以构成大小为(18,n)的数字矩阵,该数字矩阵便可以作为提取的词嵌入特征。
如上所述,在数字矩阵表征的词嵌入特征中,每一行都可以表示一个单词的词向量。在一个实施方式中,考虑到域名白名单样本中各个单词的排列是具备上下文逻辑的,因此经过分词以及词嵌入算法处理后得到的词向量,在数字矩阵中也可以按照这种上下文逻辑进行排序。举例来说,对于“wangsutec”这样的域名,将每个字符都作为一个单词的话,可以转换得到9个词向量,这9个词向量可以按照字符在“wangsutec”中从前到后的排列顺序,在数字矩阵中从上到下排列,这样,数字矩阵中第一行的词向量就对应字符“w”,最后一行的词向量就对应字符“c”。上述的各个单词在域名中的排列顺序,便可以作为单词的上下文逻辑。
S3:将所述词嵌入特征编码为中间特征,并将所述中间特征解码为输出特征。
在本实施方式中,可以通过互为镜像的两组神经网络来实现自编码器。请参阅图2,该自编码器中可以包括互为镜像的第一神经网络和第二神经网络。其中,互为镜像的含义是指:第一神经网络和第二神经网络中包含的神经网络的类型和数量是一致,只不过神经网络的排列顺序是相反的,并且互为镜像的两个神经网络,层级结构也是相反的。以图3的自编码器为例,第一神经网络中包括神经网络A和神经网络B,第二神经网络中包括神经网络A1和神经网络B1。在第一神经网络中,连接方式为神经网络A的输出数据作为神经网络B的输入数据,而在第二神经网络中,连接方式就是相反的,为神经网络B1的输出数据作为神经网络A1的输入数据。并且,针对互为镜像的神经网络A和神经网络A1,网络中的层级结构也是相反的。例如,神经网络A中的层级结构依次是卷积层、池化层、全连接层,而神经网络A1的层级结构依次就是全连接层、池化层、卷积层(当然,神经网络A1中的各个层级结构实现的都是相反的功能,例如池化层实际上就是实现的反池化操作,这里的相同名称只是为了便于理解,不代表实现的功能也相同)。这样,自编码器中的第一神经网络可以对输入的词嵌入特征进行编码,而第二神经网络可以对编码后的中间特征进行解码,从而还原得到输出特征。具体地,可以将词嵌入特征依次输入第一神经网络和第二神经网络,其中,第一神经网络对词嵌入特征进行编码,以得到中间特征,第二神经网络将中间特征作为输入数据,并处理得到输出特征。
在实际应用中,上述的第一神经网络和第二神经网络可以通过多层感知器、卷积神经网络、循环神经网络等各式各样的神经网络及其组合来实现,可以根据实际的需求灵活选用对应的神经网络。
在本申请一个实施方式中,如果为了简化训练过程,第一神经网络和第二神经网络都可以选用卷积神经网络,这两个卷积神经网络的层级结构相反。这样,表征词嵌入特征的矩阵可以通过第一神经网络中的卷积神经网络进行特征提取,从而得到更低维度的矩阵,该更低维度的矩阵可以作为编码得到的中间特征。后续,表征中间特征的矩阵可以经过第二神经网络中的卷积神经网络,被还原为更高维度的矩阵,该还原得到的矩阵便可以作为解码得到的输出特征。
如果表征词嵌入特征的矩阵中,每一行表征一个单词的词向量,那么可以逐行识别词嵌入特征中各个单词的词向量,并利用卷积神经网络提取各个词向量的特征向量,这样,各个特征向量构成的矩阵便可以作为编码得到的中间特征。后续,第二神经网络中的卷积神经网络便可以识别表征中间特征的矩阵中的各个特征向量,并将各个特征向量还原为对应的词向量,这样,还原得到的词向量构成的矩阵便可以作为解码得到的输出特征。
在另一个实施方式中,为了提高模型的精度,可以将域名中的上下文逻辑也参与到模型训练的过程中。鉴于此,第一神经网络和第二神经网络都可以包括卷积神经网络和长短期记忆(LSTM,Long Short-Term Memory)神经网络。其中,第一神经网络中是依次相连的卷积神经网络和长短期记忆神经网络,而第二神经网络中是依次相连的长短期记忆神经网络和卷积神经网络,并且,第一神经网络与第二神经网络中的卷积神经网络的层级结构相反,第一神经网络与第二神经网络中的长短期记忆神经网络的层级结构也相反。
在本实施方式中,在基于上下文逻辑进行模型训练时,第一神经网络可以识别表征词嵌入特征的矩阵中各个单词的词向量(矩阵中的每一行就代表一个词向量),然后通过卷积神经网络提取各个词向量的特征向量,从而可以生成由各个特征向量构成的特征矩阵。在得到特征矩阵之后,LSTM神经网络可以按照各个单词在域名白名单样本中的排列顺序,提取特征矩阵的上下文逻辑特征,并将该上下文逻辑特征作为编码得到的中间特征。后续,第二神经网络中的LSTM神经网络可以将表征中间特征的上下文逻辑特征还原为符合域名中单词排列顺序的特征矩阵,并通过卷积神经网络将还原得到的特征矩阵中的各个特征向量转换为对应的词向量。这样,转换得到的词向量构成的矩阵便可以作为解码得到的输出特征。
S5:比较所述词嵌入特征和所述输出特征,并根据对比结果对编码和解码的过程进行校正,以通过校正后的编码和解码的过程,检测目标域名是否为DGA域名。
在本实施方式中,经过互为镜像的两组神经网络的处理后,输入的词嵌入特征可以经过编码和解码,还原为输出特征。理论上,如果自编码器的模型训练精度足够高,输出特征应当无限逼近输入的词嵌入特征。但在训练过程中,由于神经网络中神经元的参数需要不断进行调整,因此一开始会使得输出特征与词嵌入特征之间的误差较大。因此在训练过程中,可以比较词嵌入特征和输出特征,从而可以根据对比结果对编码和解码的过程进行校正。
具体地,可以计算词嵌入特征和输出特征之间的误差。在实际应用中,可以通过范数、损失函数等方式来表征该误差。请参阅图2,计算得到的误差可以对编码和解码过程中的参数进行调节。经过参数调节的自编码器可以再次对输入的词嵌入特征进行处理,从而得到对应的输出特征。该输出特征依然可以与词嵌入特征进行对比,并可以对编码和解码过程中的参数再次进行调节。这样,经过对大量的域名白名单样本进行上述的处理,以及不断地对参数进行调节,可以使得输入的任意一个词嵌入特征经过校正后的编码和解码的过程处理后,得到的输出特征与词嵌入特征相匹配。其中,相匹配可以指得到的输出特征与词嵌入特征之间的误差小于或者等于指定阈值。
通过上述的训练过程,便可以得到精度较高的自编码器,如果输入该自编码器的是正常域名的词嵌入特征,那么得到的输出特征就会与输入的词嵌入特征具备较高的相似度。而如果输入的是DGA域名的词嵌入特征,那么得到的输出特征与输入的词嵌入特征就会有较大的误差。
请参阅图4,在本申请一个实施方式中,利用上述训练出的自编码器来检测DGA域名的方法,可以包括以下多个步骤。
S21:获取待检测的目标域名,并提取所述目标域名的词嵌入特征。
S23:利用校正后的编码和解码过程,对所述目标域名的词嵌入特征进行处理,得到所述目标域名对应的输出特征。
S25:计算所述目标域名的输出特征和所述目标域名的词嵌入特征之间的误差,若所述误差大于或者等于指定阈值,判定所述目标域名为DGA域名;若所述误差小于所述指定阈值,判定所述目标域名不是DGA域名。
在本实施方式中,可以按照步骤S1和S3中的方式,提取目标域名的词嵌入特征,并利用训练得到的自编码器对该词嵌入特征进行处理,得到对应的输出特征。然后,可以计算该输出特征与词嵌入特征之间的误差,并判断该误差与指定阈值之间的大小关系。若误差大于或者等于指定阈值,则表示目标域名的检测结果偏离判定基准过远,此时可以判定目标域名为DGA域名。而如果误差小于所述指定阈值,则表明误差依然处于判定基准的范围内,此时可以判定目标域名不是DGA域名。
由上可见,本申请提供的基于自编码器进行DGA域名的检测过程,通过基于深度学习算法实现的自编码器,可以使用正样本(即域名白名单样本)建立判定基准,通过偏离判定基准的程度来确定目标域名的误差,从而检测目标域名是否为DGA域名。上述过程无需负样本介入,在降低数据集收集难度的同时,避免了负样本因为数据量不足而造成的模型训练精度不高的问题。
本申请另一个实施方式还提供一种DGA域名的检测系统,所述系统包括:
特征提取单元,用于获取域名白名单样本,并提取所述域名白名单样本的词嵌入特征;
重构单元,用于将所述词嵌入特征编码为中间特征,并将所述中间特征解码为输出特征;
校正单元,用于比较所述词嵌入特征和所述输出特征,并根据对比结果对编码和解码的过程进行校正,以通过校正后的编码和解码的过程,检测目标域名是否为DGA域名。
本申请另一个实施方式还提供一种DGA域名的检测装置,所述装置包括存储器和处理器,所述存储器用于存储计算机程序,所述计算机程序被所述处理器执行时,实现上述的DGA域名的检测方法。
在本申请中,所述存储器可以包括用于存储信息的物理装置,通常是将信息数字化后再以利用电、磁或者光学等方法的媒体加以存储。所述存储器又可以包括:利用电能方式存储信息的装置,如RAM或ROM等;利用磁能方式存储信息的装置,如硬盘、软盘、磁带、磁芯存储器、磁泡存储器或U盘;利用光学方式存储信息的装置,如CD或DVD。当然,还有其他方式的存储器,例如量子存储器或石墨烯存储器等等。
在本申请中,所述处理器可以按任何适当的方式实现。例如,所述处理器可以采取例如微处理器或处理器以及存储可由该(微)处理器执行的计算机可读程序代码(例如软件或固件)的计算机可读介质、逻辑门、开关、专用集成电路(Application SpecificIntegrated Circuit,ASIC)、可编程逻辑控制器和嵌入微控制器的形式等等。
由上可见,本申请一个或者多个实施方式提供的技术方案,可以采用自编码的方式,将域名白名单样本的词嵌入特征经过编码和解码的过程,从而得到输出特征。在对词嵌入特征进行编码和解码的过程中,利用词嵌入特征对输出特征进行监督训练,从而可以不断校正编码和解码的过程。这样,校正后的编码和解码的过程能够重构输出特征,最终使得重构的输出特征能够与输入的词嵌入特征比较接近。通过这种利用词嵌入特征,对自编码过程进行监督训练的方式,一方面不需要负样本(DGA域名)的参与,从而减少了训练样本的收集难度;另一方面通过上述方式对正样本(域名白名单样本)进行训练,可以得到正常域名的一个判定基准,后续便可以利用该判定基准对目标域名进行检测,从而提高了DGA域名检测的精度。
本说明书中的各个实施方式均采用递进的方式描述,各个实施方式之间相同相似的部分互相参见即可,每个实施方式重点说明的都是与其他实施方式的不同之处。尤其,针对系统和装置的实施方式来说,均可以参照前述方法的实施方式的介绍对照解释。
本领域内的技术人员应明白,本发明的实施方式可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施方式、完全软件实施方式、或结合软件和硬件方面的实施方式的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施方式的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
以上所述仅为本申请的实施方式而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。
Claims (12)
1.一种DGA域名的检测方法,其特征在于,所述方法包括:
获取域名白名单样本,并提取所述域名白名单样本的词嵌入特征;
将所述词嵌入特征编码为中间特征,并将所述中间特征解码为输出特征;
比较所述词嵌入特征和所述输出特征,并根据对比结果对编码和解码的过程进行校正,以通过校正后的编码和解码的过程,检测目标域名是否为DGA域名。
2.根据权利要求1所述的方法,其特征在于,提取所述域名白名单样本的词嵌入特征包括:
对所述域名白名单样本进行分词处理,并生成各个单词的词向量;
将所述各个单词的词向量形成的矩阵作为所述域名白名单样本的词嵌入特征。
3.根据权利要求1所述的方法,其特征在于,将所述词嵌入特征编码为中间特征,并将所述中间特征解码为输出特征包括:
将所述词嵌入特征依次输入第一神经网络和第二神经网络,其中,所述第一神经网络对所述词嵌入特征进行编码,以得到所述中间特征,所述第二神经网络将所述中间特征作为输入数据,并处理得到所述输出特征;
其中,所述第一神经网络和所述第二神经网络是互为镜像的神经网络。
4.根据权利要求3所述的方法,其特征在于,所述第一神经网络和所述第二神经网络均为卷积神经网络,其中,所述第一神经网络的层级结构与所述第二神经网络的层级结构相反;
或者
所述第一神经网络包括依次相连的卷积神经网络和长短期记忆神经网络,所述第二神经网络包括依次相连的长短期记忆神经网络和卷积神经网络;其中,所述第一神经网络与所述第二神经网络中的卷积神经网络的层级结构相反,并且第一神经网络与所述第二神经网络中的长短期记忆神经网络的层级结构相反。
5.根据权利要求1所述的方法,其特征在于,将所述词嵌入特征编码为中间特征包括:
识别所述词嵌入特征中各个单词的词向量,并提取各个所述词向量的特征向量,并将各个所述特征向量构成的矩阵作为编码得到的中间特征;
或者
将表征所述词嵌入特征的矩阵变换为更低维度的矩阵,并将所述更低维度的矩阵作为编码得到的中间特征。
6.根据权利要求5所述的方法,其特征在于,将所述中间特征解码为输出特征包括:
识别表征所述中间特征的矩阵中的各个特征向量,并将各个所述特征向量还原为对应的词向量,还原得到的词向量构成的矩阵作为解码得到的输出特征;或者
将表征所述中间特征的矩阵还原为更高维度的矩阵,并将还原得到的矩阵作为解码得到的输出特征。
7.根据权利要求1所述的方法,其特征在于,将所述词嵌入特征编码为中间特征包括:
识别所述词嵌入特征中各个单词的词向量,并提取各个所述词向量的特征向量,以生成由各个所述特征向量构成的特征矩阵;
按照各个单词在所述域名白名单样本中的排列顺序,提取所述特征矩阵的上下文逻辑特征,并将所述上下文逻辑特征作为编码得到的中间特征。
8.根据权利要求7所述的方法,其特征在于,将所述中间特征解码为输出特征包括:
将表征所述中间特征的上下文逻辑特征还原为符合所述排列顺序的特征矩阵,并将还原得到的所述特征矩阵中的各个特征向量转换为对应的词向量;
将转换得到的词向量构成的矩阵作为解码得到的输出特征。
9.根据权利要求1所述的方法,其特征在于,根据对比结果对编码和解码的过程进行校正包括:
计算所述词嵌入特征和所述输出特征之间的误差,并利用所述误差,对编码和解码过程中的参数进行调节,以使得所述词嵌入特征经过校正后的编码和解码的过程处理后,得到的输出特征与所述词嵌入特征相匹配。
10.根据权利要求1所述的方法,其特征在于,检测目标域名是否为DGA域名包括:
获取待检测的目标域名,并提取所述目标域名的词嵌入特征;
利用校正后的编码和解码过程,对所述目标域名的词嵌入特征进行处理,得到所述目标域名对应的输出特征;
计算所述目标域名的输出特征和所述目标域名的词嵌入特征之间的误差,若所述误差大于或者等于指定阈值,判定所述目标域名为DGA域名;若所述误差小于所述指定阈值,判定所述目标域名不是DGA域名。
11.一种DGA域名的检测系统,其特征在于,所述系统包括:
特征提取单元,用于获取域名白名单样本,并提取所述域名白名单样本的词嵌入特征;
重构单元,用于将所述词嵌入特征编码为中间特征,并将所述中间特征解码为输出特征;
校正单元,用于比较所述词嵌入特征和所述输出特征,并根据对比结果对编码和解码的过程进行校正,以通过校正后的编码和解码的过程,检测目标域名是否为DGA域名。
12.一种DGA域名的检测装置,其特征在于,所述装置包括存储器和处理器,所述存储器用于存储计算机程序,所述计算机程序被所述处理器执行时,实现如权利要求1至10中任一所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110087178.4A CN112929341A (zh) | 2021-01-22 | 2021-01-22 | 一种dga域名的检测方法、系统及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110087178.4A CN112929341A (zh) | 2021-01-22 | 2021-01-22 | 一种dga域名的检测方法、系统及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112929341A true CN112929341A (zh) | 2021-06-08 |
Family
ID=76164644
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110087178.4A Pending CN112929341A (zh) | 2021-01-22 | 2021-01-22 | 一种dga域名的检测方法、系统及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112929341A (zh) |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109391706A (zh) * | 2018-11-07 | 2019-02-26 | 顺丰科技有限公司 | 基于深度学习的域名检测方法、装置、设备和存储介质 |
CN109714340A (zh) * | 2018-12-28 | 2019-05-03 | 厦门服云信息科技有限公司 | 一种序列到序列的网络异常请求识别方法以及装置 |
CN109871531A (zh) * | 2019-01-04 | 2019-06-11 | 平安科技(深圳)有限公司 | 隐含特征提取方法、装置、计算机设备及存储介质 |
CN110119447A (zh) * | 2019-04-26 | 2019-08-13 | 平安科技(深圳)有限公司 | 自编码神经网络处理方法、装置、计算机设备及存储介质 |
CN110266647A (zh) * | 2019-05-22 | 2019-09-20 | 北京金睛云华科技有限公司 | 一种命令和控制通信检测方法及系统 |
CN110807098A (zh) * | 2019-09-24 | 2020-02-18 | 武汉智美互联科技有限公司 | 基于BiRNN深度学习的DGA域名检测方法 |
EP3614645A1 (en) * | 2018-08-21 | 2020-02-26 | Deutsche Telekom AG | Embedded dga representations for botnet analysis |
CN110958244A (zh) * | 2019-11-29 | 2020-04-03 | 北京邮电大学 | 一种基于深度学习的仿冒域名检测方法及装置 |
CN111628970A (zh) * | 2020-04-24 | 2020-09-04 | 中国科学院计算技术研究所 | 一种dga型僵尸网络的检测方法、介质和电子设备 |
CN111935099A (zh) * | 2020-07-16 | 2020-11-13 | 兰州理工大学 | 一种基于深度降噪自编码网络的恶意域名检测方法 |
-
2021
- 2021-01-22 CN CN202110087178.4A patent/CN112929341A/zh active Pending
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP3614645A1 (en) * | 2018-08-21 | 2020-02-26 | Deutsche Telekom AG | Embedded dga representations for botnet analysis |
CN109391706A (zh) * | 2018-11-07 | 2019-02-26 | 顺丰科技有限公司 | 基于深度学习的域名检测方法、装置、设备和存储介质 |
CN109714340A (zh) * | 2018-12-28 | 2019-05-03 | 厦门服云信息科技有限公司 | 一种序列到序列的网络异常请求识别方法以及装置 |
CN109871531A (zh) * | 2019-01-04 | 2019-06-11 | 平安科技(深圳)有限公司 | 隐含特征提取方法、装置、计算机设备及存储介质 |
CN110119447A (zh) * | 2019-04-26 | 2019-08-13 | 平安科技(深圳)有限公司 | 自编码神经网络处理方法、装置、计算机设备及存储介质 |
CN110266647A (zh) * | 2019-05-22 | 2019-09-20 | 北京金睛云华科技有限公司 | 一种命令和控制通信检测方法及系统 |
CN110807098A (zh) * | 2019-09-24 | 2020-02-18 | 武汉智美互联科技有限公司 | 基于BiRNN深度学习的DGA域名检测方法 |
CN110958244A (zh) * | 2019-11-29 | 2020-04-03 | 北京邮电大学 | 一种基于深度学习的仿冒域名检测方法及装置 |
CN111628970A (zh) * | 2020-04-24 | 2020-09-04 | 中国科学院计算技术研究所 | 一种dga型僵尸网络的检测方法、介质和电子设备 |
CN111935099A (zh) * | 2020-07-16 | 2020-11-13 | 兰州理工大学 | 一种基于深度降噪自编码网络的恶意域名检测方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Chen et al. | Marginalized denoising auto-encoders for nonlinear representations | |
Huang et al. | Speech emotion recognition using CNN | |
CN111885000B (zh) | 一种基于图神经网络的网络攻击检测方法、系统及装置 | |
CN111382555B (zh) | 数据处理方法、介质、装置和计算设备 | |
CN111709754B (zh) | 一种用户行为特征提取方法、装置、设备及系统 | |
Wang et al. | Learning efficient binarized object detectors with information compression | |
CN113032001B (zh) | 一种智能合约分类方法及装置 | |
CN112463956B (zh) | 基于对抗学习和分层神经网络的文本摘要生成系统和方法 | |
McDonnell et al. | Ranpac: Random projections and pre-trained models for continual learning | |
CN116361256B (zh) | 基于日志解析的数据同步方法及系统 | |
CN113723070A (zh) | 文本相似度模型训练方法、文本相似度检测方法及装置 | |
CN115952458A (zh) | 一种内容伪造攻击检测方法、装置以及设备 | |
CN112866257B (zh) | 一种域名检测方法、系统及装置 | |
CN112929341A (zh) | 一种dga域名的检测方法、系统及装置 | |
CN115495546B (zh) | 相似文本检索方法、系统、设备及存储介质 | |
Mu et al. | Self-supervised disentangled representation learning for robust target speech extraction | |
CN116488874A (zh) | 基于自监督掩码上下文重构的网络入侵检测方法和系统 | |
CN114913588B (zh) | 一种应用于复杂场景下的人脸图像修复及识别方法 | |
CN116521899A (zh) | 一种基于改进的图神经网络的文档级关系抽取算法及系统 | |
CN113704466B (zh) | 基于迭代网络的文本多标签分类方法、装置及电子设备 | |
CN115587318A (zh) | 一种基于神经网络的源码分类方法 | |
CN112380369B (zh) | 图像检索模型的训练方法、装置、设备和存储介质 | |
CN114241361A (zh) | 提取视频基因及基于视频基因的视频匹配方法、装置 | |
Wang et al. | Boosting the discriminant power of naive Bayes | |
CN111291788A (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 |