CN115412357B - 异常设备检测方法、装置、电子设备和存储介质 - Google Patents
异常设备检测方法、装置、电子设备和存储介质 Download PDFInfo
- Publication number
- CN115412357B CN115412357B CN202211072762.3A CN202211072762A CN115412357B CN 115412357 B CN115412357 B CN 115412357B CN 202211072762 A CN202211072762 A CN 202211072762A CN 115412357 B CN115412357 B CN 115412357B
- Authority
- CN
- China
- Prior art keywords
- query
- dns
- information
- abnormal
- dns query
- 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
- 230000002159 abnormal effect Effects 0.000 title claims abstract description 102
- 238000001514 detection method Methods 0.000 title claims abstract description 61
- 230000006399 behavior Effects 0.000 claims abstract description 61
- 238000004364 calculation method Methods 0.000 claims abstract description 36
- 238000004422 calculation algorithm Methods 0.000 claims abstract description 26
- 239000013598 vector Substances 0.000 claims description 32
- 238000000034 method Methods 0.000 claims description 23
- 230000004044 response Effects 0.000 claims description 3
- 238000012795 verification Methods 0.000 claims description 3
- 238000005206 flow analysis Methods 0.000 claims description 2
- 238000004458 analytical method Methods 0.000 abstract description 16
- 238000012545 processing Methods 0.000 description 8
- 238000010586 diagram Methods 0.000 description 7
- 238000007621 cluster analysis Methods 0.000 description 4
- 238000004891 communication Methods 0.000 description 4
- 238000012549 training Methods 0.000 description 4
- 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
- 238000007781 pre-processing Methods 0.000 description 2
- 230000000644 propagated effect Effects 0.000 description 2
- 230000002547 anomalous effect Effects 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000007635 classification algorithm Methods 0.000 description 1
- 230000001010 compromised effect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000000977 initiatory effect Effects 0.000 description 1
- 230000009545 invasion Effects 0.000 description 1
- 238000002372 labelling Methods 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 230000035515 penetration Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000003252 repetitive effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000007619 statistical method Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
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
- 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
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/14—Network analysis or design
- H04L41/142—Network analysis or design using statistical or mathematical methods
-
- 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/1425—Traffic logging, e.g. anomaly detection
-
- 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)
- Algebra (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Analysis (AREA)
- Mathematical Optimization (AREA)
- Mathematical Physics (AREA)
- Probability & Statistics with Applications (AREA)
- Pure & Applied Mathematics (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明涉及网络与信息安全技术领域,提供一种异常设备检测方法、装置、电子设备和存储介质。异常设备检测方法包括:解析目标网络中的域名系统DNS流量,获得包含查询设备信息、DNS服务器信息及域名信息的DNS查询信息;根据查询设备信息,自DNS查询信息中获得每个查询设备的DNS查询日志;对每个查询设备的DNS查询日志进行特征计算,获得每个查询设备的包含查询类型特征、查询DNS服务器特征、查询域名特征和查询次数特征的DNS查询行为特征;对目标网络中的所有查询设备的DNS查询行为特征进行聚类,以根据聚类结果确定异常的查询设备。本发明的异常设备检测方案,基于DNS行为分析来检测内网异常主机,采用无监督学习算法,具有较好的普适性。
Description
技术领域
本发明涉及网络与信息安全技术领域,具体地说,涉及一种异常设备检测方法、装置、电子设备和存储介质。
背景技术
随着网络渗透入侵技术的不断发展,内网系统越来越容易被攻破;从网络与信息安全出发,需及早发现异常,定位沦陷主机并快速作出响应,才能减少损失。
目前,对于内网异常主机的检测,主要包括以下两种方案:
一,基于预存的检测规则库进行检测,若某主机命中检测规则库,则发出异常告警。此种方案依赖于检测规则库的时效性,而检测规则库总是落后于攻击方法,无法实现及时检测;且检测规则库不可能无限扩充,实际可用的检测规则库中的规则数量有限,无法覆盖所有类型的攻击。
二,构建正常主机和异常主机的训练样本集,通过分类算法实现离线训练和在线检测。此种方案由于各个应用场景的业务逻辑不同,难以构建出统一的训练样本集;当训练样本集与实际应用场景不符合时,会带来极高的误报率/漏报率。
可见,目前尚无有效的支持对内网异常主机进行检测的方案,无法及时可靠地发现未知的威胁。
需要说明的是,上述背景技术部分公开的信息仅用于加强对本发明的背景的理解,因此可以包括不构成对本领域普通技术人员已知的现有技术的信息。
发明内容
有鉴于此,本发明提供一种异常设备检测方法、装置、电子设备和存储介质,能够支持对内网异常设备的检测,及时可靠地发现未知的威胁。
根据本发明的一个方面,提供一种异常设备检测方法,包括:解析目标网络中的域名系统(Domain Name System,简称DNS)流量,获得包含查询设备信息、DNS服务器信息及域名信息的DNS查询信息;根据所述查询设备信息,自所述DNS查询信息中获得每个查询设备的DNS查询日志;对每个所述查询设备的DNS查询日志进行特征计算,获得每个所述查询设备的包含查询类型特征、查询DNS服务器特征、查询域名特征和查询次数特征的DNS查询行为特征;对所述目标网络中的所有查询设备的DNS查询行为特征进行聚类,以根据聚类结果确定异常的查询设备。
在一些实施例中,每个所述查询设备的DNS查询日志包括多条DNS查询记录;所述查询类型特征的计算方式为:计算每个所述查询设备的DNS查询日志中,A记录的个数占所有DNS查询记录的个数的比例,作为所述查询类型特征。
在一些实施例中,所述查询DNS服务器特征的计算方式为:计算每个所述查询设备的DNS查询日志所查询的DNS服务器的数量,占所有DNS查询信息所查询的DNS服务器的数量的比例,作为所述查询DNS服务器特征。
在一些实施例中,所述查询域名特征的计算方式为:计算每个所述查询设备的DNS查询日志所查询的域名的数量,占所有DNS查询信息所查询的域名的数量的比例,作为所述查询域名特征。
在一些实施例中,所述DNS查询信息和每个所述查询设备的DNS查询日志分别包括多条DNS查询记录;所述查询次数特征的计算方式为:计算每个所述查询设备的DNS查询日志的DNS查询记录的数量,占所有DNS查询信息的DNS查询记录的数量的比例,作为所述查询次数特征。
在一些实施例中,每个所述查询设备的DNS查询行为特征,表征为四维归一化的特征向量;所述对所述目标网络中的所有查询设备的DNS查询行为特征进行聚类,以根据聚类结果确定异常的查询设备,包括:根据所有查询设备的特征向量的分布,计算具有噪声的基于密度的聚类算法的邻域距离阈值;采用至少以所述邻域距离阈值为参数的聚类算法,对所有所述查询设备的特征向量进行聚类;根据聚类结果,将孤立节点对应的查询设备确定为异常的查询设备。
在一些实施例中,所述根据所有查询设备的特征向量的分布,计算具有噪声的基于密度的聚类算法的邻域距离阈值,包括:基于所有所述查询设备的特征向量,计算两两查询设备的特征向量之间的距离,获得距离集合;根据所述距离集合的期望,计算所述距离集合的标准差;根据所述距离集合的标准差和幂次分布参数,计算所述邻域距离阈值。
在一些实施例中,所述计算所述距离集合的标准差,采用如下公式:
其中,σ为所述距离集合的标准差,n为所述距离集合中的元素个数,xi为所述距离集合中的第i个元素,μ为所述距离集合的期望;所述计算所述邻域距离阈值,采用如下公式:eps=σ/m;其中,eps为所述邻域距离阈值,m为所述幂次分布参数,m取2或4。
在一些实施例中,所述DNS查询信息还包括时间戳;所述自所述DNS查询信息中获得每个查询设备的DNS查询日志前,还包括:基于设定的时间窗口,对所述DNS查询信息进行切片,以针对每个切片的DNS查询信息,执行所述自所述DNS查询信息中获得每个查询设备的DNS查询日志、所述对每个所述查询设备的DNS查询日志进行特征计算、以及所述对所述目标网络中的所有查询设备的DNS查询行为特征进行聚类的步骤。
在一些实施例中,所述自所述DNS查询信息中获得每个查询设备的DNS查询日志前,还包括:确定所述DNS查询信息中是否存在命中黑名单库的DNS查询记录;若是,将命中所述黑名单库的DNS查询记录所对应的查询设备确定为异常的查询设备;其中,所述黑名单库包括妥协指标规则库和概念验证规则库。
在一些实施例中,所述自所述DNS查询信息中获得每个查询设备的DNS查询日志,包括:根据所述DNS查询信息,形成包含多条DNS查询记录的DNS查询日志,每条DNS查询记录包括自查询至响应的会话信息;基于所述查询设备信息,对所述DNS查询日志进行分组,以获得每个所述查询设备的DNS查询日志。
根据本发明的又一个方面,提供一种异常设备检测装置,包括:流量解析模块,用于解析目标网络中的域名系统DNS流量,获得包含查询设备信息、DNS服务器信息及域名信息的DNS查询信息;日志分组模块,用于根据所述查询设备信息,自所述DNS查询信息中获得每个查询设备的DNS查询日志;行为特征计算模块,用于对每个所述查询设备的DNS查询日志进行特征计算,获得每个所述查询设备的包含查询类型特征、查询DNS服务器特征、查询域名特征和查询次数特征的DNS查询行为特征;聚类检测模块,用于对所述目标网络中的所有查询设备的DNS查询行为特征进行聚类,以根据聚类结果确定异常的查询设备。
根据本发明的又一个方面,提供一种电子设备,包括:处理器;存储器,所述存储器中存储有可执行指令;其中,所述可执行指令被所述处理器执行时,实现如上述任意实施例所述的异常设备检测方法。
根据本发明的又一个方面,提供一种计算机可读的存储介质,用于存储程序,所述程序被处理器执行时实现如上述任意实施例所述的异常设备检测方法。
本发明与现有技术相比的有益效果至少包括:
本发明的异常设备检测方案,通过对目标网络中的DNS流量进行解析和分组,获得目标网络中每个查询设备的DNS查询日志;从而,基于每个查询设备的DNS查询日志,进行每个查询设备的查询类型特征、查询DNS服务器特征、查询域名特征和查询次数特征的特征计算,获得每个查询设备的四个维度的DNS查询行为特征;最后,根据各个查询设备的DNS查询行为特征,通过聚类检测,确定异常的查询设备,实现对内网异常主机的发现;
本发明的异常设备检测方案,基于DNS行为分析来检测内网异常主机,通过基于内网所有主机的DNS行为建模,以相关的无监督学习算法,发现异常主机,具有较好的普适性。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本发明。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本发明的实施例,并与说明书一起用于解释本发明的原理。显而易见地,下面描述的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1示出本发明实施例中异常设备检测方法的步骤示意图;
图2示出本发明实施例中基于时间窗口的数据切片的示意图;
图3示出本发明实施例中异常设备检测方法的流程示意图;
图4示出本发明实施例中异常设备检测装置的模块示意图;
图5示出本发明实施例中电子设备的结构示意图。
具体实施方式
现在将参考附图更全面地描述示例实施方式。然而,示例实施方式能够以多种形式实施,且不应被理解为限于在此阐述的实施方式。相反,提供这些实施方式使本发明全面和完整,并将示例实施方式的构思全面地传达给本领域的技术人员。
附图仅为本发明的示意性图解,并非一定是按比例绘制。图中相同的附图标记表示相同或类似的部分,因而将省略对它们的重复描述。附图中所示的一些方框图是功能实体,不一定必须与物理或逻辑上独立的实体相对应。可以采用软件形式来实现这些功能实体,或在一个或多个硬件模块或集成电路中实现这些功能实体,或在不同网络和/或处理器装置和/或微控制器装置中实现这些功能实体。
此外,附图中所示的流程仅是示例性说明,不是必须包括所有的步骤。例如,有的步骤可以分解,有的步骤可以合并或部分合并,且实际执行的顺序有可能根据实际情况改变。需要说明的是,在不冲突的情况下,本发明的实施例及不同实施例中的特征可以相互组合。
高级攻击者为减少暴露,在内网中会选取少数主机与外界建立通信;本发明发现该些少数主机必然有与其他主机不同的DNS通信行为,通过基于内网所有主机的DNS行为建模,以相关的无监督学习算法,实现及时、可靠地发现异常主机。
图1示出本发明实施例中异常设备检测方法的主要步骤,参照图1所示,本发明实施例提供的异常设备检测方法,包括:
步骤S110,解析目标网络中的域名系统DNS流量,获得包含查询设备信息、DNS服务器信息及域名信息的DNS查询信息。
目标网络即待检测的网络,通常是内网。查询设备是目标网络中发起DNS查询(DNSQuery)的设备,通常是主机,或者是其他可以执行DNS行为的设备。DNS服务器即DNS Query所查询的DNS服务器,域名即DNS Query所查询的域名。
查询设备信息,可包括查询设备的源互联网协议(Internet Protocol,简称IP)地址和源端口号;DNS服务器信息,可包括DNS Query所查询的DNS服务器的目标IP地址和目标端口号。
步骤S120,根据查询设备信息,自DNS查询信息中获得每个查询设备的DNS查询日志。
自DNS查询信息中获得每个查询设备的DNS查询日志,具体可包括:
根据DNS查询信息,形成包含多条DNS查询记录的DNS查询日志,每条DNS查询记录包括自查询至响应(Query-Response)的会话信息(session);也即,每条DNS查询记录形成一条包含“Query-Response”完整上下文session的DNS查询日志;
基于查询设备信息,对DNS查询日志进行分组,以获得每个查询设备的DNS查询日志;也即,可按照源IP地址,对DNS查询日志进行分组,以获得对应每个源IP地址的含多条session的DNS查询日志。
步骤S130,对每个查询设备的DNS查询日志进行特征计算,获得每个查询设备的包含查询类型特征、查询DNS服务器特征、查询域名特征和查询次数特征的DNS查询行为特征。
步骤S140,对目标网络中的所有查询设备的DNS查询行为特征进行聚类,以根据聚类结果确定异常的查询设备。
从而,上述的异常设备检测方案,通过对目标网络中的DNS流量进行解析和分组,获得目标网络中每个查询设备的DNS查询日志;从而,基于每个查询设备的DNS查询日志,进行每个查询设备的查询类型特征、查询DNS服务器特征、查询域名特征和查询次数特征的特征计算,获得每个查询设备的四个维度的DNS查询行为特征;最后,根据各个查询设备的DNS查询行为特征,通过聚类检测,确定异常的查询设备,实现对内网异常主机的发现;上述的异常设备检测方案,基于DNS行为分析来检测内网异常主机,通过基于内网所有主机的DNS行为建模,以相关的无监督学习算法,发现异常主机,具有较好的普适性。
在一个实施例中,查询类型特征的计算方式为:计算每个查询设备的DNS查询日志中,A记录的个数占所有DNS查询记录的个数的比例,作为查询类型特征。
在DNS解析中,A(Address)记录是用来指定主机名(或域名)对应的IP地址记录,A记录就是把一个域名解析到一个IP地址;查询类型特征,即反映A记录在源IP地址的DNS查询记录中所占的比例。记查询类型特征为Q_feature,Q_feature的计算公式为:
Q_feature=Src_A_count/Src_all_count;其中,Src_A_count为一查询设备的A记录的DNS Query个数,Src_all_count为该查询设备的所有DNS Query的个数。
在一个实施例中,每个查询设备的DNS查询日志中,可包括多条DNS查询记录,查询DNS服务器特征的计算方式为:计算每个查询设备的DNS查询日志所查询的DNS服务器的数量,占所有DNS查询信息所查询的DNS服务器的数量的比例,作为查询DNS服务器特征。
查询DNS服务器特征反映所有DNS查询信息中,源IP地址所查询过的DNS服务器的比例。记查询DNS服务器特征为Ser_feature,Ser_feature的计算公式为:
Ser_feature=Src_DNSer_set_size/all_DNSer_set_size;其中,Src_DNSer_set_size为一源IP地址的session中所有相关的DNS服务器集合大小,all_DNSer_set_size为所有session中DNS服务器集合大小。
在一个实施例中,查询域名特征的计算方式为:计算每个查询设备的DNS查询日志所查询的域名的数量,占所有DNS查询信息所查询的域名的数量的比例,作为查询域名特征。
查询域名特征反映一源IP地址所查询过的域名集合在所有主机所查询过的域名集合中的占比。记查询域名特征为D_feature,D_feature的计算公式为:
D_feature=Src_Domain_set_size/all_Domain_set_size;其中,Src_Domain_set_size为该源IP地址的会话中所有相关的Domain集合大小,all_Domain_set_size为所有会话中Domain集合大小。
在一个实施例中,DNS查询信息和每个查询设备的DNS查询日志分别包括多条DNS查询记录;查询次数特征的计算方式为:计算每个查询设备的DNS查询日志的DNS查询记录的数量,占所有DNS查询信息的DNS查询记录的数量的比例,作为查询次数特征。
查询次数特征,反映一源IP地址在所有主机中查询行为次数所占比例。记查询次数特征为H_feature,H_feature的计算公式为:
H_feature=Src_count_size/all_count_size;其中,Src_count_size为该源IP地址的所有会话的个数,all_count_size则为所有主机的会话的个数。
获得每个查询设备的查询类型特征Q_feature、查询DNS服务器特征Ser_feature、查询域名特征D_feature和查询次数特征H_feature后,对每个源IP地址,即每个查询设备,生成一个四维的归一化的特征向量<a1,a2,a3,a4>来表征DNS查询行为特征,其中,0<=aj<=1,j∈{1,2,3,4}。
通过上述的基于源IP地址的DNS查询行为特征计算方法,实现对源IP地址的行为特征进行向量计算,为后续的聚类分析奠定基础。
在一个实施例中,对目标网络中的所有查询设备的DNS查询行为特征进行聚类,以根据聚类结果确定异常的查询设备,包括:根据所有查询设备的特征向量的分布,计算具有噪声的基于密度的聚类(Density-Based Spatial Clustering of Applications withNoise,简称DBSCAN)算法的邻域距离阈值;采用至少以邻域距离阈值eps为参数的DBSCAN算法,对所有查询设备的特征向量进行聚类;根据聚类结果,将孤立节点对应的查询设备确定为异常的查询设备。
DBSCAN算法具有两个核心参数:邻域距离阈值eps和邻域样本数阈值min_samples。min_samples为经验值,可配置为k,k可以取大于或等于3的整数;eps通过统计方法计算得到。
在一个实施例中,根据所有查询设备的特征向量的分布,计算具有噪声的基于密度的聚类算法的邻域距离阈值,包括:基于所有查询设备的特征向量,计算两两查询设备的特征向量之间的距离,获得距离集合;根据距离集合的期望,计算距离集合的标准差;根据距离集合的标准差和幂次分布参数,计算邻域距离阈值。
具体来说,对于每个源IP地址,计算其与其它源IP地址的向量空间距离,获得距离集合,以矩阵表示如下:
距离集合中的每个元素xi,根据一源IP地址的特征向量(四维归一化的特征向量)与另一源IP地址的特征向量进行向量空间距离计算获得。
计算距离集合的标准差σ,采用如下公式:
其中,n为距离集合中的元素个数,xi为距离集合中的第i个元素,μ为距离集合的期望;
计算邻域距离阈值eps,采用如下公式:
eps=σ/m;
其中,m为幂次分布参数;网络中的DNS行为往往是幂次分布,而不是正态分布,因此m通常可以配置为2或4。
从而,基于具有关键参数eps和min_samples的DBSCAN算法,对所有源IP地址的特征向量<a1,a2,a3,a4>进行聚类,DBSCAN算法的输出结果为“核心节点、边缘节点和孤立节点”,其中的孤立节点可确定为异常的查询设备,即异常主机。
采用上述的邻域距离阈值计算方法,实现对DBSCAN算法的关键参数的自动计算,能够更好地拟合网络流量的幂次定律。
进一步地,在上述各实施例中,DNS查询信息还包括时间戳;自DNS查询信息中获得每个查询设备的DNS查询日志前,还包括:基于设定的时间窗口,对DNS查询信息进行切片,以针对每个切片的DNS查询信息,执行自DNS查询信息中获得每个查询设备的DNS查询日志、对每个查询设备的DNS查询日志进行特征计算、以及对目标网络中的所有查询设备的DNS查询行为特征进行聚类的步骤。
通过以基于时间窗口的数据切片方法,能够实现对DNS查询信息的数据预处理,形成合理的数据结构,提升后续分析计算的效率;后续,可在各个时间窗口内,针对每个源IP地址分别生成四维归一化的特征向量,并在对应的时间窗口内通过聚类分析判定异常主机。
图2示出本发明实施例中基于时间窗口的数据切片示意,参照图2所示,基于时间窗口的数据切片方法包括:
S210,对DNS查询信息,按时间窗口T进行数据切片;
S220,在每个时间窗口T内,按“Query-Response”完整上下文的会话信息,形成含多条DNS查询记录的DNS查询日志;
S230,按照源IP地址,对DNS查询日志进行分组;以对每个源IP地址,生成以{SrcIP,[session1,session2,…]}的数据结构表征的DNS查询日志,方便后续处理。
通过形成合理的数据结构,可以极大提升异常设备检测方法的效率。
进一步地,在上述各实施例中,自DNS查询信息中获得每个查询设备的DNS查询日志前,还包括:确定DNS查询信息中是否存在命中黑名单库的DNS查询记录;若是,将命中黑名单库的DNS查询记录所对应的查询设备确定为异常的查询设备;其中,黑名单库包括妥协指标规则库和概念验证规则库。
妥协指标(Indicator of Compromised,简称IOC)规则库预存特定的IP地址和域名;概念验证(Proof of Concept,简称POC)规则库预存高危漏洞规则,具体包括表征恶意工具的字符串特征码,通常位于用户可自定义的Payload字段。对于DNS查询信息,若有域名或IP地址字段命中了IOC库,或者解析日志的部分字段命中了高危漏洞POC规则库,则直接输出异常主机事件。
图3示出本发明实施例中异常设备检测方法的详细流程,参照图3所示,在一个具体实施场景中,基于DNS行为分析,进行内网异常主机检测,包括:
S310,获得DNS网络流量。
S320,对DNS网络流量进行协议解析。解析后应至少保留以下关键信息:时间戳、发起DNS Query的源IP、源端口、DNS服务器IP、DNS服务器端口、协议类型(TCP/UDP)、以及如qtype、rcode、qclass和TTL等IETF RFC所规定的其他相关字段。
S330,基于IOC/高危漏洞PoC规则的威胁检测。对于解析日志,若有域名或IP地址字段命中了IOC库,或者解析日志的部分字段命中了高危漏洞PoC规则库,则直接执行S370,输出异常主机事件。
S340,基于时间窗口的数据切片。需配置时间窗口的长度T,可以为2小时、4小时、6小时、12小时或24小时;按IP及端口的5元组信息,形成多条包含“Query-Response”完整上下文session的DNS查询日志;此处,可根据IP白名单,排除内网DNS服务器的递归查询流量;再按照源IP,对DNS查询日志进行分组,形成对应每个源IP的多条session的DNS查询日志。
每个源IP的每条session,可表示为<Src IP,Src Port,Dest IP,Dest Port,UDP>,其中,“Src IP”是源IP,“Src Port”是源端口,“Dest IP”是DNS服务器IP,“Dest Port”是DNS服务器端口,“UDP”是协议类型。
S350,源IP行为特征计算。对每个源IP的DNS查询日志,计算四大维度的行为特征,包括查询类型特征Q_feature、查询DNS服务器特征Ser_feature、查询域名特征D_feature和查询次数特征H_feature。
其中,查询类型特征Q_feature反映A记录在源IP的DNS查询记录中所占比例;查询DNS服务器特征Ser_feature反映源IP所查询过的DNS服务器的比例;查询域名特征D_feature反映源IP所查询过的域名集合在所有主机中所占比例;查询次数特征H_feature反映源IP在所有主机中查询行为次数所占比例。
最终,对于每个源IP,在时间窗口T内,生成一个四维的归一化的特征向量<a1,a2,a3,a4>。
S360,基于DBSCAN的聚类检测。DBSCAN算法不需要提前指定聚类标签的个数,具有更强的可解释性;DBSCAN算法的核心思想是以局部的相似性,结合密度,实现核心区域的连通,最终发现异常点。
DBSCAN算法基于输入数据(即当前时间窗口的每个源IP的特征向量),自动计算邻域距离阈值,再进行聚类分析;对所有的源IP,DBSCAN算法的输出结果为“核心节点、边缘节点和孤立节点”,并基于孤立节点,执行S370输出异常主机事件。
若无孤立节点,则执行S370中的结束整个流程。
上述的基于DNS行为分析的内网异常主机检测方法,通过基于时间窗口的数据切片方法,实现对DNS查询日志的数据预处理,形成合理的数据结构,提升后续分析计算的效率;通过源IP行为特征计算方法,实现对查询类型特征、查询DNS服务器特征、查询域名特征和查询次数特征的计算,并在同一时间窗口内,对每个源IP生成归一化的特征向量,为后续的聚类分析奠定基础;最后,采用邻域距离阈值计算方法,现对DBSCAN关键参数的自动计算,更好地拟合网络流量的幂次定律,有效实现对内网异常主机的发现。
上述的基于DNS行为分析的内网异常主机检测方法,通过基于内网所有主机的DNS行为建模,以相关的无监督学习算法,发现异常主机,具有良好的稳定性、可解释性,不依赖样本标注,具有较好的应用推广价值,能够适用于普遍的安全运营应用场景,例如企业自营业务系统、办公网络的安全运营维护、面向政企用户的安全代维业务等等应用场景。
本发明实施例还提供一种异常设备检测装置,可用于实现上述任意实施例描述的异常设备检测方法。上述任意实施例描述的异常设备检测方法的特征和原理均可应用至下面的异常设备检测装置实施例。在下面的异常设备检测装置实施例中,对已经阐明的关于异常设备检测的特征和原理不再重复说明。
图4示出本发明实施例中异常设备检测装置的主要模块,参照图4所示,异常设备检测装置400包括:
流量解析模块410,用于解析目标网络中的域名系统DNS流量,获得包含查询设备信息、DNS服务器信息及域名信息的DNS查询信息;
日志分组模块420,用于根据查询设备信息,自DNS查询信息中获得每个查询设备的DNS查询日志;
行为特征计算模块430,用于对每个查询设备的DNS查询日志进行特征计算,获得每个查询设备的包含查询类型特征、查询DNS服务器特征、查询域名特征和查询次数特征的DNS查询行为特征;
聚类检测模块440,用于对目标网络中的所有查询设备的DNS查询行为特征进行聚类,以根据聚类结果确定异常的查询设备。
进一步地,异常设备检测装置400还可包括实现上述各异常设备检测方法实施例的其他流程步骤的模块,各个模块的具体原理可参照上述各异常设备检测方法实施例的描述,此处不再重复说明。
本发明的异常设备检测装置,能够基于DNS行为分析来检测内网异常主机,通过基于内网所有主机的DNS行为建模,以相关的无监督学习算法,发现异常主机,具有较好的普适性。
本发明实施例还提供一种电子设备,包括处理器和存储器,存储器中存储有可执行指令,可执行指令被处理器执行时,实现上述任意实施例描述的异常设备检测方法。
本发明的电子设备,能够实现基于DNS行为分析来检测内网异常主机,通过基于内网所有主机的DNS行为建模,以相关的无监督学习算法,发现异常主机,具有较好的普适性。
图5是本发明实施例中电子设备的结构示意图,应当理解的是,图5仅仅是示意性地示出各个模块,这些模块可以是虚拟的软件模块或实际的硬件模块,这些模块的合并、拆分及其余模块的增加都在本发明的保护范围之内。
如图5所示,电子设备600以通用计算设备的形式表现。电子设备600的组件包括但不限于:至少一个处理单元610、至少一个存储单元620、连接不同平台组件(包括存储单元620和处理单元610)的总线630、显示单元640等。
存储单元620存储有程序代码,程序代码可以被处理单元610执行,使得处理单元610执行上述任意实施例描述的异常设备检测方法的步骤。例如,处理单元610可以执行如图1至图3所示的步骤。
存储单元620可以包括易失性存储单元形式的可读介质,例如随机存取存储单元(RAM)6201和/或高速缓存存储单元6202,还可以进一步包括只读存储单元(ROM)6203。
存储单元620还可以包括具有一个或多个程序模块6205的程序/实用工具6204,这样的程序模块6205包括但不限于:操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。
总线630可以为表示几类总线结构中的一种或多种,包括存储单元总线或者存储单元控制器、外围总线、图形加速端口、处理单元或者使用多种总线结构中的任意总线结构的局域总线。
电子设备600也可以与一个或多个外部设备通信,外部设备可以是键盘、指向设备、蓝牙设备等设备中的一种或多种。这些外部设备使得用户能与该电子设备600进行交互通信。电子设备600也能与一个或多个其它计算设备进行通信,所示计算机设备包括路由器、调制解调器。这种通信可以通过输入/输出(I/O)接口650进行。并且,电子设备600还可以通过网络适配器660与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信。网络适配器660可以通过总线630与电子设备600的其它模块通信。应当明白,尽管图中未示出,可以结合电子设备600使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、RAID系统、磁带驱动器以及数据备份存储平台等。
本发明实施例还提供一种计算机可读的存储介质,用于存储程序,程序被执行时实现上述任意实施例描述的异常设备检测方法。在一些可能的实施方式中,本发明的各个方面还可以实现为一种程序产品的形式,其包括程序代码,当程序产品在终端设备上运行时,程序代码用于使终端设备执行上述任意实施例描述的异常设备检测方法。
本发明的存储介质当被处理器执行时,能够实现基于DNS行为分析来检测内网异常主机,通过基于内网所有主机的DNS行为建模,以相关的无监督学习算法,发现异常主机,具有较好的普适性。
存储介质可以采用便携式紧凑盘只读存储器(CD-ROM)并包括程序代码,并可以在终端设备,例如个人电脑上运行。然而,本发明的存储介质不限于此,其可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
存储介质可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以为但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子包括但不限于:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。
可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了可读程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。可读信号介质还可以是可读存储介质以外的任何可读介质,该可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。可读信号介质上包含的程序代码可以用任何适当的介质传输,包括但不限于无线、有线、光缆、RF等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言的任意组合来编写用于执行本发明操作的程序代码,程序设计语言包括面向对象的程序设计语言—诸如Java、C++等,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。在涉及远程计算设备的情形中,远程计算设备可以通过任意种类的网络,包括局域网(LAN)或广域网(WAN),连接到用户计算设备,或者,可以连接到外部计算设备,例如利用因特网服务提供商来通过因特网连接。
以上内容是结合具体的优选实施方式对本发明所作的进一步详细说明,不能认定本发明的具体实施只局限于这些说明。对于本发明所属技术领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干简单推演或替换,都应当视为属于本发明的保护范围。
Claims (11)
1.一种异常设备检测方法,其特征在于,包括:
解析目标网络中的域名系统DNS流量,获得包含查询设备信息、DNS服务器信息及域名信息的DNS查询信息;
根据所述查询设备信息,自所述DNS查询信息中获得每个查询设备的DNS查询日志;
对每个所述查询设备的DNS查询日志进行特征计算,获得每个所述查询设备的包含查询类型特征、查询DNS服务器特征、查询域名特征和查询次数特征的DNS查询行为特征;
其中,所述查询域名特征的计算方式为:计算每个所述查询设备的DNS查询日志所查询的域名的数量,占所有DNS查询信息所查询的域名的数量的比例,作为所述查询域名特征;
对所述目标网络中的所有查询设备的DNS查询行为特征进行聚类,以根据聚类结果确定异常的查询设备;
其中,每个所述查询设备的DNS查询行为特征表征为四维归一化的特征向量,所述对所述目标网络中的所有查询设备的DNS查询行为特征进行聚类,以根据聚类结果确定异常的查询设备,包括:
根据所有查询设备的特征向量的分布,计算具有噪声的基于密度的聚类算法的邻域距离阈值,包括:基于所有所述查询设备的特征向量,计算两两查询设备的特征向量之间的距离,获得距离集合;根据所述距离集合的期望,计算所述距离集合的标准差;根据所述距离集合的标准差和幂次分布参数,计算所述邻域距离阈值;
采用至少以所述邻域距离阈值为参数的聚类算法,对所有所述查询设备的特征向量进行聚类;
根据聚类结果,将孤立节点对应的查询设备确定为异常的查询设备。
2.如权利要求1所述的异常设备检测方法,其特征在于,每个所述查询设备的DNS查询日志包括多条DNS查询记录;
所述查询类型特征的计算方式为:
计算每个所述查询设备的DNS查询日志中,A记录的个数占所有DNS查询记录的个数的比例,作为所述查询类型特征。
3.如权利要求1所述的异常设备检测方法,其特征在于,所述查询DNS服务器特征的计算方式为:
计算每个所述查询设备的DNS查询日志所查询的DNS服务器的数量,占所有DNS查询信息所查询的DNS服务器的数量的比例,作为所述查询DNS服务器特征。
4.如权利要求1所述的异常设备检测方法,其特征在于,所述DNS查询信息和每个所述查询设备的DNS查询日志分别包括多条DNS查询记录;
所述查询次数特征的计算方式为:
计算每个所述查询设备的DNS查询日志的DNS查询记录的数量,占所有DNS查询信息的DNS查询记录的数量的比例,作为所述查询次数特征。
5.如权利要求1所述的异常设备检测方法,其特征在于,所述计算所述距离集合的标准差,采用如下公式:
其中,σ为所述距离集合的标准差,n为所述距离集合中的元素个数,xi为所述距离集合中的第i个元素,μ为所述距离集合的期望;
所述计算所述邻域距离阈值,采用如下公式:
eps=σ/m;
其中,eps为所述邻域距离阈值,m为所述幂次分布参数,m取2或4。
6.如权利要求1-5任一项所述的异常设备检测方法,其特征在于,所述DNS查询信息还包括时间戳;
所述自所述DNS查询信息中获得每个查询设备的DNS查询日志前,还包括:
基于设定的时间窗口,对所述DNS查询信息进行切片,以针对每个切片的DNS查询信息,执行所述自所述DNS查询信息中获得每个查询设备的DNS查询日志、所述对每个所述查询设备的DNS查询日志进行特征计算、以及所述对所述目标网络中的所有查询设备的DNS查询行为特征进行聚类的步骤。
7.如权利要求1所述的异常设备检测方法,其特征在于,所述自所述DNS查询信息中获得每个查询设备的DNS查询日志前,还包括:
确定所述DNS查询信息中是否存在命中黑名单库的DNS查询记录;
若是,将命中所述黑名单库的DNS查询记录所对应的查询设备确定为异常的查询设备;
其中,所述黑名单库包括妥协指标规则库和概念验证规则库。
8.如权利要求1所述的异常设备检测方法,其特征在于,所述自所述DNS查询信息中获得每个查询设备的DNS查询日志,包括:
根据所述DNS查询信息,形成包含多条DNS查询记录的DNS查询日志,每条DNS查询记录包括自查询至响应的会话信息;
基于所述查询设备信息,对所述DNS查询日志进行分组,以获得每个所述查询设备的DNS查询日志。
9.一种异常设备检测装置,其特征在于,包括:
流量解析模块,用于解析目标网络中的域名系统DNS流量,获得包含查询设备信息、DNS服务器信息及域名信息的DNS查询信息;
日志分组模块,用于根据所述查询设备信息,自所述DNS查询信息中获得每个查询设备的DNS查询日志;
行为特征计算模块,用于对每个所述查询设备的DNS查询日志进行特征计算,获得每个所述查询设备的包含查询类型特征、查询DNS服务器特征、查询域名特征和查询次数特征的DNS查询行为特征;
其中,所述查询域名特征的计算方式为:计算每个所述查询设备的DNS查询日志所查询的域名的数量,占所有DNS查询信息所查询的域名的数量的比例,作为所述查询域名特征;
聚类检测模块,用于对所述目标网络中的所有查询设备的DNS查询行为特征进行聚类,以根据聚类结果确定异常的查询设备;
其中,每个所述查询设备的DNS查询行为特征表征为四维归一化的特征向量,所述聚类检测模块对所述目标网络中的所有查询设备的DNS查询行为特征进行聚类,以根据聚类结果确定异常的查询设备,包括:
根据所有查询设备的特征向量的分布,计算具有噪声的基于密度的聚类算法的邻域距离阈值,包括:基于所有所述查询设备的特征向量,计算两两查询设备的特征向量之间的距离,获得距离集合;根据所述距离集合的期望,计算所述距离集合的标准差;根据所述距离集合的标准差和幂次分布参数,计算所述邻域距离阈值;
采用至少以所述邻域距离阈值为参数的聚类算法,对所有所述查询设备的特征向量进行聚类;
根据聚类结果,将孤立节点对应的查询设备确定为异常的查询设备。
10.一种电子设备,其特征在于,包括:
处理器;
存储器,所述存储器中存储有可执行指令;
其中,所述可执行指令被所述处理器执行时,实现如权利要求1-8任一项所述的异常设备检测方法。
11.一种计算机可读的存储介质,用于存储程序,其特征在于,所述程序被处理器执行时实现如权利要求1-8任一项所述的异常设备检测方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211072762.3A CN115412357B (zh) | 2022-09-02 | 2022-09-02 | 异常设备检测方法、装置、电子设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211072762.3A CN115412357B (zh) | 2022-09-02 | 2022-09-02 | 异常设备检测方法、装置、电子设备和存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115412357A CN115412357A (zh) | 2022-11-29 |
CN115412357B true CN115412357B (zh) | 2024-03-19 |
Family
ID=84163653
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211072762.3A Active CN115412357B (zh) | 2022-09-02 | 2022-09-02 | 异常设备检测方法、装置、电子设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115412357B (zh) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103916406A (zh) * | 2014-04-25 | 2014-07-09 | 上海交通大学 | 一种基于dns日志分析的apt攻击检测系统和方法 |
CN111935136A (zh) * | 2020-08-07 | 2020-11-13 | 哈尔滨工业大学 | 基于dns数据分析的域名查询与解析异常检测系统及方法 |
CN113660275A (zh) * | 2021-08-18 | 2021-11-16 | 中国电信股份有限公司 | 域名系统请求的处理方法、装置、电子设备和存储介质 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2016164050A1 (en) * | 2015-04-10 | 2016-10-13 | Hewlett Packard Enterprise Development Lp | Network anomaly detection |
-
2022
- 2022-09-02 CN CN202211072762.3A patent/CN115412357B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103916406A (zh) * | 2014-04-25 | 2014-07-09 | 上海交通大学 | 一种基于dns日志分析的apt攻击检测系统和方法 |
CN111935136A (zh) * | 2020-08-07 | 2020-11-13 | 哈尔滨工业大学 | 基于dns数据分析的域名查询与解析异常检测系统及方法 |
CN113660275A (zh) * | 2021-08-18 | 2021-11-16 | 中国电信股份有限公司 | 域名系统请求的处理方法、装置、电子设备和存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN115412357A (zh) | 2022-11-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109450842B (zh) | 一种基于神经网络的网络恶意行为识别方法 | |
CN112104677B (zh) | 一种基于知识图谱的受控主机检测方法和装置 | |
US8260914B1 (en) | Detecting DNS fast-flux anomalies | |
CN111212053B (zh) | 一种面向工控蜜罐的同源攻击分析方法 | |
US10129270B2 (en) | Apparatus, system and method for identifying and mitigating malicious network threats | |
US8533819B2 (en) | Method and apparatus for detecting compromised host computers | |
CN111355697B (zh) | 僵尸网络域名家族的检测方法、装置、设备及存储介质 | |
CN107743701A (zh) | 基于恶意软件相似性和在线信任度的对事件的全局聚类 | |
Årnes et al. | Using Hidden Markov Models to evaluate the risks of intrusions: system architecture and model validation | |
US10489720B2 (en) | System and method for vendor agnostic automatic supplementary intelligence propagation | |
Celik et al. | Detection of Fast-Flux Networks using various DNS feature sets | |
CN112511561A (zh) | 网络攻击路径确定方法、设备、存储介质及装置 | |
US20220278999A1 (en) | Real-time detection of malicious activity through collaborative filtering | |
CN111835681A (zh) | 一种大规模流量异常主机检测方法和装置 | |
CN112583827B (zh) | 一种数据泄露检测方法及装置 | |
CN114301659A (zh) | 网络攻击预警方法、系统、设备及存储介质 | |
CN115412357B (zh) | 异常设备检测方法、装置、电子设备和存储介质 | |
CN114972827A (zh) | 资产识别方法、装置、设备及计算机可读存储介质 | |
CN115865525B (zh) | 日志数据处理方法、装置、电子设备和存储介质 | |
CN110912933B (zh) | 一种基于被动测量的设备识别方法 | |
WO2016173327A1 (zh) | 用于检测网站攻击的方法和设备 | |
CN108650274B (zh) | 一种网络入侵检测方法及系统 | |
CN115296904B (zh) | 域名反射攻击检测方法及装置、电子设备、存储介质 | |
CN113726775B (zh) | 一种攻击检测方法、装置、设备及存储介质 | |
CN114615015A (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 |