CN111371917B - 一种域名检测方法及*** - Google Patents
一种域名检测方法及*** Download PDFInfo
- Publication number
- CN111371917B CN111371917B CN202010127131.1A CN202010127131A CN111371917B CN 111371917 B CN111371917 B CN 111371917B CN 202010127131 A CN202010127131 A CN 202010127131A CN 111371917 B CN111371917 B CN 111371917B
- Authority
- CN
- China
- Prior art keywords
- domain name
- detected
- determining
- score
- response records
- 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
Images
Classifications
-
- 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]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
- G06F18/241—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
- G06F18/2411—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches based on the proximity to a decision surface, e.g. support vector machines
-
- 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/50—Address allocation
- H04L61/5046—Resolving address allocation conflicts; Testing of addresses
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Biology (AREA)
- Evolutionary Computation (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Artificial Intelligence (AREA)
- Life Sciences & Earth Sciences (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明涉及一种域名检测方法及***。方法包括获取待检测的域名;根据所述待检测的域名确定在检测时间内所述待检测的域名在不同时刻的响应记录;根据所述待检测的域名在不同时刻的响应记录确定所述待检测的域名的域名特征;根据所述待检测的域名的域名特征,采用分类模型,确定所述待检测的域名的域名类别。本发明所提供一种域名检测方法及***,提高了域名的检测效率,准确检测出恶意域名。
Description
技术领域
本发明涉及计算机网络安全领域,特别是涉及一种域名检测方法及***。
背景技术
近年来恶意程序的数量呈现逐年递增的趋势,并且越来越高级和复杂。网络入侵,如蠕虫、垃圾邮件、木马、拒绝服务攻击、重要信息窃取等,已成为网络空间巨大的威胁。攻击者常使用域名***(Domain Name System,DNS)技术来隐藏其恶意行为,维护恶意网络自身的健壮,因为DNS在所有网络中都存在,并且通常不会被防火墙过滤。恶意程序在感染了主机后,通常和远程的命令与控制服务器连接,攻击者可以直接控制命令与控制服务器。如APT攻击(Advanced Persistent Threat,高级持续性威胁)、僵尸网络会通过远程的C&C服务器(Command and Control Server,命令与控制服务器)下载最新的恶意程序,或者获取恶意指令;信息窃取等恶意程序会将窃取的信息发送给远程服务器等;垃圾邮件依赖DNS重定向网页。这些恶意程序常通过域名来访问远程服务器,而不用服务器的IP地址,因而域名在恶意行为中发挥着重要的作用。早期的恶意程序采用单个域名,这种方式存在单点失效问题,并且很容易被发现并被取缔。
为了防止单点失效,为了逃避检测,使得恶意网络更健壮,攻击者会采用fast-flux技术。fast-flux技术指成百上千个IP地址对应一个域名,当查询该域名时,返回不同的IP地址,并且IP地址会频繁变化,这些IP地址作为代理,重定向被感染主机和C&C服务器之间的通信。如果某个IP地址被列入黑名单,其它IP地址的服务器仍然可以继续提供服务。通过加入新的IP地址,使得新的服务器很容易加入到恶意网络中。这种动态DNS技术使得入侵检测***很难发现隐藏在代理主机之后的攻击者。
除此之外,恶意程序采用DGA(Domain Generation Algorithm,域名生成算法),每天动态生成大量的域名,其中的一部分域名是被攻击者注册的有效域名,多个域名对应一个命令与控制服务器(C&C服务器)的IP地址。被感染的主机查询大量自动生成的域名,并与其中少数几个建立连接。由于域名的数量很大,并且每天自动生成,因而很好地隐藏了攻击者的恶意网络。
当前恶意程序逃避机制是同时采用fast-flux和DGA技术。每天采用DGA算法自动生成域名,域名对应的IP地址不再是一个,而是多个代理主机的IP地址,这些代理主机负责重定向C&C服务器和被感染主机之间的通信。采用这种逃避机制的恶意程序具有更强的灵活性和健壮性,更难被检测到。
现有的恶意域名检测方法可以分为以下两类:
(1)被动检测方法。通过采集DNS流量,解析并分析DNS查询和响应数据包,来检测恶意域名。
(2)主动检测方法。通过向攻击者的服务器发送数据,分析攻击者的响应结果数据,如响应时间延迟等,来检测恶意域名。
上述两类方法存在着如下局限性:
(1)被动检测方法,需要采集海量的DNS流量,解析DNS数据包,再对解析后的结果进行分析,缺点是计算量较大。
(2)主动检测方法,需要向攻击者的服务器发送数据,缺点是容易引起攻击者的主意,从而被攻击者发现。
可见,现有技术还不能有效的对域名进行检测,不能及时的发现恶意域名。
发明内容
本发明的目的是提供一种域名检测方法及***,提高域名的检测效率,准确检测出恶意域名。
为实现上述目的,本发明提供了如下方案:
一种域名检测方法,包括:
获取待检测的域名;
根据所述待检测的域名确定在检测时间内所述待检测的域名在不同时刻的响应记录;所述响应记录包括域名名称、IP地址和查询时间;
根据所述待检测的域名在不同时刻的响应记录确定所述待检测的域名的域名特征;所述域名特征包括域名分数和域名长度;
根据所述待检测的域名的域名特征,采用分类模型,确定所述待检测的域名的域名类别;所述域名类别包括恶意域名和正常域名;所述分类模型以域名特征为输入,以域名类别为输出。
可选的,所述根据所述待检测的域名在不同时刻的响应记录确定所述待检测的域名的域名特征,具体包括:
根据所述查询时间对所述待检测的域名在不同时刻的响应记录进行排序;
对排序后的响应记录进行编号;
计算相邻编号的IP地址的相似度;
根据所述相似度确定所述域名分数。
可选的,所述根据所述相似度确定所述域名分数,具体包括:
可选的,所述检测时间为10天。
一种域名检测***,包括:
待检测的域名获取模块,用于获取待检测的域名;
响应记录确定模块,用于根据所述待检测的域名确定在检测时间内所述待检测的域名在不同时刻的响应记录;所述响应记录包括域名名称、IP地址和查询时间;
域名特征确定模块,用于根据所述待检测的域名在不同时刻的响应记录确定所述待检测的域名的域名特征;所述域名特征包括域名分数和域名长度;
域名类别确定模块,用于根据所述待检测的域名的域名特征,采用分类模型,确定所述待检测的域名的域名类别;所述域名类别包括恶意域名和正常域名;所述分类模型以域名特征为输入,以域名类别为输出。
可选的,所述域名特征确定模块具体包括:
排序单元,用于根据所述查询时间对所述待检测的域名在不同时刻的响应记录进行排序;
编号单元,用于对排序后的响应记录进行编号;
相似度计算单元,用于计算相邻编号的IP地址的相似度;
域名分数确定单元,用于根据所述相似度确定所述域名分数。
可选的,所述域名分数确定单元具体包括:
可选的,所述检测时间为10天。
根据本发明提供的具体实施例,本发明公开了以下技术效果:
本发明所提供的一种域名检测方法及***,根据在检测时间内所述待检测的域名在不同时刻的响应记录确定出所述待检测的域名的域名特征,再利用以以域名特征为输入,以域名类别为输出的分类模型进行分类,准确、快速的对域名进行检测,提高域名的检测效率,准确检测出恶意域名。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1正常域名和fast-flux域名IP地址波动对比示意图;
图2为本发明所提供的一种域名检测方法流程示意图;
图3为本发明所提供的一种域名检测***结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明的目的是提供一种域名检测方法及***,提高域名的检测效率,准确检测出恶意域名。
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。
采用fast-flux技术的恶意网络,一个域名对应很多不同的IP地址,每个IP地址是一个独立的被感染的主机,这些主机是由普通用户控制,不能保证实时开机并联网,为了保证恶意网络的可用性,攻击者需要持续的感染新的主机,因此客户端在不同时间段内查询fast-flux域名时,返回的IP地址会发生变化,即IP地址有较大的波动。如图1所示为fast-flux域名与正常域名IP地址的波动情况。此外,采用DGA算法自动生成的恶意域名,与正常域名有明显的区别,如恶意域名不考虑可读性,因而域名长度较大。具体的比较如图1所示。
图2为本发明所提供的一种域名检测方法流程示意图,如图2所示,本发明所提供的一种域名检测方法,包括:
S201,获取待检测的域名。
S202,根据所述待检测的域名确定在检测时间内所述待检测的域名在不同时刻的响应记录;所述响应记录包括域名名称、IP地址和查询时间。所述检测时间为10天。时刻间隔为1小时。
具体的步骤为:
(1)记录当前时间Tnow和开始检测时间Tstart为当前时间。
(2)如果Tnow-Tstart≤T,则反复执行步骤(3)-(5)。
(3)向域名***服务器查询每个域名,获取域名***响应记录,并存储每条响应记录,包括域名、IP地址、查询时间Tquery。
(4)更新当前时间Tnow。
(5)计算查询所用的时间Tqduration=Tnow-Tquery,等待Tp-Tqduration时间后,再次更新当前时间Tnow。
待检测时间T结束,获取了所有域名每隔Tp时间对应的域名***响应记录,包括域名、IP地址、查询时间Tquery。
S203,根据所述所述待检测的域名在不同时刻的响应记录确定所述待检测的域名的域名特征;所述域名特征包括域名分数和域名长度。恶意域名分数明显小于正常域名分数。攻击者为了维护其恶意网络,需要不断招募新的被感染主机,因而恶意域名对应的IP地址集合会发生变化,导致相邻时间窗口的IP地址集合相似度较小,进而域名分数也较小。恶意域名的长度小于正常域名。通过DGA算法生成的恶意域名,不会考虑域名的可读性,因而恶意域名长度较长。
根据所述查询时间对所述待检测的域名在不同时刻的响应记录进行排序。
对排序后的响应记录进行编号。
计算相邻编号的IP地址的相似度。
域名长度即域名中字符的个数。
S204,根据所述待检测的域名的域名特征,采用分类模型,确定所述待检测的域名的域名类别;所述域名类别包括恶意域名和正常域名;所述分类模型以域名特征为输入,以域名类别为输出。
通过开源渠道(hphosts、RiskAnalytics、Malc0de数据库)获取恶意域名以及通过白名单域名网站(Alexa网站)获取正常域名,分别确定恶意域名和正常域名的域名特征,训练SVM模型得到的所述分类模型。
本发明所提供的一种域名检测方法具有如下有益效果:
(1)不需要分析DNS流量数据,减少了计算量。
(2)不需要向攻击者的服务器发送数据,避免被攻击者发现从而逃避检测。
(3)本发明不仅可以检测fast-flux恶意域名,还可以检测采用了DGA技术的fast-flux恶意域名。
图3为本发明所提供的一种域名检测***结构示意图,如图3所示,本发明所提供的一种域名检测***,包括:待检测的域名获取模块301、响应记录确定模块302、域名特征确定模块303和域名类别确定模块304。
待检测的域名获取模块301用于获取待检测的域名;
响应记录确定模块302用于根据所述待检测的域名确定在检测时间内所述待检测的域名在不同时刻的响应记录;所述响应记录包括域名名称、IP地址和查询时间;所述检测时间为10天。
域名特征确定模块303用于根据所述所述待检测的域名在不同时刻的响应记录确定所述待检测的域名的域名特征;所述域名特征包括域名分数和域名长度;
域名类别确定模块304用于根据所述待检测的域名的域名特征,采用分类模型,确定所述待检测的域名的域名类别;所述域名类别包括恶意域名和正常域名;所述分类模型以域名特征为输入,以域名类别为输出。
所述域名特征确定模块303具体包括:排序单元、编号单元、相似度计算单元和域名分数确定单元。
排序单元用于根据所述查询时间对所述待检测的域名在不同时刻的响应记录进行排序;
编号单元用于对排序后的响应记录进行编号;
相似度计算单元用于计算相邻编号的IP地址的相似度;
域名分数确定单元用于根据所述相似度确定所述域名分数。
所述所述域名分数确定单元具体包括:域名分数确定子单元。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的***而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
本发明中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处。综上所述,本说明书内容不应理解为对本发明的限制。
Claims (4)
1.一种域名检测方法,其特征在于,包括:
获取待检测的域名;
根据所述待检测的域名确定在检测时间内所述待检测的域名在不同时刻的响应记录;所述响应记录包括域名名称、IP地址和查询时间;
根据所述待检测的域名在不同时刻的响应记录确定所述待检测的域名的域名特征;所述域名特征包括域名分数和域名长度;
根据所述待检测的域名的域名特征,采用分类模型,确定所述待检测的域名的域名类别;所述域名类别包括恶意域名和正常域名;所述分类模型以域名特征为输入,以域名类别为输出;
所述根据所述待检测的域名在不同时刻的响应记录确定所述待检测的域名的域名特征,具体包括:
根据所述查询时间对所述待检测的域名在不同时刻的响应记录进行排序;
对排序后的响应记录进行编号;
计算相邻编号的IP地址的相似度;
根据所述相似度确定所述域名分数;
所述根据所述相似度确定所述域名分数,具体包括:
2.根据权利要求1所述的一种域名检测方法,其特征在于,所述检测时间为10天。
3.一种域名检测***,其特征在于,包括:
待检测的域名获取模块,用于获取待检测的域名;
响应记录确定模块,用于根据所述待检测的域名确定在检测时间内所述待检测的域名在不同时刻的响应记录;所述响应记录包括域名名称、IP地址和查询时间;
域名特征确定模块,用于根据所述待检测的域名在不同时刻的响应记录确定所述待检测的域名的域名特征;所述域名特征包括域名分数和域名长度;
域名类别确定模块,用于根据所述待检测的域名的域名特征,采用分类模型,确定所述待检测的域名的域名类别;所述域名类别包括恶意域名和正常域名;所述分类模型以域名特征为输入,以域名类别为输出;
所述域名特征确定模块具体包括:
排序单元,用于根据所述查询时间对所述待检测的域名在不同时刻的响应记录进行排序;
编号单元,用于对排序后的响应记录进行编号;
相似度计算单元,用于计算相邻编号的IP地址的相似度;
域名分数确定单元,用于根据所述相似度确定所述域名分数;
所述域名分数确定单元具体包括:
4.根据权利要求3所述的一种域名检测***,其特征在于,所述检测时间为10天。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010127131.1A CN111371917B (zh) | 2020-02-28 | 2020-02-28 | 一种域名检测方法及*** |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010127131.1A CN111371917B (zh) | 2020-02-28 | 2020-02-28 | 一种域名检测方法及*** |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111371917A CN111371917A (zh) | 2020-07-03 |
CN111371917B true CN111371917B (zh) | 2022-04-22 |
Family
ID=71211614
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010127131.1A Active CN111371917B (zh) | 2020-02-28 | 2020-02-28 | 一种域名检测方法及*** |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111371917B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112995360B (zh) * | 2021-04-30 | 2021-07-30 | 新华三技术有限公司 | 一种域名检测方法、装置、dga服务设备及存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103152442A (zh) * | 2013-01-31 | 2013-06-12 | 中国科学院计算机网络信息中心 | 一种僵尸网络域名的检测与处理方法及*** |
CN106713371A (zh) * | 2016-12-08 | 2017-05-24 | 中国电子科技网络信息安全有限公司 | 一种基于DNS异常挖掘的Fast Flux僵尸网络检测方法 |
CN110650157A (zh) * | 2019-10-23 | 2020-01-03 | 北京邮电大学 | 基于集成学习的Fast-flux域名检测方法 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10594711B2 (en) * | 2016-11-28 | 2020-03-17 | Microsoft Technology Licensing, Llc. | Detection of botnets using command-and-control access patterns |
CN110266739A (zh) * | 2019-08-06 | 2019-09-20 | 杭州安恒信息技术股份有限公司 | 结合威胁情报的Fast-Flux僵尸网络的检测方法 |
-
2020
- 2020-02-28 CN CN202010127131.1A patent/CN111371917B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103152442A (zh) * | 2013-01-31 | 2013-06-12 | 中国科学院计算机网络信息中心 | 一种僵尸网络域名的检测与处理方法及*** |
CN106713371A (zh) * | 2016-12-08 | 2017-05-24 | 中国电子科技网络信息安全有限公司 | 一种基于DNS异常挖掘的Fast Flux僵尸网络检测方法 |
CN110650157A (zh) * | 2019-10-23 | 2020-01-03 | 北京邮电大学 | 基于集成学习的Fast-flux域名检测方法 |
Non-Patent Citations (1)
Title |
---|
Botnet Detection by Monitoring Group Activities in DNS Traffic;Hyunsang Choi等;《7th IEEE International Conference on Computer and Information Technology (CIT 2007)》;20071121;第715-720页 * |
Also Published As
Publication number | Publication date |
---|---|
CN111371917A (zh) | 2020-07-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Vinayakumar et al. | Scalable framework for cyber threat situational awareness based on domain name systems data analysis | |
Nadler et al. | Detection of malicious and low throughput data exfiltration over the DNS protocol | |
Singh et al. | Issues and challenges in DNS based botnet detection: A survey | |
US10880270B1 (en) | Network firewall for mitigating against persistent low volume attacks | |
US10185761B2 (en) | Domain classification based on domain name system (DNS) traffic | |
US8260914B1 (en) | Detecting DNS fast-flux anomalies | |
CN109474575B (zh) | 一种dns隧道的检测方法及装置 | |
Bilge et al. | EXPOSURE: Finding Malicious Domains Using Passive DNS Analysis. | |
US9503468B1 (en) | Detecting suspicious web traffic from an enterprise network | |
US8516585B2 (en) | System and method for detection of domain-flux botnets and the like | |
US8347394B1 (en) | Detection of downloaded malware using DNS information | |
US9258289B2 (en) | Authentication of IP source addresses | |
Singh et al. | Detecting bot-infected machines using DNS fingerprinting | |
US20140047543A1 (en) | Apparatus and method for detecting http botnet based on densities of web transactions | |
EP3297248B1 (en) | System and method for generating rules for attack detection feedback system | |
US20180034837A1 (en) | Identifying compromised computing devices in a network | |
Niu et al. | Identifying APT malware domain based on mobile DNS logging | |
CN110730175A (zh) | 一种基于威胁情报的僵尸网络检测方法及检测*** | |
CN102685145A (zh) | 一种基于dns数据包的僵尸网络域名发现方法 | |
EP3913888A1 (en) | Detection method for malicious domain name in domain name system and detection device | |
CN111314301A (zh) | 一种基于dns解析的网站访问控制方法及装置 | |
Nguyen et al. | DGA botnet detection using collaborative filtering and density-based clustering | |
CN112839054A (zh) | 一种网络攻击检测方法、装置、设备及介质 | |
Hong et al. | Ctracer: uncover C&C in advanced persistent threats based on scalable framework for enterprise log data | |
Zang et al. | Identifying fast-flux botnet with AGD names at the upper DNS hierarchy |
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 |