CN113542442B - 一种恶意域名检测方法、装置、设备及存储介质 - Google Patents

一种恶意域名检测方法、装置、设备及存储介质 Download PDF

Info

Publication number
CN113542442B
CN113542442B CN202010316864.XA CN202010316864A CN113542442B CN 113542442 B CN113542442 B CN 113542442B CN 202010316864 A CN202010316864 A CN 202010316864A CN 113542442 B CN113542442 B CN 113542442B
Authority
CN
China
Prior art keywords
domain name
target
black
unknown
malicious
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
Application number
CN202010316864.XA
Other languages
English (en)
Other versions
CN113542442A (zh
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.)
Sangfor Technologies Co Ltd
Original Assignee
Sangfor Technologies Co Ltd
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 Sangfor Technologies Co Ltd filed Critical Sangfor Technologies Co Ltd
Priority to CN202010316864.XA priority Critical patent/CN113542442B/zh
Publication of CN113542442A publication Critical patent/CN113542442A/zh
Application granted granted Critical
Publication of CN113542442B publication Critical patent/CN113542442B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/45Network directories; Name-to-address mapping
    • H04L61/4505Network directories; Name-to-address mapping using standardised directories; using standardised directory access protocols
    • H04L61/4511Network directories; Name-to-address mapping using standardised directories; using standardised directory access protocols using domain name system [DNS]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/22Matching criteria, e.g. proximity measures
    • 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/1408Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • General Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Data Mining & Analysis (AREA)
  • Computing Systems (AREA)
  • Computer Hardware Design (AREA)
  • Theoretical Computer Science (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Evolutionary Computation (AREA)
  • Evolutionary Biology (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Artificial Intelligence (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明公开了一种恶意域名检测方法、装置、设备及获取机可读存储介质;在本方案中,利用域名访问序列生成词向量后,可将黑域名以及与其相似度较高的未知域名一同生成无向图,通过该图可以反映出未知域名与黑域名的关联联系,从而通过该关联联系检测出更多的恶意域名;并且,本方案在判定恶意域名时,若未知域名与黑域名的节点数量比值大于第二阈值,则将未知域名判定为恶意域名,通过这种方式,使得判定结果具有较强的解释性及准确定,且结果可控。

Description

一种恶意域名检测方法、装置、设备及存储介质
技术领域
本发明涉及信息安全技术领域,更具体地说,涉及一种恶意域名检测方法、装置、设备及计算机可读存储介质。
背景技术
目前,恶意域名已经成为国内乃至全世界的网络安全领域最为关注的危害之一。现有的恶意域名检测方案是利用词向量技术将域名序列映射到一个低维空间中,然后计算相似度嵌入到图中,利用标签传播的方式检测恶意域名。但是,通过该方式检测恶意域名时,由于标签传播算法在实际应用中准确性低,且结果不可解释,实际效果不佳。
发明内容
本发明的目的在于提供一种恶意域名检测方法、装置、设备及计算机可读存储介质,以提高恶意域名的检测准确度。
为实现上述目的,本发明提供的一种恶意域名检测方法,包括:
获取主机的域名访问序列,确定所述域名访问序列中各个域名的词向量;所述域名访问序列中各个域名按照主机访问顺序进行排序;
获取所述域名访问序列中黑域名与未知域名的词向量之间的相似度,并确定相似度大于第一阈值的目标黑域名和目标未知域名;
将目标黑域名和目标未知域名分别作为节点、将相似度大于第一阈值的节点之间设置连通边,生成无向图;
获取所述无向图的连通分支中目标未知域名与目标黑域名的节点数量比值,若所述节点数量比值大于第二阈值,则判定连通分支中的目标未知域名为恶意域名。
其中,所述判定连通分支中的目标未知域名为恶意域名之后,还包括:
根据所述恶意域名对主机所访问的域名进行安全检测,生成安全事件。
其中,所述确定所述域名访问序列中各个域名的词向量,包括:
利用Skip-Gram模型训练所述域名访问序列中各个域名的词向量。
其中,所述获取所述域名访问序列中黑域名与未知域名的词向量之间的相似度,包括:
将所述域名访问序列中的域名与黑域名库中的域名进行比对,识别所述域名访问序列中黑域名;所述域名访问序列中包括黑域名和未知域名;
将每个黑域名作为种子域名,分别获取每个种子域名的词向量与所述域名访问序列中其他域名的词向量之间的相似度。
其中,所述确定相似度大于第一阈值的目标黑域名和目标未知域名,包括:
判断是否存在大于第一阈值的目标相似度;
若存在,则确定与所述目标相似度对应的目标黑域名和目标未知域名,并根据所述目标相似度、所述目标黑域名和所述目标未知域名生成三元组。
其中,所述将目标黑域名和目标未知域名分别作为节点、将相似度大于第一阈值的节点之间设置连通边,生成无向图之后,还包括:
判断所述无向图中是否存在仅有一条连通边的目标未知域名的节点;
若存在,则删除仅有一条连通边的目标未知域名的节点。
其中,所述获取所述无向图的连通分支中目标未知域名与目标黑域名的节点数量比值,若所述节点数量比值大于第二阈值,则判定连通分支中的目标未知域名为恶意域名,包括:
从所述无向图中确定待处理的目标连通分支;
获取所述目标连通分支中目标未知域名与目标黑域名的节点数量比值;所述目标黑域名携带了家族类型信息;
根据所述目标连通分支的类型及所述目标连通分支中目标黑域名的数量确定第二阈值;所述目标连通分支的类型包括单家族类型和多家族类型;
判断所述节点数量比值是否大于所述第二阈值;若是,则判定所述目标连通分支中的目标未知域名为恶意域名。
为实现上述目的,本发明进一步提供一种恶意域名检测装置,包括:
获取模块,用于获取主机的域名访问序列;所述域名访问序列中各个域名按照主机访问顺序进行排序;
第一确定模块,用于确定所述域名访问序列中各个域名的词向量;
获取模块,用于获取所述域名访问序列中黑域名与未知域名的词向量之间的相似度;
第二确定模块,用于确定相似度大于第一阈值的目标黑域名和目标未知域名;
生成模块,用于将目标黑域名和目标未知域名分别作为节点、将相似度大于第一阈值的节点之间设置连通边,生成无向图;
判定模块,用于获取所述无向图的连通分支中目标未知域名与目标黑域名的节点数量比值,若所述节点数量比值大于第二阈值,则判定连通分支中的目标未知域名为恶意域名。
为实现上述目的,本发明进一步提供一种电子设备,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如上述的恶意域名检测方法的步骤。
为实现上述目的,本发明进一步提供一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上述的恶意域名检测方法的步骤。
通过以上方案可知,本发明实施例提供的一种恶意域名检测方法,包括:获取主机的域名访问序列,确定所述域名访问序列中各个域名的词向量;所述域名访问序列中各个域名按照主机访问顺序进行排序;获取所述域名访问序列中黑域名与未知域名的词向量之间的相似度,并确定相似度大于第一阈值的目标黑域名和目标未知域名;将目标黑域名和目标未知域名分别作为节点、将相似度大于第一阈值的节点之间设置连通边,生成无向图;获取所述无向图的连通分支中目标未知域名与目标黑域名的节点数量比值,若所述节点数量比值大于第二阈值,则判定连通分支中的目标未知域名为恶意域名。
可见,在本方案中,利用域名访问序列生成词向量后,可将黑域名以及与其相似度较高的未知域名一同生成无向图,通过该图可以反映出未知域名与黑域名的关联联系,从而通过该关联联系检测出更多的恶意域名;并且,本方案在判定恶意域名时,若未知域名与黑域名的节点数量比值大于第二阈值,则将未知域名判定为恶意域名,通过这种方式,使得判定结果具有较强的解释性及准确定,且结果可控。
本发明还公开了一种恶意域名检测装置、设备及计算机可读存储介质,同样能实现上述技术效果。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例公开的一种恶意域名检测系统结构示意图;
图2为本发明实施例公开的一种恶意域名检测方法流程示意图;
图3为本发明实施例公开的一种域名无向图;
图4为本发明实施例公开的另一种恶意域名检测方法流程示意图;
图5为本发明实施例公开的一种恶意域名检测整体流程示意图;
图6为本发明实施例公开的一种恶意域名检测装置结构示意图;
图7为本发明实施例公开的一种电子设备结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
需要说明的是,恶意域名是指一类具有恶意链接的网址,这种网址通常利用应用软件或浏览器的漏洞,在网站内植入木马、病毒程序等恶意代码,并利用伪装的网站服务内容来诱导用户访问,在现有的恶意域名检测方案中,具体是利用域名词向量相似度和图的标签传播算法,但是,图的标签传播算法的解释性很差,且结果不可控,在实际的运用中准确性极差。因此在本申请中,公开了一种恶意域名检测方法、装置、设备及计算机可读存储介质,以提高恶意域名的检测准确度、检测结果的解释性及可控性。
为了便于理解,下面对本申请的技术方案所适用的系统架构进行介绍,参见图1,为本发明实施例公开的一种恶意域名检测系统结构示意图;通过该图可以看出,本系统包括主机11和电子设备12。
具体来说,该主机11可以为PC(Personal Computer,个人电脑)、智能手机、平板电脑、掌上电脑、便携计算机等终端设备,该主机11通过访问域名执行网页浏览等操作。
电子设备12主要用来实现恶意域名的检测,具体来说,该电子设备12获取到主机11的域名访问序列后,需要确定域名访问序列中各个域名的词向量,域名访问序列中各个域名按照主机访问顺序进行排序;然后获取域名访问序列中黑域名与未知域名的词向量之间的相似度,并确定相似度大于第一阈值的目标黑域名和目标未知域名;将目标黑域名和目标未知域名分别作为节点、将相似度大于第一阈值的节点之间设置连通边,生成无向图;获取无向图的连通分支中目标未知域名与目标黑域名的节点数量比值,若节点数量比值大于第二阈值,则判定连通分支中的目标未知域名为恶意域名。
参见图2,为本发明实施例公开的一种恶意域名检测方法流程示意图;该方法具体包括:
S101、获取主机的域名访问序列,确定域名访问序列中各个域名的词向量;域名访问序列中各个域名按照主机访问顺序进行排序;
具体的,在DNS(Domain name system,域名服务器)安全中,域名的访问先后顺序往往包含了一些恶意特征在里面。比如:同一个脚本进行恶意通信的域名们可能在DNS记录上是按一定的时间先后顺序进行访问的,而且一些恶意域名往往和其他未知的域名一起访问。而通过情报找到的黑域名往往是真正进行恶意通信域名的子集,因此,本申请利用自然语言处理当中的词向量技术,将域名在主机访问顺序中的高维特征嵌入到一个低维向量当中,有效的抓住了域名之间的关系,然后再利用图计算的全局性特点,从一个整体的视角将隐藏的恶意域名检测出来。
因此在本实施例中,首先需要获取主机的域名访问序列,该域名访问序列具有主机的域名访问顺序,该访问顺序即代表了主机访问各个域名的时间先后顺序,例如:可按照一台主机访问域名的时间顺序进行排序得到如下域名访问序列:‘Baidu.com’,‘Apple.com’,‘google.com’,也即:主机访问域名‘Baidu.com’后,访问了域名‘Apple.com’,然后又访问了域名
‘google.com’。进一步,本申请在确定所述域名访问序列中各个域名的词向量时,具体可利用Skip-Gram模型训练域名访问序列中各个域名的词向量。如:对于上述域名访问序列中的每个域名,可看成一个单词,并利用Skip-Gram模型进行训练。训练后,便将每个域名映射成一个特征向量,‘Baidu.com’和’Apple.com’所训练生成的词向量分别为:
Baidu.com:[1.0,2.0....](1*128)
Apple.com:[1.1,2.3,....](1*128)。
S102、获取域名访问序列中黑域名与未知域名的词向量之间的相似度,并确定相似度大于第一阈值的目标黑域名和目标未知域名;
需要说明的是,域名黑名单中记载的黑域名为已检测出的恶意域名,因此本申请获取主机的域名访问序列之后,可通过域名黑名单中的黑域名与域名访问序列进行比对,识别出域名访问序列中的黑域名,而域名访问序列中未被识别出的域名在本申请中称之为未知域名,但是该未知域名中可能包括域名黑名单中未记载的恶意域名,因此本申请通过后续S102-S104从未知域名中检测出与黑域名关联度较高的恶意域名。也就是说,该域名访问序列中的域名包括:已经识别的黑域名和未识别的未知域名,并且,由于恶意域名之间往往是相似度的,因此本申请可获取域名访问序列中每个黑域名与其他域名的词向量之间的相似度,如果该相似度大于第一阈值,则说明两个域名是相似的,关联度较高,代表了未知域名极有可能是恶意域名。在本实施例中,可采用cosine距离计算公式来确定域名之间的相似度,当然,本方案仅以此方式为例进行说明,但并不局限于此。
在本申请中,为了对相似的未知域名与黑域名进行区别,将相似度大于第一阈值的黑域名和未知域名称为目标黑域名和目标未知域名;若黑域名与未知域名的词向量之间的相似度不大于第一阈值,则该黑域名和未知域名不称之为目标黑域名和目标未知域名;在本实施例中,可将第一阈值设置为80%,也就是说:如果黑域名A与未知域名B的相似度大于80%,则将黑域名A作为目标黑域名,将未知域名B作为目标未知域名,以便执行后续步骤;反之,如果如果黑域名A与未知域名B的相似度小于80%,则不将黑域名A作为目标黑域名,不将未知域名B作为目标未知域名,后续步骤的执行也不需要考虑黑域名A与未知域名B。需要说明的是,第一阈值设置为80%仅仅为其中一种设置方式,在应用时可根据实际情况进行自定义设定。
S103、将目标黑域名和目标未知域名分别作为节点、将相似度大于第一阈值的节点之间设置连通边,生成无向图;
具体来说,识别相似度较高的目标黑域名和目标未知域名之后,需要根据域名之间的相似关系生成无向图,无向图为通过节点和连接节点之间的边组成,且图中每条边都是无方向的,在本申请中,该无向图中的节点即为目标黑域名和目标未知域名,并将相似度大于第一阈值的域名节点之间设置一条连通边。
参见图3,为本发明实施例提供的一种域名无向图;在该图中,节点主要包括:目标黑域名A1和A2,目标未知域名B1和B2,其中,目标黑域名A1和目标未知域名B1的相似度大于第一阈值,因此,A1节点和B1节点之间设置一条连通边,同理,目标黑域名A2与目标未知域名B1、目标黑域名A1与目标未知域名B2、目标黑域名A2与目标未知域名B2、目标黑域名A1与目标黑域名A2之间的相似度同样大于第一阈值,因此,在A2节点和B1节点之间、在A1节点和B2节点之间、在A2节点和B2节点之间、在A1节点和A2节点之间均设置一条连通边,从而生成了如图2所示的无向图,通过该图可以看出,该无向图可以清晰的反映出各个未知域名与黑域名之间的相似关系,从而检测出更多的与黑域名相关的恶意节点。
S104、获取无向图的连通分支中目标未知域名与目标黑域名的节点数量比值,若节点数量比值大于第二阈值,则判定连通分支中的目标未知域名为恶意域名。
在本实施例中,无向图创建后,需要统计无向图的连通分支中目标未知域名的节点数量与目标黑域名的节点数量,然后计算目标未知域名的节点数量与目标黑域名的节点数量之间的节点数量比值,如果该比值大于预先设定的第二阈值,则判定该连通分支中目标位置域名为恶意域名,否则,不是恶意域名。需要说明的是,无向图的极大连通子图称为无向图的连通分支,显然,任何连通图只有一个连通分支,即其自身,而非连通的无向图有多个连通分支,参见图3所述的无向图,由于各个节点之间通过边连通,因此图3所述的无向图中仅存在一个连通分支,在该连通分支中,目标未知域名的节点数量为2,目标黑域名的节点数量为2,计算得到的节点数量比值为1,如果设置第二阈值小于1,则可判定图3中的目标未知域名B1和目标未知域名B2均为恶意域名,否则,说明目标未知域名B1和目标未知域名B2不是恶意域名。
需要说明的是,本申请判定连通分支中的目标未知域名为恶意域名之后,还包括:根据恶意域名对主机所访问的域名进行安全检测,生成安全事件。也即:通过本申请检测出恶意域名之后,可检测主机是否访问这些恶意域名,如果访问了,则生成对应的安全事件,以提醒管理人员该主机可能访问了恶意域名,具有安全风险。
综上可见看出,本方案利用域名访问序列生成词向量后,可将黑域名以及与其相似度较高的未知域名一同生成无向图,通过该图可以反映出未知域名与黑域名的关联联系,从而通过该关联联系检测出更多的恶意域名;并且,本方案在判定恶意域名时,若未知域名与黑域名的节点数量比值大于第二阈值,则将未知域名判定为恶意域名,通过这种方式,使得判定结果具有较强的解释性及准确定,并且,由于该第二阈值可根据实际情况进行调整,从而增加了结果的可控性。
参见图4,为本发明实施例公开的另一种恶意域名检测方法流程示意图;需要说明的是,本实施例所述的检测方法与上一实施例所述的检测方法的相同之处可以互相参照,在此便不具体赘述;本实施例所述的方法具体包括:
S201、获取主机的域名访问序列,域名访问序列中各个域名按照主机访问顺序进行排序;
S202、利用Skip-Gram模型训练域名访问序列中各个域名的词向量;
S203、将域名访问序列中的域名与黑域名库中的域名进行比对,识别域名访问序列中黑域名;域名访问序列中包括黑域名和未知域名;
S204、将每个黑域名作为种子域名,分别获取每个种子域名的词向量与域名访问序列中其他域名的词向量之间的相似度;
需要说明的是,黑域名库中的域名均为已经识别的黑域名,因此将该黑域名库中的域名与域名访问序列中的域名进行对比,便可识别出该访问序列中的黑域名,以便通过该访问序列中的黑域名检测出与黑域名具有访问顺序关系的恶意域名。因此,本申请识别出域名访问序列中的黑域名后,便将每个黑域名作为种子域名,计算其与其他域名的词向量之间的相似度。
S205、判断是否存在大于第一阈值的目标相似度;若存在,则执行S206;若不存在,则结束流程。
S206、确定与目标相似度对应的目标黑域名和目标未知域名,并根据目标相似度、目标黑域名和标未知域名生成三元组;
需要说明的是,在本申请中,若目标黑域名与目标未知域名的相似度大于第一阈值,则生成对应的三元组,该三元组可包括目标相似度、目标黑域名和标未知域名,以及目标黑域名的家族类型;如存在如下两个域名:
e.ppift.net【1*128向量】
e.ppift.com【1*128向量】
其中,e.ppift.net为黑域名库中的黑域名,该黑域名属于B001-F0001家族,那么计算这两个域名的cosine相似度,得到相似度值为0.8751,那么生成的三元组就是(e.ppift.net,e.ppift.com,0.8751,B001-F0001)。
S207、将目标黑域名和目标未知域名分别作为节点、将相似度大于第一阈值的节点之间设置连通边,生成无向图;
可以理解的是,得到不同的三元组后,可直接根据三元组中目标黑域名、目标未知域名及域名节点之间的相似度生成无向图,其中具体的生成过程已在上述实施例中具体说明,在此便不再具体赘述。
S208、判断无向图中是否存在仅有一条连通边的目标未知域名的节点;若是,则执行S209;若否,则执行S210;
S209、删除仅有一条连通边的目标未知域名的节点。
需要说明的是,本申请在构图之后,会出现一个黑域名关联出大量未知域名的情况,但是该情况相比于大量同一家族的域名关联出的未知域名,很容易出现误报。这些容易出现误报的未知域名的特点是在图中的节点度为1,该节点度为连接该节点的边的条数,也即:在整个图中,该未知域名的节点只与一个恶意域名的节点有边。因此在本申请中,去除掉图中节点度为1的节点,从而避免节点的误报现象。
S210、获取无向图的连通分支中目标未知域名与目标黑域名的节点数量比值,若节点数量比值大于第二阈值,则判定连通分支中的目标未知域名为恶意域名。
综上可见,在本申请中,将域名在主机访问顺序中的高维特征嵌入到一个低维词向量当中,然后利用黑库中的域名为种子域名,求出所有域名与其相似度极高的域名构成三元组,并基于三元组生成无向图,可直接根据无向图中各个节点之间的关系检测出恶意域名;并且,本申请通过删除节点度为1的未知域名节点,可避免出现误报现象。
基于上述任意方法实施例,在本实施例中,获取无向图的连通分支中目标未知域名与目标黑域名的节点数量比值,若节点数量比值大于第二阈值,则判定连通分支中的目标未知域名为恶意域名的过程,具体包括:
从所述无向图中确定待处理的目标连通分支;
获取所述目标连通分支中目标未知域名与目标黑域名的节点数量比值;所述目标黑域名携带了家族类型信息;
根据所述目标连通分支的类型及所述目标连通分支中目标黑域名的数量确定第二阈值;所述目标连通分支的类型包括单家族类型和多家族类型;
判断所述节点数量比值是否大于所述第二阈值;若是,则判定所述目标连通分支中的目标未知域名为恶意域名。
需要说明的是,第二阈值可根据实际情况具体设定,本实施例中的提供了一种具体的设置方式:利用连通分支的类型及连通分支中目标黑域名的数量确定第二阈值。
具体来说,每个黑域名都具有其家族类型,因此对于无向图中的各个连通分支来说,共存在两种类型:单家族类型和多家族类型;其中,单家族类型代表该连通分支中的目标黑域名均属于同一个家族类型,多家族类型则代表该连通分支中的目标黑域名属于不同的家族类型。并且,如果一个连通分支里只出现单一家族的恶意域名,则认为该连通分支的恶意分支置信度较高,因此对该连通分支关联出来的域名的各个阈值设定较低。反之,如果一个连通分支里出现了多个家族的恶意域名,则在这个连通分支里的域名设定就要高于单一家族的阈值。进一步,连通分支中的黑域名的数量同样可以调整该阈值,如果连通分支中的黑域名的数量较多,则说明该连通分支的恶意分支置信度较高,如果连通分支中的黑域名的数量较少,则说明该连通分支的恶意分支置信度较低,因此,黑域名的数量越多则该第二阈值越小。
参见表1,为本实施例中公开的一种第二阈值设置表格,在确定第二阈值时,可根据连通分支的类型及黑域名的数量确定第二阈值的具体数值;需要说明的是,表1为本实施例提出的其中一种具体设置方式,但是第二阈值的设置方式并不局限于此。
表1
Figure BDA0002459884510000111
参见图5,为本发明实施例公开的一种恶意域名检测整体流程示意图;通过图5可以看出,本方案中,将域名访问序列集合输入Skip-Gram模型后,训练出每个域名的词向量,然后以黑库域名为种子域名,求其与未知域名的相似度,将相似度大于预定80%的域名生成三元组,然后构图及连通分支分解后,统计连通分支中黑域名的家族种类及黑域名数量确定第二阈值,计算未知域名节点度与黑域名数量的比值,根据该阈值与第二阈值的关系确定未知域名是否为恶意域名。
综上可以看出,本申请公开的这种利用图特性检测恶意域名方法,可以根据连通分支内恶意域名家族之间的联系进行恶意域名关联检测,并且,本方案根据预设的阈值确定恶意域名,使得产出的结果有较强的解释性,且结果可控。相比于标签传播得到的恶意域名,该方法准确性更高。并且,恶意域名确定后,可再利用这批恶意域名匹配回原始DNS记录,最终判断主机访问该批域名的数量是否超过阈值,如果超过,则生成安全事件。
下面对本发明实施例提供的恶意域名检测装置进行介绍,下文描述的恶意域名检测装置与上文描述的恶意域名检测装置可以相互参照。
参见图6,本发明实施例提供的一种恶意域名检测装置结构示意图;该装置包括:
获取模块21,用于获取主机的域名访问序列;所述域名访问序列中各个域名按照主机访问顺序进行排序;
第一确定模块22,用于确定所述域名访问序列中各个域名的词向量;
获取模块23,用于获取所述域名访问序列中黑域名与未知域名的词向量之间的相似度;
第二确定模块24,用于确定相似度大于第一阈值的目标黑域名和目标未知域名;
生成模块25,用于将目标黑域名和目标未知域名分别作为节点、将相似度大于第一阈值的节点之间设置连通边,生成无向图;
判定模块26,用于获取所述无向图的连通分支中目标未知域名与目标黑域名的节点数量比值,若所述节点数量比值大于第二阈值,则判定连通分支中的目标未知域名为恶意域名。
其中,该装置还包括:
检测模块,用于根据所述恶意域名对主机所访问的域名进行安全检测,生成安全事件。
其中,所述第一确定模块具体用于:利用Skip-Gram模型训练所述域名访问序列中各个域名的词向量。
其中,所述获取模块包括:
识别单元,用于将所述域名访问序列中的域名与黑域名库中的域名进行比对,识别所述域名访问序列中黑域名;所述域名访问序列中包括黑域名和未知域名;
第一获取单元,用于将每个黑域名作为种子域名,分别获取每个种子域名的词向量与所述域名访问序列中其他域名的词向量之间的相似度。
其中,所述第二确定模块包括:
第一判断单元,用于判断是否存在大于第一阈值的目标相似度;若存在,则触发生成单元;
所述生成单元,用于确定与所述目标相似度对应的目标黑域名和目标未知域名,并根据所述目标相似度、所述目标黑域名和所述目标未知域名生成三元组。
其中,所述装置还包括:
第二判断单元,用于判断所述无向图中是否存在仅有一条连通边的目标未知域名的节点;若存在,则触发删除单元;
删除单元,用于删除仅有一条连通边的目标未知域名的节点。
其中,所述判定模块包括:
第一确定单元,用于从所述无向图中确定待处理的目标连通分支;
第二获取单元,用于获取所述目标连通分支中目标未知域名与目标黑域名的节点数量比值;所述目标黑域名携带了家族类型信息;
第二确定单元,用于根据所述目标连通分支的类型及所述目标连通分支中目标黑域名的数量确定第二阈值;所述目标连通分支的类型包括单家族类型和多家族类型;
第三判断单元,用于判断所述节点数量比值是否大于所述第二阈值;若是,则触发判定单元;
所述判定单元,用于判定所述目标连通分支中的目标未知域名为恶意域名。
参见图7,为本发明实施例提供的一种电子设备结构示意图;通过该图可以看出,该设备包括:
存储器31,用于存储计算机程序;
处理器32,用于执行所述计算机程序时实现如上述任意方法实施例所述的恶意域名检测方法的步骤。
在本实施例中,该设备为服务器或PC(Personal Computer,个人电脑)、智能手机、平板电脑、掌上电脑、便携计算机等终端设备。
该设备可以包括存储器31、处理器32和总线33。
其中,存储器31包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统和计算机程序,该存储器为非易失性存储介质中的操作系统和计算机可读指令的运行提供环境。处理器32在一些实施例中可以是一中央处理器(Central Processing Unit,CPU)、控制器、微控制器、微处理器或其他数据处理芯片,为网关设备提供计算和控制能力,执行所述存储器31中保存的计算机程序时,可以实现前述任一实施例公开的恶意域名检测方法的步骤。
该总线33可以是外设部件互连标准(peripheral component interconnect,简称PCI)总线或扩展工业标准结构(extended industry standard architecture,简称EISA)总线等。该总线可以分为地址总线、数据总线、控制总线等。为便于表示,图7中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
进一步地,设备还可以包括网络接口34,网络接口34可选的可以包括有线接口和/或无线接口(如WI-FI接口、蓝牙接口等),通常用于在该设备与其他电子设备之间建立通信连接。
图7仅示出了具有组件31-34的设备,本领域技术人员可以理解的是,图7示出的结构并不构成对设备的限定,可以包括比图示更少或者更多的部件,或者组合某些部件,或者不同的部件布置。
本发明实施例还公开了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上述任意方法实施例所述的恶意域名检测方法的步骤。
其中,该存储介质可以包括:U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。

Claims (10)

1.一种恶意域名检测方法,其特征在于,包括:
获取主机的域名访问序列,确定所述域名访问序列中各个域名的词向量;所述域名访问序列中各个域名按照主机访问顺序进行排序;
获取所述域名访问序列中黑域名与未知域名的词向量之间的相似度,并确定相似度大于第一阈值的目标黑域名和目标未知域名;
将目标黑域名和目标未知域名分别作为节点、将相似度大于第一阈值的节点之间设置连通边,生成无向图;
获取所述无向图的连通分支中目标未知域名与目标黑域名的节点数量比值,若所述节点数量比值大于第二阈值,则判定连通分支中的目标未知域名为恶意域名;其中,多家族类型的连通分支的第二阈值高于单家族类型的连通分支的第二阈值,目标黑域名的数量越多则第二阈值越小。
2.根据权利要求1所述的恶意域名检测方法,其特征在于,所述判定连通分支中的目标未知域名为恶意域名之后,还包括:
根据所述恶意域名对主机所访问的域名进行安全检测,生成安全事件。
3.根据权利要求1所述的恶意域名检测方法,其特征在于,所述确定所述域名访问序列中各个域名的词向量,包括:
利用Skip-Gram模型训练所述域名访问序列中各个域名的词向量。
4.根据权利要求1所述的恶意域名检测方法,其特征在于,所述获取所述域名访问序列中黑域名与未知域名的词向量之间的相似度,包括:
将所述域名访问序列中的域名与黑域名库中的域名进行比对,识别所述域名访问序列中黑域名;所述域名访问序列中包括黑域名和未知域名;
将每个黑域名作为种子域名,分别获取每个种子域名的词向量与所述域名访问序列中其他域名的词向量之间的相似度。
5.根据权利要求1所述的恶意域名检测方法,其特征在于,所述确定相似度大于第一阈值的目标黑域名和目标未知域名,包括:
判断是否存在大于第一阈值的目标相似度;
若存在,则确定与所述目标相似度对应的目标黑域名和目标未知域名,并根据所述目标相似度、所述目标黑域名和所述目标未知域名生成三元组。
6.根据权利要求5所述的恶意域名检测方法,其特征在于,所述将目标黑域名和目标未知域名分别作为节点、将相似度大于第一阈值的节点之间设置连通边,生成无向图之后,还包括:
判断所述无向图中是否存在仅有一条连通边的目标未知域名的节点;
若存在,则删除仅有一条连通边的目标未知域名的节点。
7.根据权利要求1至6中任意一项所述的恶意域名检测方法,其特征在于,所述获取所述无向图的连通分支中目标未知域名与目标黑域名的节点数量比值,若所述节点数量比值大于第二阈值,则判定连通分支中的目标未知域名为恶意域名,包括:
从所述无向图中确定待处理的目标连通分支;
获取所述目标连通分支中目标未知域名与目标黑域名的节点数量比值;所述目标黑域名携带了家族类型信息;
根据所述目标连通分支的类型及所述目标连通分支中目标黑域名的数量确定第二阈值;所述目标连通分支的类型包括单家族类型和多家族类型;
判断所述节点数量比值是否大于所述第二阈值;若是,则判定所述目标连通分支中的目标未知域名为恶意域名。
8.一种恶意域名检测装置,其特征在于,包括:
获取模块,用于获取主机的域名访问序列;所述域名访问序列中各个域名按照主机访问顺序进行排序;
第一确定模块,用于确定所述域名访问序列中各个域名的词向量;
获取模块,用于获取所述域名访问序列中黑域名与未知域名的词向量之间的相似度;
第二确定模块,用于确定相似度大于第一阈值的目标黑域名和目标未知域名;
生成模块,用于将目标黑域名和目标未知域名分别作为节点、将相似度大于第一阈值的节点之间设置连通边,生成无向图;
判定模块,用于获取所述无向图的连通分支中目标未知域名与目标黑域名的节点数量比值,若所述节点数量比值大于第二阈值,则判定连通分支中的目标未知域名为恶意域名;其中,多家族类型的连通分支的第二阈值高于单家族类型的连通分支的第二阈值,目标黑域名的数量越多则第二阈值越小。
9.一种电子设备,其特征在于,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如权利要求1至7任一项所述的恶意域名检测方法的步骤。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至7任一项所述的恶意域名检测方法的步骤。
CN202010316864.XA 2020-04-21 2020-04-21 一种恶意域名检测方法、装置、设备及存储介质 Active CN113542442B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010316864.XA CN113542442B (zh) 2020-04-21 2020-04-21 一种恶意域名检测方法、装置、设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010316864.XA CN113542442B (zh) 2020-04-21 2020-04-21 一种恶意域名检测方法、装置、设备及存储介质

Publications (2)

Publication Number Publication Date
CN113542442A CN113542442A (zh) 2021-10-22
CN113542442B true CN113542442B (zh) 2022-09-30

Family

ID=78093864

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010316864.XA Active CN113542442B (zh) 2020-04-21 2020-04-21 一种恶意域名检测方法、装置、设备及存储介质

Country Status (1)

Country Link
CN (1) CN113542442B (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113271292B (zh) * 2021-04-07 2022-05-10 中国科学院信息工程研究所 一种基于词向量的恶意域名集群检测方法及装置
CN114301696B (zh) * 2021-12-30 2023-12-01 北京天融信网络安全技术有限公司 恶意域名检测方法、装置、计算机设备及存储介质
CN114745355B (zh) * 2022-01-25 2023-06-30 合肥讯飞数码科技有限公司 Dns检测方法及装置、电子设备和存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2015051720A1 (zh) * 2013-10-08 2015-04-16 北京奇虎科技有限公司 检测可疑dns的方法、装置和可疑dns的处理方法、系统
CN105897752A (zh) * 2016-06-03 2016-08-24 北京奇虎科技有限公司 未知域名的安全检测方法及装置
CN110198292A (zh) * 2018-03-30 2019-09-03 腾讯科技(深圳)有限公司 域名识别方法和装置、存储介质及电子装置
CN110324273A (zh) * 2018-03-28 2019-10-11 蓝盾信息安全技术有限公司 一种基于dns请求行为与域名构成特征相结合的僵尸网络检测法
CN110557382A (zh) * 2019-08-08 2019-12-10 中国科学院信息工程研究所 一种利用域名共现关系的恶意域名检测方法及系统

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8521667B2 (en) * 2010-12-15 2013-08-27 Microsoft Corporation Detection and categorization of malicious URLs

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2015051720A1 (zh) * 2013-10-08 2015-04-16 北京奇虎科技有限公司 检测可疑dns的方法、装置和可疑dns的处理方法、系统
CN105897752A (zh) * 2016-06-03 2016-08-24 北京奇虎科技有限公司 未知域名的安全检测方法及装置
CN110324273A (zh) * 2018-03-28 2019-10-11 蓝盾信息安全技术有限公司 一种基于dns请求行为与域名构成特征相结合的僵尸网络检测法
CN110198292A (zh) * 2018-03-30 2019-09-03 腾讯科技(深圳)有限公司 域名识别方法和装置、存储介质及电子装置
CN110557382A (zh) * 2019-08-08 2019-12-10 中国科学院信息工程研究所 一种利用域名共现关系的恶意域名检测方法及系统

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
一种通用的恶意域名检测集成学习方法;刘浩杰等;《网络空间安全》;20190925(第09期);1-10 *

Also Published As

Publication number Publication date
CN113542442A (zh) 2021-10-22

Similar Documents

Publication Publication Date Title
CN113542442B (zh) 一种恶意域名检测方法、装置、设备及存储介质
JP6422617B2 (ja) ネットワークアクセス動作識別プログラム、サーバ及び記憶媒体
KR101724307B1 (ko) 악성코드를 검출하는 방법 및 시스템
CN108650260B (zh) 一种恶意网站的识别方法和装置
CN109189496B (zh) 应用程序的动态库信息获取方法及装置
CN107992738B (zh) 一种账号登录异常检测方法、装置及电子设备
CN111968625A (zh) 融合文本信息的敏感音频识别模型训练方法及识别方法
CN103617393A (zh) 一种基于支持向量机的移动互联网恶意应用软件检测方法
CN112395612A (zh) 一种恶意文件检测方法、装置、电子设备及存储介质
CN109784059B (zh) 一种木马文件溯源方法、系统及设备
US11206277B1 (en) Method and apparatus for detecting abnormal behavior in network
CN111641588A (zh) 网页模拟输入检测方法、装置、计算机设备及存储介质
CN113157854A (zh) Api的敏感数据泄露检测方法及系统
CN112148305A (zh) 一种应用检测方法、装置、计算机设备和可读存储介质
CN107577943B (zh) 基于机器学习的样本预测方法、装置及服务器
CN111414617A (zh) 一种恶意软件检测方法、装置、设备、介质
TW201929481A (zh) 一種身份認證方法、伺服器及用戶端設備
CN111597553A (zh) 病毒查杀中的进程处理方法、装置、设备及存储介质
CN111382432A (zh) 一种恶意软件检测、分类模型生成方法及装置
CN111181979B (zh) 访问控制方法、装置、计算机设备和计算机可读存储介质
CN111125704B (zh) 一种网页挂马识别方法及系统
CN109992960B (zh) 一种伪造参数检测方法、装置、电子设备及存储介质
CN105243134B (zh) 一种处理被劫持浏览器的方法及设备
CN105989284B (zh) 网页入侵脚本特征的识别方法及设备
CN108133136A (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
GR01 Patent grant
GR01 Patent grant
EE01 Entry into force of recordation of patent licensing contract

Application publication date: 20211022

Assignee: Beijing Ruike Far East Technology Co.,Ltd.

Assignor: SANGFOR TECHNOLOGIES Inc.

Contract record no.: X2023980036910

Denomination of invention: A malicious domain name detection method, device, device, and storage medium

Granted publication date: 20220930

License type: Common License

Record date: 20230625

EE01 Entry into force of recordation of patent licensing contract