CN115001757B - 一种基于dns解析的主机异常行为分析方法及装置 - Google Patents
一种基于dns解析的主机异常行为分析方法及装置 Download PDFInfo
- Publication number
- CN115001757B CN115001757B CN202210532447.8A CN202210532447A CN115001757B CN 115001757 B CN115001757 B CN 115001757B CN 202210532447 A CN202210532447 A CN 202210532447A CN 115001757 B CN115001757 B CN 115001757B
- Authority
- CN
- China
- Prior art keywords
- domain name
- current process
- information
- host
- behavior model
- 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
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
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/09—Mapping addresses
- H04L61/10—Mapping addresses of different types
- H04L61/103—Mapping addresses of different types across network layers, e.g. resolution of network layer into physical layer addresses or address resolution protocol [ARP]
-
- 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/14—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
- H04L63/1441—Countermeasures against malicious traffic
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)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明提供一种基于DNS解析的主机异常行为分析方法及装置,所述方法包括:建立待观测主机的信任进程列表,所述信任进程列表存储所述待观测主机的多个可信进程;所述待观测主机采集数据;分析服务器部署分析模块,用于接收所述待观测主机的当前进程以及所述当前进程对应的域名信息;基于所述当前进程在进程的生命周期中的阶段信息及所述当前进程对应的域名信息,补充所述域名信息对应的域名的属性信息;基于所述当前进程的域名信息、补充后的域名的属性信息以及所述当前进程对应的行为模型,应用异常行为判定策略,确定所述待观测主机是否正常。根据本发明的方案,解决了现有方法数据单一、检测能力泛化性不强的问题,能够准确地分析主机行为。
Description
技术领域
本发明涉及网络安全领域,尤其涉及一种基于DNS解析的主机异常行为分析方法及装置。
背景技术
随着互联网的发展,计算机设备得到迅速的普及。与此同时,针对计算机的各种攻击也是层出不穷。如何迅速有效地检测被攻击的计算机是互联网社区面临的长期课题。对于目前的大部分基于特征分析的检测方法,都无法有效应对越来越多元化的网络场景,越来越多样化的攻击手段。当计算机主机被攻击者攻陷而未能及时发现,将会造成更大的损失。主机异常行为分析技术对主机状态进行分析可以一定程度上检测未知的攻击,迅速有效地的发现主机异常,以降低攻击造成的损失。
主机异常行为分析包括基于主机信息和基于网络流量两个主要方式。前者的关注点在操作系统产生的系统调用、命令序列及CPU状态信息等,通过对历史的系统调用分析,挖掘系统调用的先后顺序、使用频率等特征实现主机的异常检测。但是此方法数据来源单一,并且系统调用本身具有的丰富的语义,相同的功能可以通过不同的系统调用序列实现,导致该方法不能有效地应对灵活多变的攻击。后者通过监控主机所在的网络,检查数据包的内容,对网络中的主机行为进行分析。此方法部署简单,但需要处理的数据量比较大,可应对的攻击类型也比较有限。
发明内容
为解决上述技术问题,本发明提出了一种基于DNS解析的主机异常行为分析方法及装置,用以解决现有技术中基于主机信息和基于网络流量分析主机异常行为的局限的技术问题。
根据本发明的第一方面,提供一种基于DNS解析的主机异常行为分析方法,所述方法包括以下步骤:
步骤S1:建立待观测主机的信任进程列表,所述信任进程列表存储所述待观测主机的多个可信进程;查找所述分析服务器中存储的行为模型,所述行为模型是与进程对应的用于进行异常行为分析的模型;将具有行为模型的所述信任进程列表中的进程的标记项记为所述行为模型,将缺少行为模型的所述信任进程列表中的进程的标记项记为待生成行为模型;
步骤S2:所述待观测主机部署采集模块,用于采集数据,所述数据包括所述待观测主机的当前进程的相关信息以及所述当前进程对应的域名信息,所述域名信息是基于所述当前进程的域名解析行为确定的域名的信息;
步骤S3:所述分析服务器部署分析模块,用于接收所述待观测主机的当前进程以及所述当前进程对应的域名信息;基于所述当前进程在进程的生命周期中的阶段信息及所述当前进程对应的域名信息,补充所述域名信息对应的域名的属性信息;获取所述当前进程的标记项,基于所述当前进程的标记项,确定所述当前进程对应的行为模型,其中,若所述当前进程的标记项为待生成行为模型,则基于补充后的域名的属性信息确定所述当前进程的行为模型,并将所述当前进程的标记项记为所述当前进程对应的行为模型;
步骤S4:基于所述当前进程的域名信息、补充后的域名的属性信息以及所述当前进程对应的行为模型,应用异常行为判定策略,确定所述待观测主机是否正常。
优选地,所述步骤S1,在所述查找所述分析服务器中存储的行为模型之前,将所述信任进程列表发送给部署于所述分析服务器上的分析模块。
优选地,所述基于所述当前进程在进程的生命周期中的阶段信息及所述当前进程对应的域名信息,补充所述域名信息对应的域名的属性信息,包括:
从所述当前进程的整个生命周期的角度,将其划分为三个阶段,分别是:初始化阶段、业务阶段和终止阶段;当划分完成,所述当前进程处于该阶段内解析的所有域名,具备该阶段的标签。
优选地,所述基于所述进程在该进程的生命周期中的阶段信息及所述当前进程对应的域名信息,补充所述域名信息对应的域名的属性信息,包括:
获取所述当前进程在当前阶段对应的域名信息,确定所述当前进程在当前阶段对应的域名信息对应的域名族;
确定所述当前进程在当前阶段对应的域名信息对应的域名族,包括:
获取所述当前进程在当前阶段对应的域名信息,对于所述当前进程在当前阶段对应的域名信息中的每一个,均执行以下操作:按匹配规则确定所述当前进程对应的域名信息归属的域名族;
所述补充后的域名的属性信息,包括:
域名的IP信息,所述域名的IP信息包括IP地址,IP国家信息,IP的ASN信息。
优选地,所述步骤S4,包括:
获取所述分析服务器中存储的恶意进程的行为模型,确定所述恶意进程的行为模型与所述当前进程对应的行为模型的第一相似度,若所述第一相似度大于第一预设阈值BR,则确定所述待观测主机为异常;
进一步地,所述第一相似度的计算方式为:
其中,αj和βj分别为阶段j的域名和域名族在一致性中的权重,αj+βj=1;|Dij|和|Zij|分别为所述当前进程的阶段j对应的域名族i中的域名与历史数据中对应阶段和域名族的匹配数和总数;n为域名族数量;|Pz|和|Zj|分别是所述当前进程对应的域名族与历史数据中某进程的域名族的匹配数和总数。
优选地,所述步骤S4,还包括:
获取所述当前进程对应的行为模型,将其与对应的正常进程的历史行为模式进行比对,计算域名族上的一致性;若通过域名族一致性不可判定,则计算导致偏差的域名与该进程历史解析域名的一致性;
所述域名族一致性的计算方式为:
优选地,所述计算导致偏差的域名与该进程历史解析域名的一致性,包括:
其中,D为未匹配到域名族的域名的集合,IP(di)、country(di)和asn(di)分别计算第i个域名的解析IP,国家和ASN;IPset,Cset,Aset分别为该进程历史解析域名的IP、国家和ASN集合。
根据本发明第二方面,提供一种基于DNS解析的主机异常行为分析装置,所述装置包括:
初始化模块:配置为建立待观测主机的信任进程列表,所述信任进程列表存储所述待观测主机的多个可信进程;查找所述分析服务器中存储的行为模型,所述行为模型是与进程对应的用于进行异常行为分析的模型;将具有行为模型的所述信任进程列表中的进程的标记项记为所述行为模型,将缺少行为模型的所述信任进程列表中的进程的标记项记为待生成行为模型;
解析模块:配置为所述待观测主机部署采集模块,用于采集数据,所述数据包括所述待观测主机的当前进程的相关信息以及所述当前进程对应的域名信息,所述域名信息是基于所述当前进程的域名解析行为确定的域名的信息;
信息获取模块:配置为所述分析服务器部署分析模块,用于接收所述待观测主机的当前进程以及所述当前进程对应的域名信息;基于所述当前进程在进程的生命周期中的阶段信息及所述当前进程对应的域名信息,补充所述域名信息对应的域名的属性信息;获取所述当前进程的标记项,基于所述当前进程的标记项,确定所述当前进程对应的行为模型,其中,若所述当前进程的标记项为待生成行为模型,则基于补充后的域名的属性信息确定所述当前进程的行为模型,并将所述当前进程的标记项记为所述当前进程对应的行为模型;
判断模块:配置为基于所述当前进程的域名信息、补充后的域名的属性信息以及所述当前进程对应的行为模型,应用异常行为判定策略,确定所述待观测主机是否正常。
根据本发明第三方面,提供一种基于DNS解析的主机异常行为分析系统,包括:
处理器,用于执行多条指令;
存储器,用于存储多条指令;
其中,所述多条指令,用于由所述存储器存储,并由所述处理器加载并执行如前所述的方法。
根据本发明第四方面,提供一种计算机可读存储介质,所述存储介质中存储有多条指令;所述多条指令,用于由处理器加载并执行如前所述的方法。
域名作为互联网的基础性服务,是绝大多数网络应用的起点,这为有效准确的检测提供了坚实的基础。根据本发明的上述方案,该方法通过挖掘主机进程与DNS解析的关联,对主机域名解析行为进行细粒度的整合分析,可以有效地对主机当前行为进行分析,进而发现针对主机的异常行为活动。立足点不再限于主机层次,而是从域名的角度,为主机行为添加了更丰富的数据,从而解决了传统的基于主机和基于网络方法的数据局限性。此外,多维度的数据使得本技术具备较强的供了应对灵活多变攻击的能力。本发明的方法同时满足单主机部署和多主机的分布式部署。多机环境下,在主机端安装特定的采集模块,用于收集主机进程活动和域名解析数据,并将其上传至安装有分析模块的后端服务器上。后端服务器通过收集的数据建立多维度的主机行为模型,实现对主机异常行为的分析。有效地解决了现有方法数据单一、检测能力泛化性不强的问题,为准确地分析主机行为,检测主机异常行为提供了新的手段。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,并可依照说明书的内容予以实施,以下以本发明的较佳实施例并配合附图详细说明如后。
附图说明
构成本发明的一部分的附图用来提供对本发明的进一步理解,本发明提供如下附图进行说明。在附图中:
图1为本发明一个实施方式的基于DNS解析的主机异常行为分析方法流程图;
图2为本发明一个实施方式的基于DNS解析的主机异常行为分析方法示意图;
图3为本发明一个实施方式的基于DNS解析的主机异常行为分析方法数据收集原理示意图;
图4为本发明一个实施方式的基于DNS解析的主机异常行为分析方法进程生命周期划分示意图;
图5为本发明一个实施方式的基于DNS解析的主机异常行为分析系统示意图;
图6为本发明一个实施方式的多个行测主机与分析服务器的交互示意图;
图7为本发明一个实施方式的基于DNS解析的主机异常行为分析装置的结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合本发明具体实施例及相应的附图对本发明技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
首先结合图1-2说明为本发明一个实施方式的基于DNS解析的主机异常行为分析方法流程图。如图1-2所示,所述方法包括以下步骤:
步骤S1:建立待观测主机的信任进程列表,所述信任进程列表存储所述待观测主机的多个可信进程;查找所述分析服务器中存储的行为模型,所述行为模型是与进程对应的用于进行异常行为分析的模型;将具有行为模型的所述信任进程列表中的进程的标记项记为所述行为模型,将缺少行为模型的所述信任进程列表中的进程的标记项记为待生成行为模型;
步骤S2:所述待观测主机部署采集模块,用于采集数据,所述数据包括所述待观测主机的当前进程的相关信息以及所述当前进程对应的域名信息,所述域名信息是基于所述当前进程的域名解析行为确定的域名的信息;
步骤S3:所述分析服务器部署分析模块,用于接收所述待观测主机的当前进程以及所述当前进程对应的域名信息;基于所述当前进程在进程的生命周期中的阶段信息及所述当前进程对应的域名信息,补充所述域名信息对应的域名的属性信息;获取所述当前进程的标记项,基于所述当前进程的标记项,确定所述当前进程对应的行为模型,其中,若所述当前进程的标记项为待生成行为模型,则基于补充后的域名的属性信息确定所述当前进程的行为模型,并将所述当前进程的标记项记为所述当前进程对应的行为模型;
步骤S4:基于所述当前进程的域名信息、补充后的域名的属性信息以及所述当前进程对应的行为模型,应用异常行为判定策略,确定所述待观测主机是否正常。
本发明利用细粒度的进程相关联的域名解析行为对所述待观测主机行为进行建模。以域名解析的网络侧数据,结合进程活动的所述待观测主机侧数据,自下而上的从网络侧数据反映进程行为。从进程行为描绘所述待观测主机行为,打破传统主机端或网络端异常分析技术的局限性,为主机行为模型提供更丰富的动态行为信息,更细粒度的行为分析,从而实现主机异常行为的分析与处置。首先从主机端观察,确定进程解析了哪些域名,以满足行为分析模型的数据需求;二是有效利用获取的进程与域名的关联数据,以实现主机行为分析目标。再利用建立的所述待观测主机的行为模型对是否存在异常行为进行判定。
所述步骤S1:建立待观测主机的信任进程列表,所述信任进程列表存储所述待观测主机的多个可信进程;查找所述分析服务器中存储的行为模型,所述行为模型是与进程对应的用于进行异常行为分析的模型;将具有行为模型的所述信任进程列表中的进程的标记项记为所述行为模型,将缺少行为模型的所述信任进程列表中的进程的标记项记为待生成行为模型,其中:
在所述查找所述分析服务器中存储的行为模型之前,将所述信任进程列表发送给部署于所述分析服务器上的分析模块。
所述分析服务器预先根据所处网络环境存储有若干行为模型,所述行为模型用于之后的异常行为检测。所述行为模型用于表征同一类进程的域名解析行为,后续会根据进程的行为模型,确定所述待观测主机的行为模型。由于进程有多种,难以预先生成所有进程的行为模型,因此,对于缺少行为模型的进程,将缺少行为模型的进程的标记项记为待生成行为模型,进而创建行为模型构建任务。后续会根据接收的数据等信息,逐步完善、建立此类进程的行为模型。本实施例中,后续会根据接收的数据等信息,逐步完善、建立所述信任进程列表中的进程的行为模型。
进一步地,对于缺少行为模型的进程,可以通过指定同类进程运行次数N,后续步骤中,通过此类进程运行的前N次收集的数据建立此类进程的行为模型。运行次数N可以进行设置,N的数值越大,代表需要更多次的同类进程的运行,以建立更为准确的此类进程的行为模型。
所述步骤S2,所述待观测主机部署采集模块,用于采集数据,所述数据包括所述待观测主机的当前进程的相关信息以及所述当前进程对应的域名信息,所述域名信息是基于所述当前进程的域名解析行为确定的域名的信息,其中:
域名系统(Domain Name System,DNS)提供互联网中最基础的服务,承载着几乎所有的通讯需求。任何进程为了连接指定的服务器都会进行域名解析获取其对应的服务器IP地址。对于普通进程而言,需要执行特定的任务,所以会与特定的服务器建立连接,即解析特定的域名。无论是攻击者与所述待观测主机进行通信,还是恶意软件自身的通信都会应用域名。为了便于域名的应用,通常相同业务的域名具有相同的模式。这意味着域名可以与其承载的业务相对应,利用域名可以反向分析进程行为的目的。利用进程和域名的上述特性,可以实现所述待观测主机行为模式的建立,分析所述待观测主机的进程的行为目的以实现对所述待观测主机是否存在异常行为的检测。
如图3所示,由于不同平台上进程进行域名解析的流程存在差异,因此,所述采集所述待观测主机的当前进程以及所述当前进程对应的域名信息,包括:若所述当前进程直接向外部的DNS服务器发起解析请求,则拦截所述当前进程与其他进程间的通信,获取进行域名解析的所述当前进程的进程ID,进而确定所述当前进程ID对应的应用信息;若所述当前进程向操作系统内部的DNS服务发起委托或由操作系统的域名解析代理发起解析请求,采用Windows系统提供的事件追踪机制分析所述当前进程的解析行为,进而确定所述当前进程对应的应用信息。所述当前进程对应的应用信息包括应用的执行路径、签名信息。
通常来讲,Linux使用直接向外部的DNS服务器发起解析请求的方式;Windows使用向系统内部的DNS服务发起委托或由代理发起解析请求。本实施例中,采用Windows提供的事件追踪机制收集进程的解析行为,与直接的进程间通信拦截方法相比,其优势在于不需要过高的权限。在进程发起域名解析委托时,会向操作系统的事件收集器发送事件日志,DNS解析相关的事件主要包括DNS查询事件(事件ID 3006)、DNS查询完成事件(事件ID3008)、接收到DNS响应事件(事件ID 3011),查询超时事件(事件ID 1015),事件日志中保存有发起域名解析的进程ID。步骤(4)中可以获取更为丰富的数据,包括进程网络行为、进程历史行为等,如是否存在进程注入、连接的IP是否为解析域名的IP等,可用于进一步地丰富行为模型。通过步骤(5),从系统获取进程ID对应的应用信息,包括应用的执行路径、签名信息等。最终完成应用、进程、域名三者的数据整合。
本实施例中,通过分析所述当前进程的解析行为,能够对进程的通信行为进行分析,从而辅助建立所述进程的行为模型。进而基于多个行为模型,确定所述待观测主机的行为模型。本实施例将传统的网络侧获取域名数据转换为从所述待观测主机端获取域名信息,并将所述域名信息与所述当前进程相关联。
进一步地,所述数据还包括所述当前进程的启动时间、所述当前进程的结束时间、所述当前进程的执行路径、所述当前进程对应的域名信息(即所述当前进程的解析域名)、域名解析时间、域名解析结果;
所述步骤S3:所述分析服务器部署分析模块,用于接收所述待观测主机的当前进程以及所述当前进程对应的域名信息;基于所述当前进程在进程的生命周期中的阶段信息及所述当前进程对应的域名信息,补充所述域名信息对应的域名的属性信息;获取所述当前进程的标记项,基于所述当前进程的标记项,确定所述当前进程对应的行为模型,其中,若所述当前进程的标记项为待生成行为模型,则基于补充后的域名的属性信息确定所述当前进程的行为模型,并将所述当前进程的标记项记为所述当前进程对应的行为模型,其中:
所述基于所述进程在该进程的生命周期中的阶段信息及所述当前进程对应的域名信息,补充所述域名信息对应的域名的属性信息,包括:
从进程的整个生命周期的角度,将其划分为三个阶段,图4是对进程生命周期的划分,如图4所示,进程划分为:初始化阶段、业务阶段和终止阶段。划分依据为进程的行为目的。生命周期划分是对进程进行的,当划分完成,处于该阶段内解析的所有域名,具备本阶段的标签。初始化阶段,进程开始执行,即加载若干初始设置或资源,或者进行某些测试行为,此时将产生特定的解析行为;业务阶段,所述进程将执行其本身所承载的业务,如视频应用将加载视频,购物软件将展示商品。此时进程会向指定的业务域名发起请求。此阶段的时间跨度最大,行为最复杂,可能承载更细粒度的业务操作,如某个域名限定于特定的操作;终止阶段,所述进程关闭,可能存在向服务器保存状态、传输终止信号等操作。对于特定应用,多次执行可能存在某些行为变化,这些变化也应在行为模型的考虑之中。
本实施例中,将进程运行的前3秒定义为初始化阶段,结束运行的前3秒定义为终止阶段,中间的运行时间则为业务阶段,对于每个在指定阶段解析的域名添加阶段标签。
所述基于所述进程在该进程的生命周期中的阶段信息及所述当前进程对应的域名信息,补充所述域名信息对应的域名的属性信息,包括:
获取所述当前进程在当前阶段对应的域名信息,确定所述当前进程在当前阶段对应的域名信息对应的域名族,其中,由于域名收集是一个持续的过程,因此,所述当前进程解析了若干域名,所述当前进程在周期中的不同阶段都可能解析了若干域名,在周期中的同一阶段,也可能解析了若干域名。
确定所述当前进程在当前阶段对应的域名信息对应的域名族,包括:
获取所述当前进程在当前阶段对应的域名信息,对于所述当前进程在当前阶段对应的域名信息中的每一个,均执行以下操作:按匹配规则确定所述当前进程对应的域名信息归属的域名族。
所述匹配规则为:
获取所述当前进程对应的域名信息的三级域名及四级域名,若所述当前进程对应的域名信息的三级域名与某域名族中的域名的三级域名相同,所述当前进程对应的域名信息的四级域名与所述域名族中的域名的四级域名不同,则所述当前进程归属于所述域名族。例如:xsffcd.doc.example.com和sdhux.doc.example.com,原因在于越高级的子域,其与业务的相关性越强。
获取所述当前进程对应的域名信息的三级域名及二级域名,对于不同的三级域名或二级域名,若所述当前进程对应的域名信息的三级域名及二级域名与某域名族中的域名的三级域名及二级域名之间的编辑距离小于阈值R,则所述当前进程对应的域名信息归属于所述域名族。例如video1.example.com和video2.example.com,他们的编辑距离为1,若阈值R设定为3,则video1.example.com和video2.example.com为同一族。
域名信息作为IP地址助记符,通常与其对应的业务存在语义上的关联,或者执行相同业务的域名具有相同的模式。基于这些联系可以将具有相同模式的域名划分为域名族。同族域名背后的行为是相同的,如域名mydns1.com和mydns2.com可能提供相同的服务。所以在解析mydns1.com和mydns2.com时,进程是为了获取相同的服务,所以域名对应的行为目标是一致的。在计算上,利用子域和编辑距离进行域名族的划分。将域名划分到相对应的域名族的目的在于扩展行为模型的泛化能力,从而补充所述域名信息对应的域名的属性信息。
本实施例中,从进程和域名两个维度获取信息,辅助后续构建进行异常检测的行为模型。
所述补充后的域名的属性信息,包括:
域名的IP信息,所述域名的IP信息包括IP地址,IP国家信息,IP的ASN信息。
如表1所示,所述分析模块补充所述域名信息对应的域名的属性信息,对采集模块采集到的信息进行整理,整理为如表1的格式。
表1
所述基于补充后的域名的属性信息确定所述当前进程的行为模型,包括:
分阶段的对每个进程的行为进行建模,模型中包括进程所处的阶段、各阶段中,进程解析的域名对应的域名族,如下所示:
{
<阶段1>:[
<域名族1>:[域名1:{IP,国家,ASN},域名2:{IP,国家,ASN}],
<域名族2>:[域名3:{IP,国家,ASN},域名4:{IP,国家,ASN}],
…
],
<阶段2>:[
<域名族1>:[域名1:{IP,国家,ASN},域名2:{IP,国家,ASN}],
<域名族2>:[域名3:{IP,国家,ASN},域名4:{IP,国家,ASN}],
…
]
…
}
如图5所示,获取补充后的域名的属性信息后,执行所述步骤S4。
所述步骤S4:基于所述当前进程的域名信息、补充后的域名的属性信息以及所述当前进程对应的行为模型,应用异常行为判定策略,确定所述待观测主机是否正常,其中:
获取所述分析服务器中存储的恶意进程的行为模型,所述恶意进程能够预先存储于所述分析服务器,也能够通过判断,逐步地在所述分析服务器中增加所述恶意进程。确定所述恶意进程的行为模型与所述当前进程对应的行为模型的第一相似度,若所述第一相似度大于第一预设阈值BR,则确定所述待观测主机为异常。
进一步地,所述第一相似度的计算方式为:
其中,αj和βj分别为阶段j的域名和域名族在一致性中的权重,αj+βj=1;|Dij|和|Zij|分别为所述当前进程行为的阶段j对应的域名族i中的域名与历史数据中对应阶段和域名族的匹配数和总数;n为域名族数量;|Pz|和|Zj|分别是所述当前进程对应的域名族与历史数据中某进程的域名族的匹配数和总数。
获取所述当前进程对应的行为模型,将其与对应的正常进程的历史行为模式进行比对,计算域名族上的一致性。若通过域名族一致性不可判定,则计算导致偏差的域名与该进程历史解析域名的一致性。域名的一致性包括三个部分,IP地址一致性、国家一致性和ASN一致性。若域名的一致性小于阈值DR,则判定为异常行为;否则,创建新的域名族。
进一步地,所述域名族一致性的计算方式为:
其中,|Pz|和|Zj|分别是当前进程的域名族与历史数据中某进程的域名族的匹配数和总数。
若域名族一致性为1,则判定为正常行为,若不为1,则计算导致偏差的域名与该进程历史解析域名的一致性。
域名的一致性包括三个部分,IP地址一致性、国家一致性和ASN一致性,计算公式如下:
其中,D为未匹配到域名族的域名的集合,IP(di)、country(di)和asn(di)分别计算第i个域名的解析IP,国家和ASN。IPset,Cset,Aset分别为该进程历史解析域名的IP、国家和ASN集合。
若域名一致性小于阈值DR,则判定为异常行为;否则,创建新的域名族加入进程数据中。
本实施例中,利用所述分析服务器中存储的恶意行为数据,比对当前进程行为;若无发现,则进行正常进程的行为一致性比对,涉及域名族一致性和域名一致性的比较。
进一步地,若所述当前进程对应的行为模型未存储于所述分析服务器,提示用户是否将所述当前进程加入可信列表,若选择加入,则在所述分析服务器建立所述当前进程的行为模型。
以下实施例为一具体数据,以说明本发明的基于DNS解析的主机异常行为分析方法。
同时满足单机部署或者分布式的多机部署,以多机部署检测主机异常行为为例,实施步骤如下:
(1)在局域网内的多台主机上部署数据采集模块,在分析服务器安装分析模块。
(2)数据采集模块初始化,向分析模块发送主机信息及信任列表,分析模块记录各主机上的进程信息。
(3)当某个主机有进程启动,并产生域名解析行为时,采集器实时将数据发送至分析模块,分析模块得到如下数据:
分析模块未发现相关恶意行为,与数据库中的进程历史数据进行比对,发现进程yunpan的历史行为模式
{
<阶段0>:[
<域名族0>:[www.yunpan.com:{1.x.x.x,CN,1287},
…
]
…
}
行为完全符合历史行为,则当前进程动作为正常。
(4)分析模块不仅对单一行为做评估,同时对正在运行进程做整体的评估。如主机2存在正在运行的进程video,分析模块收到如下数据
根据之前的计算,video并不属于恶意进程,但当前的解析出现较大的异常,域名族一致性与历史行为不一致,此时计算域名一致性,新收到的域名与历史数据一致性很低,
IPset∩IP(d)=0
Cset∩country(d)=0
Aset∩asn(d)=0
判定该进程当前行为异常,有可能被进程注入,发出对该进程的告警。基于当前进程的解析数据,得到判定结果。
图7为本发明一个实施方式的基于DNS解析的主机异常行为分析装置的结构示意图,如图7所示,所述装置包括:
初始化模块:配置为建立待观测主机的信任进程列表,所述信任进程列表存储所述待观测主机的多个可信进程;查找所述分析服务器中存储的行为模型,所述行为模型是与进程对应的用于进行异常行为分析的模型;将具有行为模型的所述信任进程列表中的进程的标记项记为所述行为模型,将缺少行为模型的所述信任进程列表中的进程的标记项记为待生成行为模型;
解析模块:配置为所述待观测主机部署采集模块,用于采集数据,所述数据包括所述待观测主机的当前进程的相关信息以及所述当前进程对应的域名信息,所述域名信息是基于所述当前进程的域名解析行为确定的域名的信息;
信息获取模块:配置为所述分析服务器部署分析模块,用于接收所述待观测主机的当前进程以及所述当前进程对应的域名信息;基于所述当前进程在进程的生命周期中的阶段信息及所述当前进程对应的域名信息,补充所述域名信息对应的域名的属性信息;获取所述当前进程的标记项,基于所述当前进程的标记项,确定所述当前进程对应的行为模型,其中,若所述当前进程的标记项为待生成行为模型,则基于补充后的域名的属性信息确定所述当前进程的行为模型,并将所述当前进程的标记项记为所述当前进程对应的行为模型;
判断模块:配置为基于所述当前进程的域名信息、补充后的域名的属性信息以及所述当前进程对应的行为模型,应用异常行为判定策略,确定所述待观测主机是否正常。
本发明实施例进一步给出一种基于DNS解析的主机异常行为分析系统,包括:
处理器,用于执行多条指令;
存储器,用于存储多条指令;
其中,所述多条指令,用于由所述存储器存储,并由所述处理器加载并执行如前所述的方法。
本发明实施例进一步给出一种计算机可读存储介质,所述存储介质中存储有多条指令;所述多条指令,用于由处理器加载并执行如前所述的方法。
需要说明的是,在不冲突的情况下,本发明中的实施例及实施例中的特征可以相互组合。
在本发明所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如,多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。
上述以软件功能单元的形式实现的集成的单元,可以存储在一个计算机可读取存储介质中。上述软件功能单元存储在一个存储介质中,包括若干指令用以使得一台计算机装置(可以是个人计算机,实体机服务器,或者网络云服务器等,需安装Windows或者Windows Server操作系统)执行本发明各个实施例所述方法的部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(RandomAccess Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅是本发明的较佳实施例而已,并非对本发明作任何形式上的限制,依据本发明的技术实质对以上实施例所作的任何简单修改、等同变化与修饰,均仍属于本发明技术方案的范围内。
Claims (10)
1.一种基于DNS解析的主机异常行为分析方法,其特征在于,所述方法包括以下步骤:
步骤S1:建立待观测主机的信任进程列表,所述信任进程列表存储所述待观测主机的多个可信进程;查找分析服务器中存储的行为模型,所述行为模型是与进程对应的用于进行异常行为分析的模型;将具有行为模型的所述信任进程列表中的进程的标记项记为所述行为模型,将缺少行为模型的所述信任进程列表中的进程的标记项记为待生成行为模型;
步骤S2:所述待观测主机部署采集模块,用于采集数据,所述数据包括所述待观测主机的当前进程的相关信息以及所述当前进程对应的域名信息,所述域名信息是基于所述当前进程的域名解析行为确定的域名的信息;
步骤S3:所述分析服务器部署分析模块,用于接收所述待观测主机的当前进程以及所述当前进程对应的域名信息;基于所述当前进程在进程的生命周期中的阶段信息及所述当前进程对应的域名信息,补充所述域名信息对应的域名的属性信息;获取所述当前进程的标记项,基于所述当前进程的标记项,确定所述当前进程对应的行为模型,其中,若所述当前进程的标记项为待生成行为模型,则基于补充后的域名的属性信息确定所述当前进程的行为模型,并将所述当前进程的标记项记为所述当前进程对应的行为模型;
步骤S4:基于所述当前进程的域名信息、补充后的域名的属性信息以及所述当前进程对应的行为模型,应用异常行为判定策略,确定所述待观测主机是否正常。
2.如权利要求1所述的方法,其特征在于,所述步骤S1,在所述查找所述分析服务器中存储的行为模型之前,将所述信任进程列表发送给部署于所述分析服务器上的分析模块。
3.如权利要求2所述的方法,其特征在于,所述基于所述当前进程在进程的生命周期中的阶段信息及所述当前进程对应的域名信息,补充所述域名信息对应的域名的属性信息,包括:
从所述当前进程的整个生命周期的角度,将其划分为三个阶段,分别是:初始化阶段、业务阶段和终止阶段;当划分完成,所述当前进程处于该阶段内解析的所有域名,具备该阶段的标签。
4.如权利要求3所述的方法,其特征在于,所述基于所述进程在该进程的生命周期中的阶段信息及所述当前进程对应的域名信息,补充所述域名信息对应的域名的属性信息,包括:
获取所述当前进程在当前阶段对应的域名信息,确定所述当前进程在当前阶段对应的域名信息对应的域名族,具体包括:
获取所述当前进程在当前阶段对应的域名信息,对于所述当前进程在当前阶段对应的域名信息中的每一个,均执行以下操作:按匹配规则确定所述当前进程对应的域名信息归属的域名族;
所述补充后的域名的属性信息,包括:
域名的IP信息,所述域名的IP信息包括IP地址、IP国家信息和IP的ASN信息。
5.如权利要求4所述的方法,其特征在于,所述步骤S4,包括:
获取所述分析服务器中存储的恶意进程的行为模型,确定所述恶意进程的行为模型与所述当前进程对应的行为模型的第一相似度,若所述第一相似度大于第一预设阈值BR,则确定所述待观测主机为异常;
进一步地,所述第一相似度的计算方式为:
其中,αj和βj分别为阶段j的域名和域名族在一致性中的权重,αj+βj=1;|Dij|和|Zij|分别为所述当前进程的阶段j对应的域名族i中的域名与历史数据中对应阶段和域名族的匹配数和总数;n为域名族数量;|Pz|和|Zj|分别是所述当前进程对应的域名族与历史数据中某进程的域名族的匹配数和总数。
6.如权利要求5所述的方法,其特征在于,所述步骤S4,还包括:
获取所述当前进程对应的行为模型,将其与对应的正常进程的历史行为模式进行比对,计算域名族上的一致性;若通过域名族一致性不可判定,则计算导致偏差的域名与该进程历史解析域名的一致性;
所述域名族一致性的计算方式为:
7.如权利要求6所述的方法,其特征在于,所述计算导致偏差的域名与该进程历史解析域名的一致性,包括:
其中,D为未匹配到域名族的域名的集合,IP(di)、country(di)和asn(di)分别表示计算第i个域名的解析IP地址、IP国家信息和IP的ASN信息;IPset,Cset,Aset分别为该进程历史解析域名的IP地址集合、IP的国家信息集合和IP的ASN信息集合。
8.一种基于DNS解析的主机异常行为分析装置,其特征在于,所述装置包括:
初始化模块:配置为建立待观测主机的信任进程列表,所述信任进程列表存储所述待观测主机的多个可信进程;查找所述分析服务器中存储的行为模型,所述行为模型是与进程对应的用于进行异常行为分析的模型;将具有行为模型的所述信任进程列表中的进程的标记项记为所述行为模型,将缺少行为模型的所述信任进程列表中的进程的标记项记为待生成行为模型;
解析模块:配置为所述待观测主机部署采集模块,用于采集数据,所述数据包括所述待观测主机的当前进程的相关信息以及所述当前进程对应的域名信息,所述域名信息是基于所述当前进程的域名解析行为确定的域名的信息;
信息获取模块:配置为所述分析服务器部署分析模块,用于接收所述待观测主机的当前进程以及所述当前进程对应的域名信息;基于所述当前进程在进程的生命周期中的阶段信息及所述当前进程对应的域名信息,补充所述域名信息对应的域名的属性信息;获取所述当前进程的标记项,基于所述当前进程的标记项,确定所述当前进程对应的行为模型,其中,若所述当前进程的标记项为待生成行为模型,则基于补充后的域名的属性信息确定所述当前进程的行为模型,并将所述当前进程的标记项记为所述当前进程对应的行为模型;
判断模块:配置为基于所述当前进程的域名信息、补充后的域名的属性信息以及所述当前进程对应的行为模型,应用异常行为判定策略,确定所述待观测主机是否正常。
9.一种基于DNS解析的主机异常行为分析系统,其特征在于,包括:
处理器,用于执行多条指令;
存储器,用于存储多条指令;
其中,所述多条指令,用于由所述存储器存储,并由所述处理器加载并执行如权利要求1-7之任一项所述方法。
10.一种计算机可读存储介质,其特征在于,所述存储介质中存储有多条指令;所述多条指令,用于由处理器加载并执行如权利要求1-7之任一项所述方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210532447.8A CN115001757B (zh) | 2022-05-12 | 2022-05-12 | 一种基于dns解析的主机异常行为分析方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210532447.8A CN115001757B (zh) | 2022-05-12 | 2022-05-12 | 一种基于dns解析的主机异常行为分析方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115001757A CN115001757A (zh) | 2022-09-02 |
CN115001757B true CN115001757B (zh) | 2023-08-08 |
Family
ID=83028189
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210532447.8A Active CN115001757B (zh) | 2022-05-12 | 2022-05-12 | 一种基于dns解析的主机异常行为分析方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115001757B (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2007134082A2 (en) * | 2006-05-08 | 2007-11-22 | Intelligent Compression Technologies, Inc. | Security-preserving proxy tunnel |
CN109819060A (zh) * | 2018-12-15 | 2019-05-28 | 深圳壹账通智能科技有限公司 | 异常检测方法、装置、计算机装置及存储介质 |
CN111935136A (zh) * | 2020-08-07 | 2020-11-13 | 哈尔滨工业大学 | 基于dns数据分析的域名查询与解析异常检测系统及方法 |
WO2021142867A1 (zh) * | 2020-01-17 | 2021-07-22 | 厦门网宿有限公司 | 一种dns服务器选择方法和代理服务器 |
-
2022
- 2022-05-12 CN CN202210532447.8A patent/CN115001757B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2007134082A2 (en) * | 2006-05-08 | 2007-11-22 | Intelligent Compression Technologies, Inc. | Security-preserving proxy tunnel |
CN109819060A (zh) * | 2018-12-15 | 2019-05-28 | 深圳壹账通智能科技有限公司 | 异常检测方法、装置、计算机装置及存储介质 |
WO2021142867A1 (zh) * | 2020-01-17 | 2021-07-22 | 厦门网宿有限公司 | 一种dns服务器选择方法和代理服务器 |
CN111935136A (zh) * | 2020-08-07 | 2020-11-13 | 哈尔滨工业大学 | 基于dns数据分析的域名查询与解析异常检测系统及方法 |
Non-Patent Citations (1)
Title |
---|
周勇林 ; 由林麟 ; 张永铮 ; .基于命名及解析行为特征的异常域名检测方法.计算机工程与应用.2011,(第20期),全文. * |
Also Published As
Publication number | Publication date |
---|---|
CN115001757A (zh) | 2022-09-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111522922B (zh) | 日志信息查询方法、装置、存储介质及计算机设备 | |
CN111988339B (zh) | 一种基于dikw模型的网络攻击路径发现、提取和关联的方法 | |
CN101802805B (zh) | 用于验证应用程序并控制其执行的方法 | |
CN111221625B (zh) | 文件检测方法、装置及设备 | |
CN111104677B (zh) | 基于cpe规范的漏洞补丁检测方法及装置 | |
Wang et al. | Fault detection for cloud computing systems with correlation analysis | |
CN110766329B (zh) | 一种信息资产的风险分析方法、装置、设备及介质 | |
CN109586282A (zh) | 一种电网未知威胁检测系统及方法 | |
CN111818073B (zh) | 一种失陷主机检测方法、装置、设备及介质 | |
WO2017107804A1 (zh) | 发现DDoS攻击的方法及装置 | |
CN113496033A (zh) | 访问行为识别方法和装置及存储介质 | |
US9727394B2 (en) | Establishing causality order of computer trace records | |
Zhai et al. | Integrating IDS alert correlation and OS-level dependency tracking | |
CN109492403B (zh) | 一种漏洞检测方法及装置 | |
CN108809950B (zh) | 一种基于云端影子系统的无线路由器保护方法和系统 | |
CN115001757B (zh) | 一种基于dns解析的主机异常行为分析方法及装置 | |
EP3010194B1 (en) | Method of tracing a transaction in a network | |
CN116074280B (zh) | 应用入侵防御系统识别方法、装置、设备和存储介质 | |
CN116248397A (zh) | 漏洞检测方法、装置、电子设备及可读存储介质 | |
Shin et al. | Applying data mining techniques to analyze alert data | |
CN115955333A (zh) | C2服务器识别方法、装置、电子设备及可读存储介质 | |
US20240137385A1 (en) | Method and apparatus for identifying malicious mining behavior, and device and storage medium | |
CN115314271A (zh) | 一种访问请求的检测方法、系统及计算机存储介质 | |
Khan et al. | Monitoring and detection of security events through IoT device identification using application layer protocols | |
CN114070632A (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 |