CN115333850A - 域名检测方法、系统及相关设备 - Google Patents
域名检测方法、系统及相关设备 Download PDFInfo
- Publication number
- CN115333850A CN115333850A CN202211035333.9A CN202211035333A CN115333850A CN 115333850 A CN115333850 A CN 115333850A CN 202211035333 A CN202211035333 A CN 202211035333A CN 115333850 A CN115333850 A CN 115333850A
- Authority
- CN
- China
- Prior art keywords
- domain name
- text
- detected
- target
- probability
- 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
- 238000001514 detection method Methods 0.000 title claims abstract description 56
- 238000000034 method Methods 0.000 claims abstract description 46
- 238000004364 calculation method Methods 0.000 claims abstract description 31
- 238000012821 model calculation Methods 0.000 claims description 10
- 238000012549 training Methods 0.000 claims description 8
- 238000000605 extraction Methods 0.000 claims description 6
- 230000002457 bidirectional effect Effects 0.000 claims description 5
- 238000012512 characterization method Methods 0.000 claims description 5
- 238000004590 computer program Methods 0.000 claims description 4
- 238000004458 analytical method Methods 0.000 abstract description 7
- 238000004891 communication Methods 0.000 abstract description 7
- 238000012545 processing Methods 0.000 description 8
- 238000010586 diagram Methods 0.000 description 6
- 230000006870 function Effects 0.000 description 5
- 238000005065 mining Methods 0.000 description 4
- 230000000694 effects Effects 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 2
- 238000012423 maintenance Methods 0.000 description 2
- 239000013307 optical fiber Substances 0.000 description 2
- 230000000644 propagated effect Effects 0.000 description 2
- 239000013589 supplement Substances 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 230000004913 activation Effects 0.000 description 1
- 230000006978 adaptation Effects 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 238000013528 artificial neural network Methods 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 238000013136 deep learning model Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000008569 process Effects 0.000 description 1
- 230000003252 repetitive effect Effects 0.000 description 1
- 238000012216 screening Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
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/14—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
-
- 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/08—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
-
- 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/30—Managing network names, e.g. use of aliases or nicknames
-
- 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/20—Network architectures or network communication protocols for network security for managing network security; network security policies in general
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Environmental & Geological Engineering (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本公开提供了一种域名检测方法,涉及通信技术领域,该方法包括:提取域名系统流量中待检测域名的高级别域名;将高级别域名与目标字符列表进行匹配得到匹配结果;根据高级别域名,通过文本分类计算得到文本正例概率;根据匹配结果和文本正例概率计算得到待检测域名的分类概率;以及根据分类概率确定待检测域名的预测类别。本公开方法通过提取高级别域名部分,尽可能多地保留有效字符信息,从而增加了检测结果的泛化能力,提高了检测结果的准确率。进一步地,结合字符匹配和文本分类的方法,增加了域名分析的解释性以及域名分析的可靠性。
Description
技术领域
本公开涉及通信技术领域,尤其涉及一种域名检测方法、系统、装置、计算机可读存储介质及电子设备。
背景技术
随着网络技术的发展,窃取他人计算资源的恶意网站层出不穷,极大危害被攻击者的利益。现有技术往往都是基于分析域名的字符特征的方法,但实际上恶意域名为了避免被检测,会在域名中添加许多干扰信息从而影响检测的准确性,另一方面,恶意域名中也不一定具备可预判字符特征,因此准确率低。
因此,如何提高域名检测结果的准确率是一个亟需解决的问题。
需要说明的是,在上述背景技术部分公开的信息仅用于加强对本公开的背景的理解,因此可以包括不构成对本领域普通技术人员已知的现有技术的信息。
发明内容
本公开的目的在于提供一种域名检测方法、系统、装置、计算机可读存储介质及电子设备,以至少解决相关技术中域名检测准确率不高的技术问题。
本公开的其他特性和优点将通过下面的详细描述变得显然,或部分地通过本公开的实践而习得。
本公开的技术方案如下:
根据本公开的一个方面,提供一种域名检测方法,该方法包括:提取域名系统流量中待检测域名的高级别域名;将高级别域名与目标字符列表进行匹配得到匹配结果;根据高级别域名,通过文本分类计算得到文本正例概率;根据匹配结果和文本正例概率计算得到待检测域名的分类概率;以及根据分类概率确定待检测域名的预测类别。
在本公开的一些实施例中,提取域名系统流量中待检测域名的高级别域名的步骤包括:按照待检测域名中的点号检测待检测域名的字符段数量;若字符段数量不大于2,则将待检测域名作为高级别域名;若字符段数量大于2,则提取待测域名的一级域名和二级域名作为高级别域名。
在本公开的一些实施例中,根据高级别域名,通过文本分类计算得到文本正例概率的步骤包括:从搜索服务器中获取高级别域名的文本数据;以及将文本数据输入至训练好的目标文本描述模型,得到待检测域名的文本正例概率。
在本公开的一些实施例中,将文本数据输入至训练好的目标文本描述模型,得到待检测域名的文本正例概率的步骤之前包括:从搜索服务器中获取目标类别域名的文本数据和非目标类别域名的文本数据;将目标类别域名的文本数据标记为正例和非目标类别域名的文本数据标记为反例;以及使用标记为正例的文本数据和反例的文本数据,对基于变换器的双向编码器表征模型进行训练得到目标文本描述模型。
在本公开的一些实施例中,根据匹配结果和文本正例概率计算得到待检测域名的分类概率的步骤包括:根据分类概率f(m,p)和匹配结果m∈{0,1}以及文本正例概率p∈[0,1]的关系计算得到分类概率,该关系表示为:
其中,λ∈[0,1]为超参数。
在本公开的一些实施例中,将高级别域名与目标字符列表进行匹配得到匹配结果的步骤包括:将高级别域名与目标地址库进行匹配,若高级别域名与目标地址库中的目标类别域名匹配成功,则将待检测域名的类别确认为目标类别;将高级别域名与白名单进行匹配,若高级别域名与白名单匹配成功,则将待检测域名的类别确认为非目标类别;若待检测域名与目标地址库和白名单均匹配失败,则将高级别域名与目标字符列表进行匹配得到匹配结果。
在本公开的一些实施例中,根据分类概率确定待检测域名的预测类别的步骤之后包括:若预测类别为目标类别域名,则将待检测域名添加到目标地址库;若预测类别为非目标类别域名,则将待检测域名添加到白名单。
根据本公开的又一个方面,提供一种域名检测系统,该系统包括:分布式消息队列系统、流数据计算引擎、模型计算服务器和搜索服务器,其中,分布式消息队列系统,用于传递域名系统流量;流数据计算引擎,用于从分布式消息队列系统中实时读取域名系统流量中待检测域名的高级别域名;以及将高级别域名与目标字符列表进行匹配得到匹配结果;搜索服务器,用于搜索高级别域名的文本数据;模型计算服务器,用于从搜索服务器中获取高级别域名的文本数据;将文本数据输入至训练好的目标文本描述模型,得到待检测域名的文本正例概率;以及流数据计算引擎,根据匹配结果和文本正例概率计算得到待检测域名的分类概率;以及根据分类概率确定待检测域名的预测类别。
根据本公开的又一个方面,提供一种域名检测装置,该装置包括:高级别域名提取模块,用于提取域名系统流量中待检测域名的高级别域名;匹配模块,用于将高级别域名与目标字符列表进行匹配得到匹配结果;文本正例计算模块,用于根据高级别域名,通过文本分类计算得到文本正例概率;分类计算模块,用于根据匹配结果和文本正例概率计算得到待检测域名的分类概率;以及类别预测模块,用于根据分类概率确定待检测域名的预测类别。
根据本公开的再一个方面,提供一种电子设备,包括:处理器;以及存储器,用于存储所述处理器的可执行指令;其中,所述处理器配置为经由执行所述可执行指令来执行上述的域名检测方法。
根据本公开的又一个方面,提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述的域名检测方法。
本公开方法通过提取高级别域名部分,尽可能多地保留有效字符信息,从而增加了检测结果的泛化能力,提高了检测结果的准确率。
进一步地,结合字符匹配和文本分类的方法,增加了域名分析的解释性以及域名分析的可靠性。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。显而易见地,下面描述中的附图仅仅是本公开的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1示出本公开实施例中一种域名检测方法的流程图。
图2示出本公开实施例中一种域名检测方法中高级别域名提取方法的流程图。
图3示出本公开实施例中一种域名检测方法中挖矿文本描述模型训练与预测的流程图。
图4示出本公开实施例中又一种域名检测方法的流程图。
图5示出本公开实施例的一种实施域名检测方法的示例性系统部署方案示意图。
图6示出本公开实施例中一种域名检测装置的示意图。
图7示出本公开实施例中一种域名检测方法的电子设备的示意性框图。
具体实施方式
现在将参考附图更全面地描述示例实施方式。然而,示例实施方式能够以多种形式实施,且不应被理解为限于在此阐述的范例;相反,提供这些实施方式使得本公开将更加全面和完整,并将示例实施方式的构思全面地传达给本领域的技术人员。所描述的特征、结构或特性可以以任何合适的方式结合在一个或更多实施方式中。
此外,附图仅为本公开的示意性图解,并非一定是按比例绘制。图中相同的附图标记表示相同或类似的部分,因而将省略对它们的重复描述。附图中所示的一些方框图是功能实体,不一定必须与物理或逻辑上独立的实体相对应。可以采用软件形式来实现这些功能实体,或在一个或多个硬件模块或集成电路中实现这些功能实体,或在不同网络和/或处理器装置和/或微控制器装置中实现这些功能实体。
此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个该特征。在本公开的描述中,“多个”的含义是至少两个,例如两个、三个等,除非另有明确具体的限定。
针对上述相关技术中存在的技术问题,本公开实施例提供了一种域名检测方法,以用于至少解决上述技术问题中的一个或全部。
需要指出的是,本申请实施例中涉及的名词或术语可以相互参考,不再赘述。
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行地描述。
下面,将结合附图及实施例对本示例实施方式中的域名检测方法的各个步骤进行更详细的说明。
图1示出本公开实施例中一种域名检测方法的流程图。如图1所示,方法100可以包括以下步骤:
在步骤S110中,提取域名系统流量中待检测域名的高级别域名。
其中,域名系统(Domain Name System,DNS)是将域名和IP地址相互映射的一个分布式数据库,能够使人更方便地访问互联网。域名包括多个级别,从一级到多级,级别依次降低。每个域名包括多个字符,当前对于每一级域名长度的限制是63个字符,域名总长度则不能超过253个字符。
在步骤S120中,将高级别域名与目标字符列表进行匹配得到匹配结果。
其中,目标字符列表用于检测高级别域名中的字符是否与该列表中的一个或多个目标字符相匹配。目标字符可以是表征目标类别的域名的英文单词、汉语拼音或者商标字符等。例如,游戏类别的域名中的目标字符可以包括但不限于“play”,“game”,“gameboy”,“handgame”,“Xbox”,“Switch”等。
如果高级别域名中的字符与目标字符列表中的一个或多个字符相匹配,则匹配结果为匹配成功;如果高级别域名中的字符与目标字符列表中的字符均不匹配,则匹配结果为匹配失败。
在步骤S130中,根据高级别域名,通过文本分类计算得到文本正例概率。
其中,文本正例概率是文本为正例的概率,正例是指高级别域名为目标类别域名。
在本公开的一些实施例中,还包括与正例相对的反例,反例是指高级别域名为非目标类别域名。
其中,目标类别可以是人为设定的类别。
在步骤S140中,根据匹配结果和文本正例概率计算得到待检测域名的分类概率。
其中,分类概率是指待检测域名为目标类别域名的概率,也可以指待检测域名为非目标类别域名的概率。分类概率是综合匹配结果和文本正例概率的计算结果。
在步骤S150中,根据分类概率确定待检测域名的预测类别。
其中,待检测域名的预测类别包括目标类别和非目标类别。
需要说明的是,本公开实施例方法对目标类别不进行特别限定,也即本公开实施例方法可以根据具体的应用场景和特定的应用需求随意设定。
本公开方法通过提取高级别域名部分,尽可能多地保留有效字符信息,从而增加了检测结果的泛化能力,提高了检测结果的准确率。
进一步地,结合字符匹配和文本分类的方法,增加了域名分析的解释性以及域名分析的可靠性。
在本公开的一些实施例中,步骤S110可以包括:按照待检测域名中的点号检测待检测域名的字符段数量;若字符段数量不大于2,则将待检测域名作为高级别域名;若字符段数量大于2,则提取待测域名的一级域名和二级域名作为高级别域名。
本公开实施例方法通过提取一级和二级域名,可以排除一些低级域名由于携带子业务信息、随机字符串等信息带来的干扰,从而避免低级域名对检测结果的影响,提高了检测结果的准确性。
具体实施方法可以例如图2示出本公开实施例中一种域名检测方法中高级别域名提取方法的流程图。如图2所示,方法200可以包括以下步骤:
在步骤S210中,维护一级域名哈希表。
例如,一级域名哈希表中,可以包括.com、.net、.sg。
在步骤S220中,获取待检测域名。
在步骤S230中,按照待检测域名中的点号检测待检测域名的字符段数量,判断字符段数量是否多于两段。
在步骤S240中,如果不多于2段,则将该待检测域名作为高级别域名直接输出。
在步骤S250中,如果多于2段,则从右往左找到第一段不能与一级域名哈希表中的一级域名匹配的字符段作为二级域名。
在步骤S260中,将步骤S250中得到的一级域名和二级域名作为高级别域名。
结果可例如,表一:
原始域名 | 保留高级别域名 |
News.keyword.net | keyword.net |
kf.keyword.com.sg | keyword.com.sg |
word.com | word.com |
在本公开的一些实施例中,步骤S120还可以包括:将高级别域名与目标地址库进行匹配,若高级别域名与目标地址库中的目标类别域名匹配成功,则将待检测域名的类别确认为目标类别;将高级别域名与白名单进行匹配,若高级别域名与白名单匹配成功,则将待检测域名的类别确认为非目标类别;若待检测域名与目标地址库和白名单均匹配失败,则将高级别域名与目标字符列表进行匹配得到匹配结果。
在一些实施例中,匹配结果可以包括匹配成功和匹配失败,若匹配成功,则匹配结果为真值,否则为假值。
本公开实施例方法可以实现快速检测域名,通过白名单和目标地址库进行筛选后,再通过字符检测和文本分类的方法进行域名检测,可以减少数据计算量。
在本公开的一些实施例中,步骤S130还可以包括:从搜索服务器中获取高级别域名的文本数据;将文本数据输入至训练好的目标文本描述模型,得到待检测域名的文本正例概率。
其中,文本数据是与高级别域名相关的域名的网站上的数据。目标文本描述模型用于对该文本数据进行文本识别,然后返回识别结构。
通过搜索引擎自动检索与域名信息对应的实时文本数据信息,结合适用于文本分类的模型进行预测,使本方法具有实时性好、检测精度高的优点。
其中,需要说明的是,上述目标文本描述模型中搭载的文本识别算法,在本例中不进行特别限定,本领域技术人员在将本公开的技术方案付诸实现时,可以参考相关技术中的记载;例如,在本公开的一些实施例中,上述目标文本描述模型可以是基于神经网络结合大量的文本识别样本训练成的深度学习模型。
其中,在将文本数据输入至训练好的目标文本描述模型,得到待检测域名的文本正例概率的步骤之前,还可以包括:
从搜索服务器中获取目标类别域名的文本数据和非目标类别域名的文本数据;将目标类别域名的文本数据标记为正例和非目标类别域名的文本数据标记为反例;以及使用标记为正例的文本数据和反例的文本数据,对基于变换器的双向编码器表征模型进行训练得到目标文本描述模型。
本公开实施例方法通过学习检索域名的搜索结果文本进行域名预测,可以突破现有AI模型仅基于域名进行分类检测的局限性,从而提高域名识别的准确性。
例如图3示出本公开实施例中一种域名检测方法中挖矿文本描述模型训练与预测的流程图。如图3所示,方法300可以包括以下步骤:
在步骤S310中,从搜索服务器中获取目标类别域名的文本数据和非目标类别域名的文本数据。
在本公开的一些实施例中,可以预先编写爬虫分别爬取目标类型域名的文本数据和非目标类型域名的文本数据。
在步骤S320中,将目标类别域名的文本数据标记为正例和非目标类别域名的文本数据标记为反例。
在步骤S330中,使用标记为正例的文本数据和反例的文本数据,对基于变换器的双向编码器表征模型进行训练得到目标文本描述模型。
在步骤S340中,从搜索服务器中获取高级别域名的文本数据。
在步骤S350中,将每个文本数据输入至训练好的目标文本描述模型,得到每个文本数据的文本正例概率。
在步骤S360中,统计待检测域名的文本正例概率。
其中,可以根据公式(1)、(2)统计文本正例概率:
公式(1)将文本数据表征为由文本分词组成的Token序列,word2vec是一种词向量模型,将每个Token表示为一个向量,N表示文本数量。公式(2)展示了文本正例概率的计算方式,M和θ分别表示了目标文本描述模型及其训练好的参数,其输出结果为正类或负类(1或0)。
在本公开的一些实施例中,步骤S140还可以包括根据分类概率f(m,p)和匹配结果m∈{0,1}以及文本正例概率p∈[0,1]的关系计算得到该分类概率,该关系可以表示为:
其中,λ∈[0,1]为超参数。
其中,sigmoid函数为常用激活函数,将结果约束到[0,1]区间,并通过阈值0.5进行分类;m∈{0,1}分别表示匹配失败和匹配成功;λ∈[0,1]为超参数,表示字符特征匹配的重要性。计算出是目标类别域名的概率之后,可得到预测的类别。
例如,在从步骤S120获得与目标字符列表的匹配情况,记为真正m=1;在步骤S130中获得文本正例概率,记为p=0.6。结合这两方面信息进一步确定域名为目标类别的概率。根据公式(3)得到公式(4),配置超参数λ=0.5:
由公式(4)计算得到目标类型概率为0.976,通过阈值0.5进行分类,记为目标类型。
本公开实施例方法通过结合字符匹配结果和文本分类的预测概率,评估两者的整体指标,使检测结果更加全面和准确。
在本公开的一些实例中,步骤S150之后,还可以包括:若预测类别为目标类别域名,则将待检测域名添加到目标地址库;若预测类别为非目标类别域名,则将待检测域名添加到白名单。
本公开实施例的方法通过自动更新目标地址库和白名单,克服了现有技术中只能通过人工进行手动设置和维护域名列表,以便于后续进行有针对性的优化和维护。
图4示出本公开实施例中又一种域名检测方法的流程图。如图4所示,方法400可以包括:
在步骤S410中,读取域名系统流量,提取待检测域名。
在步骤S420中,提取待检测域名的高级别域名。
在步骤S430中,将高级别域名与目标地址库和白名单匹配。
若高级别域名与目标地址库匹配,则将待检测域名确定为目标类别域名;若高级别域名与白名单匹配,则将待检测域名确定为非目标类别域名。
若高级别域名与目标地址库和白名单均不匹配,则执行步骤S440和步骤S450。
在步骤S440中,将高级别域名与目标字符列表进行匹配得到匹配结果。
在步骤S450中,使用目标文本描述模型预测。
在本公开的一些实施例中,步骤S450可以包括图3中的步骤S340至步骤S360,在此不再赘述。
在步骤S460中,根据匹配结果和预测得到的文本正例概率确定待检测域名是否为目标类别。
如果待检测域名是目标类别,在步骤S470中,可以将该域名添加到目标地址库,以补充目标地址库信息。并且在步骤S480中,还可以将用该域名训练目标文本描述模型,以提高模型性能。
如果待检测域名是非目标类别,在步骤S490中,可以将该域名加入白名单,以补充白名单信息。
本公开实施例方法可以实现如下效果:
1.针对高级别域名分析,减少了域名字符串中无效信息干扰,并且若某高级别域名被识别为目标类别域名,则其能够命中的待检测域名更多,具备较强的泛化能力;
2.结合了域名搜索文本内容,信息量比单一的域名字符串得到极大的丰富,学习的模型可以判断文本是否包含挖矿信息,提高分类准确性和提供事件回溯依据;
3.综合了目标字符命中情况和目标文本描述模型的双重结果进行衡量,减少了目标字符命中的误报情况,输出更为可信的目标域名检测事件结果;
4.增量维护目标地址库,随着确认目标类型的高级别域名的不断添加,命中的概率也逐渐提高,可以更快终止目标类型域名的识别过程,提高程序执行效率。
在本公开的一些实施例中,还可以包括一种域名检测系统,该系统可以包括:分布式消息队列系统、流数据计算引擎、模型计算服务器和搜索服务器,其中,分布式消息队列系统,用于传递域名系统流量;流数据计算引擎,用于从分布式消息队列系统中实时读取域名系统流量中待检测域名的高级别域名;以及将高级别域名与目标字符列表进行匹配得到匹配结果;搜索服务器,用于搜索高级别域名的文本数据;模型计算服务器,用于从搜索服务器中获取高级别域名的文本数据;将文本数据输入至训练好的目标文本描述模型,得到待检测域名的文本正例概率;以及流数据计算引擎,根据匹配结果和文本正例概率计算得到待检测域名的分类概率;以及根据分类概率确定待检测域名的预测类别。
本公开实施例的系统部署方案提供了安全可靠、具备可行性的软硬件环境,便于实施,且具备良好的扩展性。
例如图5示出本公开实施例的一种实施域名检测方法的示例性系统部署方案示意图。如图5所示,系统500中可以包括分布式消息队列系统510、流数据计算引擎520、模型计算服务器530、搜索服务器540。
其中,分布式消息队列系统510,用于传递域名系统流量;流数据计算引擎520,用于从分布式消息队列系统中实时读取域名系统流量中待检测域名的高级别域名;以及将高级别域名与目标字符列表进行匹配得到匹配结果;搜索服务器540,用于搜索高级别域名的文本数据;模型计算服务器530,用于从搜索服务器中获取高级别域名的文本数据;将文本数据输入至训练好的目标文本描述模型,得到待检测域名的文本正例概率;以及流数据计算引擎520,根据匹配结果和文本正例概率计算得到待检测域名的分类概率;以及根据分类概率确定待检测域名的预测类别。
其中,分布式消息队列系统510、数据计算引擎520和模型计算服务器130被部署在内网中,通过通信网络相连接,可选的,通信网络是有线网络或无线网络。搜索服务器540被部署在外网中,仅与内网中模型计算服务器进行通信。
在本公开的一些实施例中,分布式消息队列系统510用于传递计算任务,通过流数据计算引擎520对一个或多个分布式消息队列通道传送的数据进行实时域名检测,并输出域名检测结果。可选的,可以使用kafka作为分布式消息队列系统510,并搭配Flink作为流数据计算引擎520。
在本公开的一些实施例中,模型计算服务器130用于训练和计算挖矿文本描述模型。
在本公开的一些实施例中,搜索服务器540用于负责从外网中收集搜索引擎检索结果文本并传送给模型计算服务器530进行训练。
可选的,上述的无线网络或有线网络使用标准通信技术和/或协议。网络通常为因特网、但也可以是任何网络,包括但不限于局域网(Local Area Network,LAN)、城域网(Metropolitan Area Network,MAN)、广域网(Wide Area Network,WAN)、移动、有线或者无线网络、专用网络或者虚拟专用网络的任何组合)。在一些实施例中,使用包括超文本标记语言(Hyper Text Mark-up Language,HTML)、可扩展标记语言(ExtensibleMarkupLanguage,XML)等的技术和/或格式来代表通过网络交换的数据。此外还可以使用诸如安全套接字层(Secure Socket Layer,SSL)、传输层安全(Transport Layer Security,TLS)、虚拟专用网络(Virtual Private Network,VPN)、网际协议安全(InternetProtocolSecurity,IPsec)等常规加密技术来加密所有或者一些链路。在另一些实施例中,还可以使用定制和/或专用数据通信技术取代或者补充上述数据通信技术。
关于上述实施例中的分布式消息队列系统510、流数据计算引擎520、模型计算服务器530、搜索服务器540,其中各个部分执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
综上,本公开实施例的系统在实现上述方法带来的技术效果的基础上,还可以实现如下效果:
1.从分布式消息队列读取原始DNS数据并采用流数据处理形式,做到实时输出事件;
2.部署架构严格分隔了数据与外网的联系,保障功能的前提下提供安全可靠的整体结构。
图6示出本公开实施例中一种域名检测装置的示意图。如图6所示,该域名检测装置600包括:
高级别域名提取模块610,用于提取域名系统流量中待检测域名的高级别域名;匹配模块620,用于将高级别域名与目标字符列表进行匹配得到匹配结果;文本正例计算模块630,用于根据高级别域名,通过文本分类计算得到文本正例概率;分类计算模块640,用于根据匹配结果和文本正例概率计算得到待检测域名的分类概率;以及类别预测模块650,用于根据分类概率确定待检测域名的预测类别。
在本公开的一些实施例中,高级别域名提取模块610,还可以用于按照待检测域名中的点号检测待检测域名的字符段数量;若字符段数量不大于2,则将待检测域名作为高级别域名;若字符段数量大于2,则提取待测域名的一级域名和二级域名作为高级别域名。
在本公开的一些实施例中,文本正例计算模块630,还可以用于从搜索服务器中获取所述高级别域名的文本数据;以及将所述文本数据输入至训练好的所述目标文本描述模型,得到所述待检测域名的所述文本正例概率。
在本公开的一些实施例中,装置600还可以包括模型训练模块,该模型训练模块用于从搜索服务器中获取目标类别域名的文本数据和非目标类别域名的文本数据;将目标类别域名的文本数据标记为正例和非目标类别域名的文本数据标记为反例;以及使用标记为正例的文本数据和反例的文本数据,对基于变换器的双向编码器表征模型进行训练得到目标文本描述模型。
在本公开的一些实施例中,分类计算模块640,还可以用于根据分类概率f(m,p)和匹配结果m∈{0,1}以及文本正例概率p∈[0,1]的关系得到分类概率,该关系可以表示为公式(3)。
在本公开的一些实施例中,匹配模块620,还可以用于将高级别域名与目标地址库进行匹配,若高级别域名与目标地址库中的目标类别域名匹配成功,则将待检测域名的类别确认为目标类别;将高级别域名与白名单进行匹配,若高级别域名与白名单匹配成功,则将待检测域名的类别确认为非目标类别;若待检测域名与目标地址库和白名单均匹配失败,则将高级别域名与目标字符列表进行匹配得到匹配结果。
在本公开的一些实施例中,装置600还可以包括:增量维护模块,用于执行若预测类别为目标类别域名,则将待检测域名添加到目标地址库;若预测类别为非目标类别域名,则将待检测域名添加到白名单。
关于上述实施例中的域名检测装置600,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
所属技术领域的技术人员能够理解,本公开的各个方面可以实现为系统、方法或程序产品。因此,本公开的各个方面可以具体实现为以下形式,即:完全的硬件实施方式、完全的软件实施方式(包括固件、微代码等),或硬件和软件方面结合的实施方式,这里可以统称为“电路”、“模块”或“系统”。
下面参照图7来描述根据本公开的这种实施方式的电子设备700。图7显示的电子设备700仅仅是一个示例,不应对本公开实施例的功能和使用范围带来任何限制。
如图7所示,电子设备700以通用计算设备的形式表现。电子设备700的组件可以包括但不限于:上述至少一个处理单元710、上述至少一个存储单元720、连接不同系统组件(包括存储单元720和处理单元710)的总线730。
其中,所述存储单元存储有程序代码,所述程序代码可以被所述处理单元710执行,使得所述处理单元710执行本说明书上述“示例性方法”部分中描述的根据本公开各种示例性实施方式的步骤。例如,所述处理单元710可以执行如图1中所示的方法100包括:步骤S110,提取域名系统流量中待检测域名的高级别域名;步骤S120,将高级别域名与目标字符列表进行匹配得到匹配结果;步骤S130,根据高级别域名,通过文本分类计算得到文本正例概率;步骤S140,根据匹配结果和文本正例概率计算得到待检测域名的分类概率;以及步骤S150,根据分类概率确定待检测域名的预测类别。
存储单元720可以包括易失性存储单元形式的可读介质,例如随机存取存储单元(RAM)7201和/或高速缓存存储单元7202,还可以进一步包括只读存储单元(ROM)7203。
存储单元720还可以包括具有一组(至少一个)程序模块7205的程序/实用工具7204,这样的程序模块7205包括但不限于:操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。
总线730可以为表示几类总线结构中的一种或多种,包括存储单元总线或者存储单元控制器、外围总线、图形加速端口、处理单元或者使用多种总线结构中的任意总线结构的局域总线。
电子设备700也可以与一个或多个外部设备(例如键盘、指向设备、蓝牙设备等)通信,还可与一个或者多个使得用户能与该电子设备700交互的设备通信,和/或与使得该电子设备700能与一个或多个其它计算设备进行通信的任何设备(例如路由器、调制解调器等等)通信。这种通信可以通过输入/输出(I/O)接口750进行。并且,电子设备700还可以通过网络适配器760与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信。如图所示,网络适配器760通过总线730与电子设备700的其它模块通信。应当明白,尽管图中未示出,可以结合电子设备700使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、RAID系统、磁带驱动器以及数据备份存储系统等。
在本公开的示例性实施例中,还提供了一种计算机可读存储介质,其上存储有能够实现本说明书上述方法的程序产品。在一些可能的实施方式中,本公开的各个方面还可以实现为一种程序产品的形式,其包括程序代码,当所述程序产品在终端设备上运行时,所述程序代码用于使所述终端设备执行本说明书上述“示例性方法”部分中描述的根据本公开各种示例性实施方式的步骤。
根据本公开的实施方式的用于实现上述方法的程序产品,其可以采用便携式紧凑盘只读存储器(CD-ROM)并包括程序代码,并可以在终端设备,例如个人电脑上运行。然而,本公开的程序产品不限于此,在本文件中,可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
所述程序产品可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以为但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。
计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了可读程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。可读信号介质还可以是可读存储介质以外的任何可读介质,该可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。
可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于无线、有线、光缆、RF等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言的任意组合来编写用于执行本公开操作的程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如Java、C++等,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。在涉及远程计算设备的情形中,远程计算设备可以通过任意种类的网络,包括局域网(LAN)或广域网(WAN),连接到用户计算设备,或者,可以连接到外部计算设备(例如利用因特网服务提供商来通过因特网连接)。
根据本公开的一个方面,提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述实施例的各种可选实现方式中提供的方法。
应当注意,尽管在上文详细描述中提及了用于动作执行的设备的若干模块或者单元,但是这种划分并非强制性的。实际上,根据本公开的实施方式,上文描述的两个或更多模块或者单元的特征和功能可以在一个模块或者单元中具体化。反之,上文描述的一个模块或者单元的特征和功能可以进一步划分为由多个模块或者单元来具体化。
此外,尽管在附图中以特定顺序描述了本公开中方法的各个步骤,但是,这并非要求或者暗示必须按照该特定顺序来执行这些步骤,或是必须执行全部所示的步骤才能实现期望的结果。附加的或备选的,可以省略某些步骤,将多个步骤合并为一个步骤执行,以及/或者将一个步骤分解为多个步骤执行等。
通过以上的实施方式的描述,本领域的技术人员易于理解,这里描述的示例实施方式可以通过软件实现,也可以通过软件结合必要的硬件的方式来实现。因此,根据本公开实施方式的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等)中或网络上,包括若干指令以使得一台计算设备(可以是个人计算机、服务器、移动终端、或者网络设备等)执行根据本公开实施方式的方法。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其它实施方案。本申请旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由所附的权利要求指出。
Claims (11)
1.一种域名检测方法,其特征在于,所述方法包括:
提取域名系统流量中待检测域名的高级别域名;
将所述高级别域名与目标字符列表进行匹配得到匹配结果;
根据所述高级别域名,通过文本分类计算得到文本正例概率;
根据所述匹配结果和所述文本正例概率计算得到所述待检测域名的分类概率;以及
根据所述分类概率确定所述待检测域名的预测类别。
2.根据权利要求1所述的域名检测方法,其特征在于,提取域名系统流量中待检测域名的高级别域名的步骤包括:
按照所述待检测域名中的点号检测所述待检测域名的字符段数量;
若所述字符段数量不大于2,则将所述待检测域名作为高级别域名;
若所述字符段数量大于2,则提取所述待测域名的一级域名和二级域名作为所述高级别域名。
3.根据权利要求2所述的域名检测方法,其特征在于,根据所述高级别域名,通过文本分类计算得到文本正例概率的步骤包括:
从搜索服务器中获取所述高级别域名的文本数据;以及
将所述文本数据输入至训练好的所述目标文本描述模型,得到所述待检测域名的所述文本正例概率。
4.根据权利要求3所述的域名检测方法,其特征在于,将所述文本数据输入至训练好的所述目标文本描述模型,得到所述待检测域名的所述文本正例概率的步骤之前包括:
从所述搜索服务器中获取目标类别域名的文本数据和非目标类别域名的文本数据;
将所述目标类别域名的文本数据标记为正例和非目标类别域名的文本数据标记为反例;以及
使用标记为所述正例的文本数据和所述反例的文本数据,对基于变换器的双向编码器表征模型进行训练得到目标文本描述模型。
6.根据权利要求5所述的域名检测方法,其特征在于,将所述高级别域名与目标字符列表进行匹配得到匹配结果的步骤包括:
将所述高级别域名与目标地址库进行匹配,若所述高级别域名与所述目标地址库中的目标类别域名匹配成功,则将所述待检测域名的类别确认为目标类别;
将所述高级别域名与白名单进行匹配,若所述高级别域名与所述白名单匹配成功,则将所述待检测域名的类别确认为非目标类别;
若所述待检测域名与所述目标地址库和白名单均匹配失败,则将所述高级别域名与目标字符列表进行匹配得到匹配结果。
7.根据权利要求6所述的域名检测方法,其特征在于,根据所述分类概率确定待检测域名的预测类别的步骤之后包括:
若预测类别为目标类别域名,则将所述待检测域名添加到所述目标地址库;
若预测类别为非目标类别域名,则将所述待检测域名添加到所述白名单。
8.一种域名检测系统,其特征在于,所述系统包括:分布式消息队列系统、流数据计算引擎、模型计算服务器和搜索服务器,其中,
所述分布式消息队列系统,用于传递域名系统流量;
所述流数据计算引擎,用于从所述分布式消息队列系统中实时读取所述域名系统流量中待检测域名的高级别域名;以及将所述高级别域名与目标字符列表进行匹配得到匹配结果;
所述搜索服务器,用于搜索所述高级别域名的文本数据;
所述模型计算服务器,用于从搜索服务器中获取所述高级别域名的文本数据;将所述文本数据输入至训练好的所述目标文本描述模型,得到所述待检测域名的所述文本正例概率;以及
所述流数据计算引擎,根据所述匹配结果和所述文本正例概率计算得到所述待检测域名的分类概率;以及根据所述分类概率确定待检测域名的预测类别。
9.一种域名检测装置,其特征在于,所述装置包括:
高级别域名提取模块,用于提取域名系统流量中待检测域名的高级别域名;
匹配模块,用于将所述高级别域名与目标字符列表进行匹配得到匹配结果;
文本正例计算模块,用于根据所述高级别域名,通过文本分类计算得到文本正例概率;
分类计算模块,用于根据所述匹配结果和所述文本正例概率计算得到所述待检测域名的分类概率;以及
类别预测模块,用于根据所述分类概率确定所述待检测域名的预测类别。
10.一种电子设备,其特征在于,包括:
处理器;以及
存储器,用于存储所述处理器的可执行指令;
其中,所述处理器配置为经由执行所述可执行指令来执行权利要求1~7中任意一项所述的域名检测方法。
11.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1~7中任意一项所述的域名检测方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211035333.9A CN115333850B (zh) | 2022-08-26 | 2022-08-26 | 域名检测方法、系统及相关设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211035333.9A CN115333850B (zh) | 2022-08-26 | 2022-08-26 | 域名检测方法、系统及相关设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115333850A true CN115333850A (zh) | 2022-11-11 |
CN115333850B CN115333850B (zh) | 2024-04-23 |
Family
ID=83928397
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211035333.9A Active CN115333850B (zh) | 2022-08-26 | 2022-08-26 | 域名检测方法、系统及相关设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115333850B (zh) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108156174A (zh) * | 2018-01-15 | 2018-06-12 | 深圳市联软科技股份有限公司 | 基于c&c域名分析的僵尸网络检测方法、装置、设备及介质 |
CN111147459A (zh) * | 2019-12-12 | 2020-05-12 | 北京网思科平科技有限公司 | 一种基于dns请求数据的c&c域名检测方法及装置 |
CN114818689A (zh) * | 2022-05-25 | 2022-07-29 | 杭州安恒信息安全技术有限公司 | 一种域名检测方法、装置、设备、存储介质 |
-
2022
- 2022-08-26 CN CN202211035333.9A patent/CN115333850B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108156174A (zh) * | 2018-01-15 | 2018-06-12 | 深圳市联软科技股份有限公司 | 基于c&c域名分析的僵尸网络检测方法、装置、设备及介质 |
WO2019136953A1 (zh) * | 2018-01-15 | 2019-07-18 | 深圳市联软科技股份有限公司 | 基于c&c域名分析的僵尸网络检测方法、装置、设备及介质 |
CN111147459A (zh) * | 2019-12-12 | 2020-05-12 | 北京网思科平科技有限公司 | 一种基于dns请求数据的c&c域名检测方法及装置 |
CN114818689A (zh) * | 2022-05-25 | 2022-07-29 | 杭州安恒信息安全技术有限公司 | 一种域名检测方法、装置、设备、存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN115333850B (zh) | 2024-04-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108667816B (zh) | 一种网络异常的检测定位方法及系统 | |
Tang et al. | Zerowall: Detecting zero-day web attacks through encoder-decoder recurrent neural networks | |
CN105072089B (zh) | 一种web恶意扫描行为异常检测方法与系统 | |
CN110175851B (zh) | 一种作弊行为检测方法及装置 | |
CN109831460B (zh) | 一种基于协同训练的Web攻击检测方法 | |
CN111600919B (zh) | 智能网络应用防护系统模型的构建方法和装置 | |
CN107451476A (zh) | 基于云平台的网页后门检测方法、系统、设备及存储介质 | |
CN110765459A (zh) | 一种恶意脚本检测方法、装置和存储介质 | |
CN112989348B (zh) | 攻击检测方法、模型训练方法、装置、服务器及存储介质 | |
CN109104421B (zh) | 一种网站内容篡改检测方法、装置、设备及可读存储介质 | |
CN114338195A (zh) | 基于改进孤立森林算法的web流量异常检测方法及装置 | |
CN114357190A (zh) | 一种数据检测方法、装置、电子设备及存储介质 | |
CN115314291A (zh) | 模型训练方法及组件,安全检测方法及组件 | |
CN115883218A (zh) | 基于多模态数据模型的复合攻击链补全方法、系统及介质 | |
CN117240632B (zh) | 一种基于知识图谱的攻击检测方法和系统 | |
CN114492576A (zh) | 一种异常用户检测方法、系统、存储介质及电子设备 | |
CN112817877A (zh) | 异常脚本检测方法、装置、计算机设备和存储介质 | |
CN117608889A (zh) | 基于日志语义的异常检测方法以及相关设备 | |
CN110688558B (zh) | 网页搜索的方法、装置、电子设备和存储介质 | |
CN115333850B (zh) | 域名检测方法、系统及相关设备 | |
KR102483004B1 (ko) | 유해 url 탐지 방법 | |
CN116841779A (zh) | 异常日志检测方法、装置、电子设备和可读存储介质 | |
Setianto et al. | Gpt-2c: A gpt-2 parser for cowrie honeypot logs | |
CN115964701A (zh) | 应用安全检测方法、装置、存储介质及电子设备 | |
CN115344563A (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 |