CN114006709A - 一种基于主动和被动探测的恶意域名服务器检测方法 - Google Patents

一种基于主动和被动探测的恶意域名服务器检测方法 Download PDF

Info

Publication number
CN114006709A
CN114006709A CN202010687920.0A CN202010687920A CN114006709A CN 114006709 A CN114006709 A CN 114006709A CN 202010687920 A CN202010687920 A CN 202010687920A CN 114006709 A CN114006709 A CN 114006709A
Authority
CN
China
Prior art keywords
domain name
name
active
malicious
feature
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
Application number
CN202010687920.0A
Other languages
English (en)
Other versions
CN114006709B (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.)
Sichuan University
Original Assignee
Sichuan University
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 Sichuan University filed Critical Sichuan University
Priority to CN202010687920.0A priority Critical patent/CN114006709B/zh
Publication of CN114006709A publication Critical patent/CN114006709A/zh
Application granted granted Critical
Publication of CN114006709B publication Critical patent/CN114006709B/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
    • 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
    • H04L63/1416Event detection, e.g. attack signature detection

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明是一种基于主动和被动探测的恶意域名服务器检测方法,核心是基于主动和被动探测联动起来利用机器学习来检测恶意的域名服务器。本发明方法首先由数据采集和处理层收集良性和恶意的DNS数据流量样本,并基于一定时间窗口以(通信IP组,目的端口,域名)方式提流。接着由主动和被动探测方法分别提取基于流的特征和基于域名服务器的特征,其中域名服务器是由相应流锁定的。然后经由模型训练层的随机森林算法训练出恶意域名服务器分类器。最后为在线检测层嗅探数据提流,由主动和被动模块联动提取特征,然后将流输入检测器得到最终的分类结果。本发明可以准确地寻找到恶意的域名服务器,通过主动和被动探测方法的联动有效地增强了检测效果。

Description

一种基于主动和被动探测的恶意域名服务器检测方法
技术领域
本发明属于网络安全技术领域,是一种基于主动和被动探测的恶意域名服务器检测方法。
背景技术
在信息时代,网络技术发展愈来愈迅速,人们的生活、工作和学习已经与网络世界紧密相连起来。随之而来的,由利益驱动的网络安全事件层出不穷,各类恶意活动日益猖獗,对人们的隐私、财产以及安全都构成了严重的威胁。尤其近年,依赖于域名系统实施的恶意活动的现象越来越明显,因此相应的检测技术就显得格外的重要。域名系统(DNS)是目前互联网上最为关键的基础设施,大部分的网络活动都依赖于域名解析服务。域名解析服务是将较难记忆的IP地址映射转换为易于理解记忆的域名,使在互联网中更加便捷地访问各种网络资源。域名系统确实是有着良好地系统性能,但是作为一个开放的系统存在着诸多的安全问题和隐患。如今域名查询过程基本都是迭代查询,即首先由主机询问本地域名服务器,若本地域名服务器有缓存,则立即返回。否则本地域名服务器就以DNS客户的身份,基于查询的域名依次一级一级从根域名服务器开始递归查询,直到最终的域名服务器返回主机名对应的IP地址。
因为DNS服务的重要性,通常情况下防火墙都是配置为允许DNS服务所使用的UDP53号端口上所有的数据包,即并不会对DNS流量做过多的阻拦和控制,并且主机端一般都会无条件信任域名服务器返回的响应信息。实际中,黑客常常会利用这一点来实施自己的恶意活动。例如,僵尸网络会将自己的C&C伪装为正常的域名服务器,建立起与被感染主机间的DNS隧道,通过DNS请求响应数据来管理C2通信,常常被用于发起分布式拒绝服务攻击或大量发送垃圾邮件等恶意攻击活动。如果能阻断与恶意域名服务器的数据通信,就可以十分有效地提高组织系统内的网络安全防护。那么恶意域名服务器的检测方法就显得十分重要。
现有的检测方法大部分仅仅针对域名本身的恶意检测,通常依赖于黑白名单的技术方法,这样的方法往往有着较高的误报和漏报率,在不同的环境和需求下自适应性会很差。然而,结合主动和被动探测的方式对恶意域名服务器进行检测,组织系统内部就可以通过阻断所有与被识别为恶意域名服务器相关的数据通信,从而达到十分有效的安全防护。
发明内容
本发明是一种针对恶意域名服务器的检测技术,结合主动和被动探测方法,利用随机森林机器学习方法准确有效地识别出恶意的域名服务器。
区别于传统的基于黑白名单的检测方法,本发明创新性地提出了结合主动和被动探测方法,从而提取出更加全面的相关特征,进而训练出优异的检测器。
为了达到上述目的,本发明所采取的技术方案如下。
首先本发明的技术框架包含了数据采集和处理层、模型训练层和在线检测层三个部分。其中数据采集和处理层的工作主要为三部分,第一是收集有着丰富多样性的DNS数据流量,包含了恶意和良性的DNS流量;第二是基于一定的时间窗口以(通信IP组,目的端口,域名)的聚合方式对DNS数据提流;第三是分别基于主动和被动角度提取出相应特征,并且为流打上标签,最终在这一阶段输出一个用于机器学习模型的训练集。
其中,提流操作中的通信IP组指的是互相通信的一组IP,不区分源或目的主机;目的端口则是DNS协议所使用的UDP53端口;域名(除去主机名)则是从TLD(顶级域名)往左进行最长标签匹配的方式进行聚合,并且标签个数最小必须大于等于2。通过域名匹配聚合德操作进而也锁定了欲检测的域名服务器。
此阶段的特征提取部分是要结合主动和被动探测方法。主动探测方法就是基于主机与DNS服务器之间主动发起的DNS通信的流量数据来提取特征,主要是针对所提取流内的DNS查询响应包的字段值和一些统计特性。
而被动探测方法,也就是与被动DNS相关的方法。被动DNS最初由Florian Weimer于2004年发明,旨在对抗恶意软件。简单来说,递归域名服务器会响应其接收到其他的来自其他域名服务器的请求,对响应进行记录并将日志数据复制到中央数据库当中。在本发明中,通过使用WHOIS历史记录关联来自被动DNS记录数据库的数据。从这一部分就可以收集提取出关于域名服务器(提流时通过域名锁定的域名服务器)的相关特征,例如域名注册时间、域名的生命周期以及是否是使用的动态域名服务等。很显然,这些特征对于恶意域名服务器的检测也是至关重要的。
接着是模型训练层,从上一个数据采集和处理模块中得到训练集,然后利用随机森林训练出一个优异的分类器。此分类器也就是最后恶意域名服务器在线检测层的核心部分,同时此模块以在线模式基于一定时间窗口提取DNS流,并且通过主动和被动探测方法提取特征,再输入进检测器,最终由检测器给出此流确定的域名服务器是恶意还是良性的最终识别结果。
附图说明
从下面结合附图对本发明做更进一步的详细介绍。
图1 为本发明的技术框架图。
图2 为数据采集和处理层详细流程图。
图3 为主动部分的特征提取详情。
图4 为被动部分的特征提取详情。
图5为模型训练层详细流程图。
图6 为在线检测层详细流程图。
具体实施方式
本发明主要是用于检测恶意域名服务器,下面结合附图对本发明的技术框架进行说明。本发明旨在提供一种结合主动和被动探测的检测方法,利用随机森林机器学习方法准确有效地识别出恶意的域名服务器。
如图1所示的技术框架图,本发明采用分层的模型框架,每一层的输出是下一层的输入。数据采集和处理层的输入为收集的良性和恶意的数据流量样本,经过提流、主被动方面的特征提取和加标签的操作之后,生成训练集。此训练集就作为模型训练层的输入,经过随机森林算法进行建模,训练出一个恶意域名服务器的二分类器。最后检测层就在线嗅探数据、提流和相关特征,再利用此检测器得出最终识别结果。下面对每一层做详细说明。
如图2所示为数据采集和处理层的详细流程图。首先是数据样本的收集,为了训练出高性能的模型,所以需要尽可能地丰富数据样本的多样性。比如在恶意样本的收集中,可以收集多种DNS隧道工具或者利用域名服务器通信的不同恶意软件所产生的恶意流量。因为每种恶意活动类型在对DNS请求响应数据的利用细节上都会有所不同,那么相关特征的重要性也会略有不同。显然为了降低假阴性,数据样本的多样性是十分重要的。
然后,基于一定的时间窗口(10~20秒)对收集的数据样本进行提流。流的定义为一个三元组(通信IP组,目的端口,域名),其中通信IP组即互相通信的两个IP,不区分源和目的主机。即提取的流为双向流,而非单向流。目的端口则是指定为DNS协议使用的固定端口UDP53号。域名部分,则是除去查询域名的主机号之后,从TLD(顶级域名)向左按最长标签进行匹配。当然匹配的标签个数最小应该是大于等于2的,即仅仅TLD(顶级域名)相同是不予匹配的。同时,通过域名匹配聚合的操作也锁定了欲检测的域名服务器。
接着是特征提取部分,此处分为主动和被动探测方法。总共特征有28个,其中“是否”类型的特征的值为(0,1),“是”则值为1,“否”则值为“0”。
主动探测方法是基于主机与DNS服务器之间主动发起的DNS通信的流量数据来提取特征,主要是针对所提取流内的DNS查询响应包的字段值和一些统计特性。如图3总共有19个特征。
而被动部分的特征,主要是通过使用WHOIS历史记录关联来自被动DNS记录数据库的数据,然后收集提取出关于域名服务器(提流时通过域名锁定的域名服务器)的相关特征。如图4总共有9个特征。
特征提取结束之后,给每条流加上标签生成最终的训练集。然后就是将此训练集输入进模型训练层,进行下一阶段的工作。如图5为模型训练层的详细流程,这一层的工作只需要将训练集输入进随机森林中进行训练,得出一个优异性能的域名服务器的检测器即可。
本发明技术框架的最后一层就是在线检测层,如图6即这一层的详细工作流程。此层需要在线嗅探数据,接着按照(通信IP组,目的端口,域名)的聚合方式以10~20秒的时间窗口从网络数据中提流。具体时间窗口的大小可以根据实际情况而定。然后同数据采集和处理层分别进行主动和被动方式的特征提取,也是相同的一共28个特征。之后将处理好的数据输入进检测器中进行检测,即可识别出此流锁定的域名服务器是否为恶意的。

Claims (6)

1.一种基于主动和被动探测的恶意域名服务器检测方法,其特征在于,所述方法包括以下步骤:
A、收集到足够的恶意和良性的数据样本之后基于一定的时间窗口进行提流;
B、根据主动探测方法对数据流提取特征;
C、根据被动探测方法对数据流提取特征;
D、生成训练集,利用随机森林算法进行训练,最终得出恶意域名服务器的检测器;
E、在线嗅探数据提流,提取主动和被动方面的特征,然后由训练出的恶意域名服务器检测器进行识别。
2.如权利要求1所述的一种基于主动和被动探测的恶意域名服务器检测方法,其特征在于,所述步骤A进一步包括如下步骤:
A1、尽可能收集多样的恶意和良性的样本数据,然后基于一定的时间窗口(10~20秒)对收集的数据样本进行提流,具体依据(通信IP组,目的端口,域名)三元组信息来进行这个操作;其中通信IP组即互相通信的两个IP,不区分源和目的主机;目的端口是DNS协议使用的UDP53端口号;域名部分,除去查询域名的主机号之后,从TLD(顶级域名)向左按最长标签进行匹配,其中匹配的标签数量最小应该是大于等于2的。
3.如权利要求1所述的一种基于主动和被动探测的恶意域名服务器检测方法,其特征在于,所述步骤B进一步包括如下步骤:
B1、通过主动探测方法提取流内数据包的相关特征,总共有19个特征;
B2、第1个特征名为subdomain length,即查询域名在除去了顶级域名之后的子域名长度;
B3、第2个特征名为subdomain count,即查询域名的标签数量;
B4、第3个特征名为max subdomain length,即查询域名的最大标签长度;
B5、第4个特征名为average subdomain length,即查询域名的平均标签长度;
B6、第5个特征名为subdomain entropy,即查询域名的字符熵,不包含顶级域名;
B7、第6个特征名为digital number count in domain,即查询域名中数字个数的平均值;
B8、第7个特征名为legal DNS proxy server,即是否为合法代理DNS服务器,是则为1,否则为0;
B9、第8个特征名为atypical record types count,即非典型记录类型的个数,其中非典型记录类型包括了TXT、PTR、CNAME等,若没有则为0;
B10、第9个特征名为atypical record types proportion,即非典型记录类型在整个流中的占比,若无则为0;
B11、第10个特征名为response-packets average TTL,即流中响应包的TTL的平均值;
B12、第11个特征名为request-packets count,即流中请求包的个数;
B13、第12个特征名为response-packets count,即流中响应包的个数;
B14、第13个特征名为request-packets average size,即流中请求包的平均大小值;
B15、第14个特征名为response-packets average size,即流中响应包的平均大小值;
B16、第15个特征名为max average time interval between two consecutiverequest-packets,即流内两个连续请求包时间间隔最大平均值,若仅一个包则此值为0;
B17、第16个特征名为max standard deviation between two consecutive request-packets,即流内两个连续请求包时间间隔最大标准差,若仅一个包则此值为0;
B18、第17个特征名为NxDomain-response count,即流内NxDomain响应个数;
B19、第18个特征名为average RR records count in response-packets,即流内响应包中RR记录的平均个数;
B20、第19个特征名为special IP addresses count in response-packets,即流内响应包中返回的IP地址为特殊地址(如回环地址)的个数。
4.如权利要求1所述的一种基于主动和被动探测的恶意域名服务器检测方法,其特征在于,所述步骤C进一步包括如下步骤:
C1、通过被动探测方法提取流内数据包的相关特征,总共有9个特征;
C2、第1个特征名为new domain,即域名是否为新域名,若是则值为1,否则为0;
C3、第2个特征名为abnormal location,即域名服务器的地理位置是否为异常位置,若是则值为1,否则为0;而具体关于地理位置是否为异常的判断可根据组织内部事先定义,例如国外等地理位置;
C4、第3个特征名为lifecycle,即域名的生命周期,域名注册时间和到期时间之间的差值;
C5、第4个特征名为Completeness of registration information,即域名注册的身份信息的完善程度,按注册信息完善程度百分比来计算此值;
C6、第5个特征名为Registered identity,即域名注册身份是公司还是个人,若是公司则值为1,否则为0;
C7、第6个特征名为valid registered address information,即域名注册地址信息是否真实,若是则值为1,否则为0;
C8、第7个特征名为dynamic domain name service,即是否使用的动态域名服务提供商的服务,若是则值为1,否则为0;
C9、第8个特征名为valid corresponding information,即域名注册人是否留下有效的电子邮件地址等联系方式,若是则值为1,否则为0;
C10、第9个特征名为ip count,即域名服务器对应的不重复的IP的个数。
5.如权利要求1所述的一种基于主动和被动探测的恶意域名服务器检测方法,其特征在于,所述步骤D进一步包括如下步骤:
D1、对收集的数据进行了提流、提特征和加标签的操作之后,将由此生成的训练集输入进随机森林训练出一个恶意域名服务器的检测器。
6.如权利要求1所述的一种基于主动和被动探测的恶意域名服务器检测方法,其特征在于,所述步骤E进一步包括如下步骤:
E1、在线嗅探数据,按照(通信IP组,目的端口,域名)的聚合方式以10~20秒的时间窗口从网络数据中提流;具体时间窗口的大小可以根据实际情况而定;
E2、然后分别进行主动和被动方式的特征提取,同上面所述一共28个特征;
E3、将处理好的数据输入进检测器中进行检测,即可识别出此流锁定的域名服务器是否为恶意的。
CN202010687920.0A 2020-07-16 2020-07-16 一种基于主动和被动探测的恶意域名服务器检测方法 Active CN114006709B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010687920.0A CN114006709B (zh) 2020-07-16 2020-07-16 一种基于主动和被动探测的恶意域名服务器检测方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010687920.0A CN114006709B (zh) 2020-07-16 2020-07-16 一种基于主动和被动探测的恶意域名服务器检测方法

Publications (2)

Publication Number Publication Date
CN114006709A true CN114006709A (zh) 2022-02-01
CN114006709B CN114006709B (zh) 2022-12-16

Family

ID=79920207

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010687920.0A Active CN114006709B (zh) 2020-07-16 2020-07-16 一种基于主动和被动探测的恶意域名服务器检测方法

Country Status (1)

Country Link
CN (1) CN114006709B (zh)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105024969A (zh) * 2014-04-17 2015-11-04 北京启明星辰信息安全技术有限公司 一种实现恶意域名识别的方法及装置
CN105025025A (zh) * 2015-07-22 2015-11-04 国家计算机网络与信息安全管理中心 一种基于云平台的域名主动检测方法和系统
EP3223499A1 (en) * 2016-03-25 2017-09-27 VeriSign, Inc. Detecting and remediating highly vulnerable domain names using passive dns measurements
CN109714335A (zh) * 2018-12-26 2019-05-03 北京天融信网络安全技术有限公司 一种信息检测方法及信息检测装置
US20190266200A1 (en) * 2018-02-26 2019-08-29 AirDXP, Inc. Systems and methods for redirecting to track user identifiers across different websites

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105024969A (zh) * 2014-04-17 2015-11-04 北京启明星辰信息安全技术有限公司 一种实现恶意域名识别的方法及装置
CN105025025A (zh) * 2015-07-22 2015-11-04 国家计算机网络与信息安全管理中心 一种基于云平台的域名主动检测方法和系统
EP3223499A1 (en) * 2016-03-25 2017-09-27 VeriSign, Inc. Detecting and remediating highly vulnerable domain names using passive dns measurements
US20190266200A1 (en) * 2018-02-26 2019-08-29 AirDXP, Inc. Systems and methods for redirecting to track user identifiers across different websites
CN109714335A (zh) * 2018-12-26 2019-05-03 北京天融信网络安全技术有限公司 一种信息检测方法及信息检测装置

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
UPENDRA PRATAP SINGH等: "Improved Coupled Autoencoder based Zero Shot", 《IEEE》 *
赵菁菁: "域名信息分析子系统的设计与实现", 《中国优秀硕士学位论文全文数据库》 *

Also Published As

Publication number Publication date
CN114006709B (zh) 2022-12-16

Similar Documents

Publication Publication Date Title
US10740363B2 (en) Domain classification based on domain name system (DNS) traffic
US10356106B2 (en) Detecting anomaly action within a computer network
CA2467869C (en) Origination/destination features and lists for spam prevention
CN101848197B (zh) 检测方法、装置和具有检测功能的网络
EP1877904B1 (en) Detecting unwanted electronic mail messages based on probabilistic analysis of referenced resources
CN107124434B (zh) 一种dns恶意攻击流量的发现方法及系统
CN111200605B (zh) 一种基于Handle系统的恶意标识防御方法及系统
US20150350229A1 (en) Network Threat Detection and Mitigation Using a Domain Name Service and Network Transaction Data
CN103297433B (zh) 基于网络数据流的http僵尸网络检测方法及系统
CN111683097B (zh) 一种基于两级架构的云网络流量监控系统
CN107404465A (zh) 网络数据分析方法及服务器
Esquivel et al. On the effectiveness of IP reputation for spam filtering
EP3223495A1 (en) Detecting an anomalous activity within a computer network
CN104618351A (zh) 一种识别dns欺骗攻击包及检测dns欺骗攻击的方法
CN107276978B (zh) 一种基于主机指纹的匿名网络隐藏服务溯源方法
CN110177123B (zh) 基于dns映射关联图的僵尸网络检测方法
CN105704259B (zh) 一种域名权威服务来源ip识别方法和系统
CN112333185A (zh) 一种基于dns解析的域名阴影检测方法和装置
Hu et al. Measuring ipv6 dns reconnaissance attacks and preventing them using dns guard
CN109120733B (zh) 一种利用dns进行通信的检测方法
CN114006709B (zh) 一种基于主动和被动探测的恶意域名服务器检测方法
Wickramasinghe et al. Uncovering ip address hosting types behind malicious websites
Singh et al. TI-16 DNS labeled dataset for detecting botnets
Arjmandpanah‐Kalat et al. Design and performance analysis of an efficient single flow IP traceback technique in the AS level
CN115643087B (zh) 一种基于编码特征与统计行为特征融合的dns隧道检测方法

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