首页> 中国专利> 威胁探测指令集提取方法

威胁探测指令集提取方法

摘要

本公开的实施例提供了威胁探测指令集提取方法。所述方法包括:利用探测指令集对被控端的恶意程序进行指令测试,获取所述被控端的通信流量;将所述通信流量进行过滤,获得与所述恶意程序对应的流量;通过所述与恶意程序对应的流量,从所述探测指令集中提取与所述恶意程序相匹配的威胁探测指令集,其中,所述与恶意程序对应的流量包括所述威胁探测指令集对应的测试响应包。以此方式,可以从探测指令集中自动提取与该恶意程序相匹配的威胁探测指令集,以便有效提取感染有恶意程序的被控端通常会做出响应的指令,之后可利用该威胁探测指令集及时发现其他需要排查的设备是否感染有恶意程序,降低被感染设备发现的滞后性。

著录项

  • 公开/公告号CN113868654A

    专利类型发明专利

  • 公开/公告日2021-12-31

    原文格式PDF

  • 申请/专利权人 北京控制与电子技术研究所;

    申请/专利号CN202111146031.4

  • 申请日2021-09-28

  • 分类号G06F21/56(20130101);H04L12/26(20060101);H04L29/06(20060101);

  • 代理机构11664 北京华专卓海知识产权代理事务所(普通合伙);

  • 代理人王一;赵真

  • 地址 100038 北京市西城区木樨地北里甲51号

  • 入库时间 2023-06-19 13:29:16

说明书

技术领域

本公开的实施例一般涉及互联网领域,并且更具体地,涉及威胁探测指令集提取方法。

背景技术

近年来,利用软件及网络漏洞对计算机等设备进行访问或破坏的现象越来越严重,如在计算机等设备上安装木马、病毒等来对其安全进行破坏。然而,木马、病毒具有隐蔽性强,难发掘的特点,通常用户发现木马、病毒是在被感染设备已经发生信息泄露等安全问题之后,这就导致了严重的滞后性而且设备是否被木马等感染的发现过程也需要过多依赖人为经验,不够智能化。

发明内容

根据本公开的实施例,提供了一种威胁探测指令集提取方案。

在本公开提供了一种威胁探测指令集提取方法。该方法包括:

利用探测指令集对被控端的恶意程序进行指令测试,获取所述被控端的通信流量;

将所述通信流量进行过滤,获得与所述恶意程序对应的流量;

通过所述与恶意程序对应的流量,从所述探测指令集中提取与所述恶意程序相匹配的威胁探测指令集,其中,所述与恶意程序对应的流量包括所述威胁探测指令集对应的测试响应包。

如上所述的方面和任一可能的实现方式,进一步提供一种实现方式,所述获取被控端的通信流量,包括:

配置所述主控端的流量导向地址;

引导所述被控端与所述流量导向地址建立连接;

通过所述流量导向地址,接收所述被控端对所述主控端的通信流量。

如上所述的方面和任一可能的实现方式,进一步提供一种实现方式,所述方法还包括:

将所述威胁探测指令集发送至一个或多个内网设备对所述内网设备进行安全测试。

如上所述的方面和任一可能的实现方式,进一步提供一种实现方式,所述将所述威胁探测指令集发送至一个或多个内网设备,对所述内网设备进行安全测试,包括:

将所述威胁探测指令集发送至所述内网设备,获取所述内网设备针对所述威胁探测指令集的回应流量;

根据所述回应流量中是否包含所述测试响应包,得到所述内网设备的安全测试结果,其中:所述安全测试结果包括:

所述内网设备上是否感染有恶意程序以及若所述测试设备上感染有恶意程序,所感染的恶意程序的种类。

如上所述的方面和任一可能的实现方式,进一步提供一种实现方式,所述通过所述与恶意程序对应的流量,从所述探测指令集中提取与所述恶意程序相匹配的威胁探测指令集,包括:

将所述与恶意程序对应的流量中所包含的响应包对应的指令确定为所述威胁探测指令集,其中,所述所包含的响应包为所述测试响应包;或者

根据所述与恶意程序对应的流量中所携带的指令标识确定所述威胁探测指令集,其中,所述指令标识对应的响应包为所述测试响应包。

如上所述的方面和任一可能的实现方式,进一步提供一种实现方式,所述将所述通信流量进行过滤,获得与恶意程序对应的流量,包括:

对所述通信流量进行分析,以获取所述通信流量中的异常流量并丢弃正常流量;

将所述异常流量确定为所述与恶意程序对应的流量。

如上所述的方面和任一可能的实现方式,进一步提供一种实现方式,所述对所述通信流量进行分析,以获取所述通信流量中的异常流量并丢弃正常流量,包括:

分析所述通信流量的行为特征;

根据所述行为特征,获取所述异常流量并丢弃正常流量,其中,所述行为特征包括以下至少一项:

上行流量特征;

下行流量特征;

SYN数据包占TCP数据包数量的比例;

PSH数据包占TCP数据包数量的比例;

数据包的大小;

数据包的传输间隔;

心跳包的频率。

如上所述的方面和任一可能的实现方式,进一步提供一种实现方式,所述利用探测指令集对被控端的恶意程序进行指令测试,包括:

利用所述探测指令集中的多个指令对所述被控端的各恶意程序进行分批测试;

从所述探测指令集中提取与所述恶意程序相匹配的威胁探测指令集,包括:

从所述探测指令集的多个指令中依次提取与所述各恶意程序相匹配的威胁探测指令集。

应当理解,发明内容部分中所描述的内容并非旨在限定本公开的实施例的关键或重要特征,亦非用于限制本公开的范围。本公开的其它特征将通过以下的描述变得容易理解。

附图说明

结合附图并参考以下详细说明,本公开各实施例的上述和其他特征、优点及方面将变得更加明显。在附图中,相同或相似的附图标记表示相同或相似的元素,其中:

图1示出了根据本公开的一种实施例的威胁探测指令集提取方法的流程图;

图2示出了根据本公开的另一种实施例的威胁探测指令集提取方法的流程图;

图3示出了根据本公开的实施例的提取威胁探测指令集的部署环境示意图。

具体实施方式

为使本公开实施例的目的、技术方案和优点更加清楚,下面将结合本公开实施例中的附图,对本公开实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本公开一部分实施例,而不是全部的实施例。基于本公开中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的全部其他实施例,都属于本公开保护的范围。

另外,本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。

本公开中,可利用探测指令集对被感染有恶意程序的被控端进行模糊测试,然后从探测指令集中自动提取与该恶意程序相匹配的威胁探测指令集,以便有效提取感染有恶意程序的被控端通常会做出响应的指令,这就为之后利用该威胁探测指令集对其他需要排查的设备进行恶意程序的自动排查提供了便利,之后可利用该威胁探测指令集及时发现其他需要排查的设备是否感染有恶意程序,降低被感染设备发现的滞后性。

图1示出了根据本公开实施例的威胁探测指令集提取方法100的流程图。该方法100用于主控端,该主控端与感染有恶意程序的被控端构成了测试环境,在该测试环境下,被控端感染有木马、病毒等恶意程序事先已知晓。

该方法100包括:

步骤110,利用探测指令集对被控端的恶意程序进行指令测试,获取所述被控端的通信流量;

通信流量包括被控端与主控端之间的交互信息,当然,该交互信息包括但不限于被控端向主控端传输的文件等各种数据内容,还包括两者之间传输的指令、心跳包等等。

步骤120,将所述通信流量进行过滤,获得与所述恶意程序对应的流量;

恶意程序可以是木马、病毒等对被控端的安全有威胁或潜在威胁的程序。

由于被控端与主控端相通信的程序除了恶意程序还可能包含正常程序,因而,需要对通信流量进行自动过滤,从而将被控端的恶意程序与主控端之间的通信内容过滤出来,而被控端的恶意程序与主控端之间的通信内容即为与恶意程序对应的流量。

步骤130,通过所述与恶意程序对应的流量,从所述探测指令集中提取与所述恶意程序相匹配的威胁探测指令集,其中,所述与恶意程序对应的流量包括所述威胁探测指令集对应的测试响应包。

通过利用探测指令集对被控端的恶意程序进行指令测试,可获取被控端在接收到该探测指令集之后的通信流量,然后对该通信流量进行自动过滤,可获得恶意程序对应的流量,进而通过与恶意程序对应的流量,可从探测指令集中自动提取与该恶意程序相匹配的威胁探测指令集,以便有效提取感染有恶意程序的被控端通常会做出响应的指令,这就为之后利用该威胁探测指令集对其他需要排查的设备进行恶意程序的自动排查提供了便利,通过本实施例也能够有效减少恶意程序发现过程以及恶意程序通常会对哪些指令做出反应这一过程所需要依赖的人为操作和人为经验,且由于在该测试环境中发现了恶意程序通常会做出响应的威胁探测指令集,因而,之后可利用该威胁探测指令集及时发现其他需要排查的设备是否感染有恶意程序,降低被感染设备发现的滞后性。

另外,在获取与恶意程序相匹配的威胁探测指令集以及测试响应包时,可统计被控端的性能(如CPU使用率、进程使用情况等)和崩溃率,以便对被该恶意程序感染的主机(即被控端)的威胁情况进行进一步统计分析。

在一个实施例中,所述获取被控端的通信流量,包括:

配置所述主控端的流量导向地址;流量导向地址即诱导被控端的恶意程序与主控端之间建立连接,并与主控端进行通信的IP(Internet Protocol Address,是指互联网协议地址)地址。

引导所述被控端与所述流量导向地址建立连接;

通过所述流量导向地址,接收所述被控端对所述主控端的通信流量。

通过在主控端配置流量导向地址,可引导被控端的恶意程序主动与流量导向地址建立连接,这样,主控端就可通过该流量导向地址接收被控端与其进行相互通信而产生的通信流量。

在一个实施例中,所述方法还包括:

将所述威胁探测指令集发送至一个或多个内网设备对所述内网设备进行安全测试。

在获得威胁探测指令集之后,可将威胁探测指令集发送至一个或多个内网设备,即向可能存在反向外联的可疑程序所在的内网设备发送该威胁探测指令集,以排查确认内网主机是否感染恶意程序。

在一个实施例中,所述将所述威胁探测指令集发送至一个或多个内网设备,对所述内网设备进行安全测试,包括:

将所述威胁探测指令集发送至所述内网设备,获取所述内网设备针对所述威胁探测指令集的回应流量;回应流量即内网设备针对该威胁探测指令集中指令做出的响应包。

根据所述回应流量中是否包含所述测试响应包,得到所述内网设备的安全测试结果,其中:所述安全测试结果包括:

所述内网设备上是否感染有恶意程序以及若所述测试设备上感染有恶意程序,所感染的恶意程序的种类。

通过将威胁探测指令集发送至内网设备,可自动获得内网设备针对该威胁探测指令集的回应流量,然后根据该回应流量中是否包含所述测试响应包,得到所述内网设备的安全测试结果,即利用威胁探测指令集自动判断内网设备上是否感染有恶意程序以及具体所感染的恶意程序的种类,从而提高排查内网主机是否感染恶意程序的智能性与及时性,降低恶意程序发现的滞后性。

具体地,如果某个内网设备的回应流量中包含测试响应包,则说明该内网设备中存在与被控端所感染的恶意程序相同的恶意程序。

恶意程序的种类包括但不限于:

潜伏类木马,即不主动向控制端发包得木马;主动类发包的木马;定时类外联的木马。

在一个实施例中,所述通过所述与恶意程序对应的流量,从所述探测指令集中提取与所述恶意程序相匹配的威胁探测指令集,包括:

将探测指令集中,所述与恶意程序对应的流量中所包含的响应包对应的指令确定为所述威胁探测指令集,其中,所述所包含的响应包为所述测试响应包;或者

根据探测指令集,以及所述与恶意程序对应的流量中所携带的指令标识,确定所述威胁探测指令集,其中,所述指令标识对应的响应包即与恶意程序对应的流量中所包含的响应包,也是测试响应包。

由于探测指令集中包含很多探测指令,而恶意程序可能对一些探测指令有反应,对另一些探测指令没有反应,而被控端上的恶意程序一旦有反应往往就是被控端向主控端上传一些文件、对被控端本地进行破坏等,这些行为显然对被感染的被控端有安全威胁,因而,可将这部分指令提取出来作为威胁探测指令集,以便之后可利用威胁探测指令集对其他需要排查的内网设备进行恶意程序的排查。而具体的提取方式可以是通过主控端的指令发送日志,确定探测指令集中哪些指令被控端作出了响应包,而该响应包又包含在了与恶意程序对应的流量中,因而,可将探测指令集中,与恶意程序对应的流量中所包含的响应包对应的指令确定为威胁探测指令集;又或者

可以事先要求被控端作出响应包时,标记该响应包所针对的指令,即携带上指令标识,如此,根据探测指令集以及指令标识,即可从探测指令集中确定出对被感染主机有安全威胁的指令(即威胁探测指令集)。

另外,还可对恶意程序、探测指令集、威胁探测指令集、测试响应包进行对应存储,以便之后进行二次深入分析。

在一个实施例中,所述将所述通信流量进行过滤,获得与恶意程序对应的流量,包括:

对所述通信流量进行分析,以获取所述通信流量中的异常流量并丢弃正常流量;

将所述异常流量确定为所述与恶意程序对应的流量。

通过对该通信流量进行自动分析,可获得通信流量中的异常流量并丢弃正常流量,而异常流量通常就是被感染的被控端向主控端上传的文件、配置信息等,因而,可将异常流量确定为与恶意程序对应的流量。

在一个实施例中,所述对所述通信流量进行分析,以获取所述通信流量中的异常流量并丢弃正常流量,包括:

分析所述通信流量的行为特征;

根据所述行为特征,获取所述异常流量并丢弃正常流量,其中,所述行为特征包括以下至少一项:

上行流量特征;

下行流量特征;

SYN(Synchronize Sequence Numbers,同步序列编号)数据包占TCP(Transmission Control Protocol,传输控制协议)数据包数量的比例;

PSH数据包(TCP数据包报头的标志位)占TCP数据包数量的比例;

数据包的大小;

数据包的传输间隔;

心跳包的频率。

由于恶意程序产生的流量中包含的行为特征与正常程序产生的流量中包含的行为特征并不相同,如恶意程序通常上行流量大于下行下载流量而正常程序通常下行下载流量大于上行流量,恶意程序的SYN/PSH数据包占TCP数据包数量的比例也会高于正常程序很多,恶意程序会频繁向主控端发送心跳包来表征其存活性,以及恶意程序与主控端双方之间的认证指令以及恶意程序向主控端发送的远程操作指令往往携带很少附加数据甚至没有附加数据,就会导致恶意程序的行为特征中存在更高比例的小数据包、心跳包的发送频率更高、数据包的传输间隔更小,因而,根据上述行为特征,可准确判断出通信流量中的异常流量以及正常流量。

当然,在判断时还可结合时间段,根据多个某个时间段内的行为特征,来提取异常流量。

另外,行为特征包括但不限于上述特征,还可以有是否存在DNS行为等,例如:由于恶意程序的控制端的IP地址通常是动态变化而,而域名又是与域名绑定的,因而,恶意程序会不断进行DNS请求以获得控制端最新IP地址,试图与其建立连接,直至与控制端建立连接为止,而正常程序并不会不断进行DNS请求。

在一个实施例中,所述利用探测指令集对被控端的恶意程序进行指令测试,包括:

利用所述探测指令集中的多个指令对所述被控端的各恶意程序进行分批测试;当然,探测指令集可以是一个指令集也可以是多个指令集。

从所述探测指令集中提取与所述恶意程序相匹配的威胁探测指令集,包括:

从所述探测指令集的多个指令中依次提取与所述各恶意程序相匹配的威胁探测指令集。

由于被感染的被控端上的恶意程序可以有多个也可以有多种,因而,可利用探测指令集中的多个指令对所述被控端的各恶意程序进行分批测试,即对不同恶意程序进行分批测试,从而从所述探测指令集的多个指令中依次提取与所述各恶意程序相匹配的威胁探测指令集,如此,可对每个恶意程序都进行精准测试,以分别获得对被控端有安全威胁的不同恶意程序的威胁探测指令集以及测试响应包。

当然,在获取威胁探测指令集时,还可以不对被控端上的恶意程序进行分批测试,而是进行统一测试。

另外,在对内网设备进行安全测试时,也可以分批测试(如将得到的不同恶意程序对应的威胁探测指令集分批发送至内网设备,以实现分批测试)或者进行统一测试(如将得到的不同恶意程序对应的威胁探测指令集统一混合发送至内网设备,以实现统一测试),本领域技术人员可根据实际需求自由选择测试方式。

最后,还可以对威胁探测指令集进行标记,如对威胁探测指令集打上探测指令集的标记以及恶意程序的标记,以便确定威胁探测指令集的对应关系,之后也便于利用该威胁探测指令集确定出被感染的内网设备上所感染的恶意程序的具体种类。

下面将结合图2进一步详细说明本公开的技术方案:

如图2所示,该威胁探测指令集提取方法包括:

步骤210,感染有木马的被测端与控制端建立连接;

步骤220,控制端将探测指令集发送至被测端,利用探测指令集执行模糊测试;

步骤230,控制端将与被测端之间的通信流量进行过滤,以过滤出木马流量,丢弃正常流量;

步骤240,控制端存储执行结果,并根据木马流量,从探测指令集中提取出威胁探测指令集;

步骤250,控制端导出威胁探测指令集。

下面将结合图3进一步详细说明本公开的技术方案:

图3是出的是提取威胁探测指令集时搭建的部署环境。

1.控制端设备设置网络地址,作为流量导向地址。

2.被测端机器进行路由欺骗,引导木马流量至指定地址并建立连接。

3.控制端启动模糊测试,对符合测试结果的进行威胁指令提取。

具体步骤如下:

1.控制端,管理监控模块以web形式展现,可以设置网络地址,作为木马反弹链接地址。

2.被测端进行路由欺骗,使被测设备中潜藏木马所有外联行为均指向控制端。

4.控制端与木马建立连接后,由指令管理模块配置探测指令,任务管理模块向木马发送探测指令执行模糊测试任务,进而将与被测主机之间的通信流量进行过滤以获得木马流量,丢弃普通流量。

5.控制端将任务执行状态,探测结果等信息存入数据存储模块中,并提取威胁指令等信息,供管理监控页面调用。

本技术在日常网络流量中,无大规模投资的前提下,利用路由欺骗技术,实现了木马流量的诱捕,给出了配置模糊测试探测指令的接口,让用户方便地实现对内网目标机器的威胁指令提取。

然后利用提取存储威胁指令,对整个内网进行排查,实现对潜伏威胁的有效探测与标记。

另外,本公开提供便捷的用户操作界面;以任务(其中对每个木马进行模糊测试就是一个任务)为维度对每次探测指令集、模糊测试过程数据进行单独的存储管理,便于对任务过程进行二次深入分析;执行模块能对性能(进程、CPU)和崩溃率的信息进行统计分析;具有BUG监控功能,能从前端查看数据并进行统计分析,同时该管控系统能与其它常见模糊测试插件集成;系统能对生成的探测指令集进行管理,并能按指定的格式要求(如以16进制且键值对的形式)批量输出探测指令集;辅助分析模块具有丰富的模糊测试功能,支持黑白盒等多种模式的测试分析功能。

需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本公开并不受所描述的动作顺序的限制,因为依据本公开,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于可选实施例,所涉及的动作和模块并不一定是本公开所必须的。

此外,虽然采用特定次序描绘了各操作,但是这应当理解为要求这样操作以所示出的特定次序或以顺序次序执行,或者要求所有图示的操作应被执行以取得期望的结果。在一定环境下,多任务和并行处理可能是有利的。同样地,虽然在上面论述中包含了若干具体实现细节,但是这些不应当被解释为对本公开的范围的限制。在单独的实施例的上下文中描述的某些特征还可以组合地实现在单个实现中。相反地,在单个实现的上下文中描述的各种特征也可以单独地或以任何合适的子组合的方式实现在多个实现中。

尽管已经采用特定于结构特征和/或方法逻辑动作的语言描述了本主题,但是应当理解所附权利要求书中所限定的主题未必局限于上面描述的特定特征或动作。相反,上面所描述的特定特征和动作仅仅是实现权利要求书的示例形式。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号