一种多合一编排模式的数据汇聚方法及装置转让专利

申请号 : CN202010943671.7

文献号 : CN112202724B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 郭兰杰高辉力赵粤征

申请人 : 绿盟科技集团股份有限公司北京神州绿盟科技有限公司

摘要 :

本申请涉及网络安全技术领域,尤其涉及一种多合一编排模式的数据汇聚方法及装置,所述方法应用于多合一编排架构,多合一编排架构包括至少两个上游响应节点、虚拟节点和下游响应节点,至少两个上游响应节点的输出端与虚拟节点的输入端连接,虚拟节点的输出端与下游响应节点的输入端连接,所述方法包括:虚拟节点分别获取各上游响应节点输出的安全事件数据;将各安全事件数据进行合并,生成包含有各安全事件数据的数据集合,以使下游响应节点从数据集合中获取各安全事件数据,并根据各安全事件数据进行相应的响应操作,这样,无需设置多个相同的下游响应节点,下游响应节点只需要对接虚拟节点的安全事件数据即可,提升了执行效率。

权利要求 :

1.一种多合一编排模式的数据汇聚方法,其特征在于,应用于多合一编排架构,所述多合一编排架构包括至少两个上游响应节点、虚拟节点和下游响应节点,所述至少两个上游响应节点的输出端与所述虚拟节点的输入端连接,所述虚拟节点的输出端与所述下游响应节点的输入端连接,所述方法包括:虚拟节点分别获取各上游响应节点输出的安全事件数据;

将各安全事件数据进行合并,生成包含有各安全事件数据的数据集合,以使下游响应节点从所述数据集合中获取所述各安全事件数据,并根据所述各安全事件数据进行相应的响应操作。

2.如权利要求1所述的方法,其特征在于,将各安全事件数据进行合并,生成包含有各安全事件数据的数据集合,具体包括:获得所述各安全事件数据对应的数据标识,其中,每一个安全事件数据对应一个数据标识;

根据所述各安全事件数据对应的数据标识,对所述各安全事件数据进行去重;

将去重后的各安全事件数据进行合并,获得包含有各安全事件数据的数据集合。

3.如权利要求2所述的方法,其特征在于,生成包含有各安全事件数据的数据集合之后,进一步包括:判断各上游响应节点对应的节点标识是否均出现在所述数据集合中;

若确定所述各节点标识均出现在所述数据集合中,则确定所述各上游响应节点均响应完成,并生成响应完成指令;

将所述响应完成指令发送给下游响应节点,以使所述下游响应节点根据所述响应完成指令,从所述数据集合中获取所述各安全事件数据。

4.如权利要求1‑3任一项所述的方法,其特征在于,所述安全事件数据至少包括以下一种或任意组合:源IP、目的IP、目的端口、安全事件名称、安全事件类型。

5.一种多合一编排模式的数据汇聚装置,其特征在于,应用于多合一编排架构,所述多合一编排架构包括至少两个上游响应节点、虚拟节点和下游响应节点,所述至少两个上游响应节点的输出端与所述虚拟节点的输入端连接,所述虚拟节点的输出端与所述下游响应节点的输入端连接,所述装置包括:获取模块,用于分别获取各上游响应节点输出的安全事件数据;

处理模块,用于将各安全事件数据进行合并,生成包含有各安全事件数据的数据集合,以使下游响应节点从所述数据集合中获取所述各安全事件数据,并根据所述各安全事件数据进行相应的响应操作。

6.如权利要求5所述的装置,其特征在于,将各安全事件数据进行合并,生成包含有各安全事件数据的数据集合时,处理模块具体用于:获得所述各安全事件数据对应的数据标识,其中,每一个安全事件数据对应一个数据标识;

根据所述各安全事件数据对应的数据标识,对所述各安全事件数据进行去重;

将去重后的各安全事件数据进行合并,获得包含有各安全事件数据的数据集合。

7.如权利要求6所述的装置,其特征在于,生成包含有各安全事件数据的数据集合之后,处理模块进一步用于:判断各上游响应节点对应的节点标识是否均出现在所述数据集合中;

若确定所述各节点标识均出现在所述数据集合中,则确定所述各上游响应节点均响应完成,并生成响应完成指令;

将所述响应完成指令发送给下游响应节点,以使所述下游响应节点根据所述响应完成指令,从所述数据集合中获取所述各安全事件数据。

8.如权利要求5‑7任一项所述的装置,其特征在于,所述安全事件数据至少包括以下一种或任意组合:源IP、目的IP、目的端口、安全事件名称、安全事件类型。

9.一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现权利要求1‑4任一项所述方法的步骤。

10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于:所述计算机程序被处理器执行时实现权利要求1‑4任一项所述方法的步骤。

说明书 :

一种多合一编排模式的数据汇聚方法及装置

技术领域

[0001] 本申请涉及网络安全技术领域,尤其涉及一种多合一编排模式的数据汇聚方法及装置。

背景技术

[0002] 目前,安全编排和自动化响应(Security Orchestration,Automation and Response,SOAR)在网络安全技术领域是十分重要的,SOAR能够对现有的安全能力进行灵活编排,接入多种数据源,并通过编写剧本完成场景构建,实现自动化运营,编排流程的模式包括串行编排模式、并行编排模式、一分多编排模式、多合一编排模式等。
[0003] 特别地,在多合一编排模式下,由于下游响应节点的输入由上游响应节点决定,上游响应节点的个数越多,则下游响应节点在安全事件数据的选择上越复杂,由于下游响应节点仅支持一个上游响应节点的数据的响应操作,因此,在所有上游响应节点均有响应操作需求,且响应操作需求相同的情况下,需要编排多个相同功能的下游响应节点,才能够满足多个上游响应节点的响应操作需求,但是,现有技术中的这种方法会导致操作流程复杂,并且,降低了CPU使用率。

发明内容

[0004] 本申请实施例提供一种多合一编排模式的数据汇聚方法及装置,以简化多合一场景的操作流程,并简化用户编排的复杂性。
[0005] 本申请实施例提供的具体技术方案如下:
[0006] 一种多合一编排模式的数据汇聚方法,应用于多合一编排架构,所述多合一编排架构包括至少两个上游响应节点、虚拟节点和下游响应节点,所述至少两个上游响应节点的输出端与所述虚拟节点的输入端连接,所述虚拟节点的输出端与所述下游响应节点的输入端连接,所述方法包括:
[0007] 虚拟节点分别获取各上游响应节点输出的安全事件数据;
[0008] 将各安全事件数据进行合并,生成包含有各安全事件数据的数据集合,以使下游响应节点从所述数据集合中获取所述各安全事件数据,并根据所述各安全事件数据进行相应的响应操作。
[0009] 可选的,将各安全事件数据进行合并,生成包含有各安全事件数据的数据集合,具体包括:
[0010] 获得所述各安全事件数据对应的数据标识,其中,每一个安全事件数据对应一个数据标识;
[0011] 根据所述各安全事件数据对应的数据标识,对所述各安全事件数据进行去重;
[0012] 将去重后的各安全事件数据进行合并,获得包含有各安全事件数据的数据集合。
[0013] 可选的,生成包含有各安全事件数据的数据集合之后,进一步包括:
[0014] 判断各上游响应节点对应的节点标识是否均出现在所述数据集合中;
[0015] 若确定所述各节点标识均出现在所述数据集合中,则确定所述各上游响应节点均响应完成,并生成响应完成指令;
[0016] 将所述响应完成指令发送给下游响应节点,以使所述下游响应节点根据所述响应完成指令,从所述数据集合中获取所述各安全事件数据。
[0017] 可选的,所述安全事件数据至少包括以下一种或任意组合:源IP、目的IP、目的端口、安全事件名称、安全事件类型。
[0018] 一种多合一编排模式的数据汇聚装置,应用于多合一编排架构,所述多合一编排架构包括至少两个上游响应节点、虚拟节点和下游响应节点,所述至少两个上游响应节点的输出端与所述虚拟节点的输入端连接,所述虚拟节点的输出端与所述下游响应节点的输入端连接,所述装置包括:
[0019] 获取模块,用于分别获取各上游响应节点输出的安全事件数据;
[0020] 处理模块,用于将各安全事件数据进行合并,生成包含有各安全事件数据的数据集合,以使下游响应节点从所述数据集合中获取所述各安全事件数据,并根据所述各安全事件数据进行相应的响应操作。
[0021] 可选的,将各安全事件数据进行合并,生成包含有各安全事件数据的数据集合时,处理模块具体用于:
[0022] 获得所述各安全事件数据对应的数据标识,其中,每一个安全事件数据对应一个数据标识;
[0023] 根据所述各安全事件数据对应的数据标识,对所述各安全事件数据进行去重;
[0024] 将去重后的各安全事件数据进行合并,获得包含有各安全事件数据的数据集合。
[0025] 可选的,生成包含有各安全事件数据的数据集合之后,处理模块进一步用于:
[0026] 判断各上游响应节点对应的节点标识是否均出现在所述数据集合中;
[0027] 若确定所述各节点标识均出现在所述数据集合中,则确定所述各上游响应节点均响应完成,并生成响应完成指令;
[0028] 将所述响应完成指令发送给下游响应节点,以使所述下游响应节点根据所述响应完成指令,从所述数据集合中获取所述各安全事件数据。
[0029] 可选的,所述安全事件数据至少包括以下一种或任意组合:源IP、目的IP、目的端口、安全事件名称、安全事件类型。
[0030] 一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上述多合一编排模式的数据汇聚方法的步骤。
[0031] 一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述多合一编排模式的数据汇聚方法的步骤。
[0032] 本申请实施例中,虚拟节点分别获取各上游响应节点输出的安全事件数据,将获取到的各安全事件数据进行合并,生成包含有各安全事件数据的数据集合,以使下游响应节点从虚拟节点的数据集合中获取各安全事件数据,并根据各安全事件数据进行相应的响应操作,这样,在上游响应节点和下游响应节点之间设置虚拟节点,各上游响应节点将安全事件数据输出至虚拟节点,下游响应节点从虚拟节点的数据集合中获取各安全事件数据,当各上游响应节点均需要执行下游响应节点定义的响应操作时,无需编排多个相同功能的下游响应节点,只需要从虚拟节点的数据集合中获取各安全事件数据,以处理来自于各上游响应节点的数据,简化了操作流程,并且,对于SOAR引擎来说,不需要从各上游响应节点去获取数据,只需要对接虚拟节点的安全事件数据即可,降低了CPU使用率,提升了执行效率。

附图说明

[0033] 图1为现有技术中多合一编排模式的编排示意图;
[0034] 图2为本申请实施例中一种多合一编排模式的数据汇聚方法的流程图;
[0035] 图3为本申请实施例中多合一编排模式的数据结构的示意图;
[0036] 图4为本申请实施例中编排界面示意图;
[0037] 图5为本申请实施例中构建虚拟节点的示意图;
[0038] 图6为本申请实施例中包含逻辑判定模块的编排示意图;
[0039] 图7为本申请实施例中多合一编排模式的数据汇聚装置的结构示意图;
[0040] 图8为本申请实施例中电子设备的结构示意图。

具体实施方式

[0041] 下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,并不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
[0042] 目前,安全编排和自动化响应(Security Orchestration,Automation and Response,SOAR)在网络安全技术领域是十分重要的,SOAR能够对现有的安全能力进行灵活编排,接入多种数据源,并通过编写剧本完成场景构建,实现自动化运营,编排流程支持复杂灵活的模式,例如,串行编排模式、并行编排模式、一分多编排模式、多合一编排模式等。
[0043] 特别地,在多合一编排模式下,由于下游响应节点的输入数据由上游响应节点的输出的安全事件数据决定,因此,用户在进行编排时,将面临多个数据源的选择,若上游响应节点的个数越多,则下游响应节点在安全事件数据的选择上越复杂,大大增加了使用难度。
[0044] 并且,由于下游响应节点仅支持一个上游响应节点输出的安全事件数据的响应操作,因此,在所有上游响应节点均有响应操作需求,且响应操作需求均相同的情况下,需要编排多个相同功能的下游响应节点,以处理不同上游响应节点来源的安全事件数据,这样,才能够满足多个上游响应节点的响应操作需求,参阅图1所示,为现有技术中多合一编排模式的编排示意图,由于上游响应节点A和上游响应节点B均有响应操作需求,因此,需要设置两个下游响应节点C,才能够满足上游响应节点A和上游响应节点B的响应操作需求,但是,现有技术中的这种方法会导致操作流程复杂且冗余,并且,降低了中央处理器(Central Processing Unit/Processor,CPU)的使用率。
[0045] 本申请实施例中,提供了一种多合一编排模式的数据汇聚方法,虚拟节点分别获取各上游响应节点输出的安全事件数据,并将获取到各安全事件数据进行合并,生成包含有各安全事件数据的数据集合,以使下游响应节点从虚拟节点的数据集合中获取各安全事件数据,并根据各安全事件数据进行相应的响应操作,这样,设置虚拟节点,并将各上游响应节点输出的安全事件数据存储到虚拟节点中,下游响应节点从虚拟节点中获取各安全事件数据,并根据获取到的各安全事件数据进行相应的响应操作,当各上游响应节点均需要执行下游响应节点定义的响应操作时,无需编排多个相同的下游响应操作节点,就能够处理来与各上游响应节点的安全事件数据,简化了操作流程,并且,对于SOAR引擎来说,不需要从各上游响应节点去获取安全事件数据,只需要对接虚拟节点中存储的安全事件数据即可,降低了CPU使用率,提升了执行效率。
[0046] 基于上述实施例,参阅图2所示,为本申请实施例中一种多合一编排模式的数据汇聚方法的流程图,具体包括:
[0047] 步骤200:虚拟节点分别获取各上游响应节点输出的安全事件数据。
[0048] 本申请实施例中的方法应用于多合一编排架构,多合一编排架构包括至少两个上游响应节点、虚拟节点和下游响应节点,至少两个上游响应节点的输出端与虚拟节点的输入端连接,虚拟节点的输出端与下游响应节点的输入端连接,当至少两个上游响应节点执行完成响应操作之后,输出安全事件数据,进而虚拟节点分别获取各上游响应节点输出的安全事件数据。
[0049] 其中,安全事件数据至少包括以下一种或任意组合:源IP、目的IP、目的端口、安全事件名称、安全事件类型。
[0050] 其中,上游响应节点的响应操作例如可以为全局封堵、主机隔离等,本申请实施例中对此并不进行限制。
[0051] 进一步地,虚拟节点在分别获取各上游响应节点输出的安全事件数据之前,首先需要对多合一编排模式的数据结构进行定义,具体地,定义各上游响应节点和下游响应节点的点信息、上游响应节点与下游响应节点之间的边的边信息、边起点和边终点。
[0052] 其中,上游响应节点和下游响应节点的点信息的核心字段至少包括节点标识和属性信息,例如,可以通过nodelist定义点信息,点信息包括节点ID和属性信息,属性信息例如可以为封堵类型,设备类型等,本申请实施例中对此并不进行限制。
[0053] 上游响应节点与下游响应节点之间的边的边信息,边表征上游响应节点与下游响应节点之间的连线,例如,可以通过linelist定义边信息。
[0054] 边起点设置在上游响应节点处,例如,可以通过from定义边起点。
[0055] 边终点设置在下游响应节点处,例如,可以通过to定义边终点。
[0056] 例如,参阅图3所示,为本申请实施例中多合一编排模式的数据结构的示意图,上游响应节点A、上游响应节点B、上游响应节点C和下游响应节点D为点,在上游响应节点A、上游响应节点B、上游响应节点C设置边起点,并在下游响应节点D处设置边终点,上游响应节点A与下游响应节点D之间的连线、上游响应节点B与下游响应节点D之间的连线、上游响应节点C与下游响应节点D之间的连线为边。
[0057] 下面采用一个具体的例子对本申请实施例中多合一编排模式的数据结构进行详细阐述,参阅图4所示,为本申请实施例中编排界面示意图。
[0058] 其中,安全事件_1是一种威胁事件,安全事件的属性数据包括规则ID:490082,规则名称:APACHE_HTTP_SERVCER,关联规则模板:普通模板,关联事件模板:针对APACHE_HTTP_SERVCER的模板,规则状态:启用,聚合窗口(s):300,聚合字段:sip.dip。
[0059] 上游响应节点分别为A和B,即全局封堵_1和主机隔离_1。
[0060] 其中,全局封堵_1的节点标识为A,属性数据为封堵类型:IP封堵,封堵对象:源IP,封堵原因,eeee,设备类型:ADS_V4.5R90F00,自动解除:开启,封堵时间(min):1。
[0061] 主机隔离_1的节点标识为B,属性数据中包括隔离对象:源IP,设备类型:ADS_V4.5R90F00,隔离原因:ww,自动解除:开启,隔离时间(min):1。
[0062] 下游响应节点的节点标识为C,为通知预警_1,其中,属性数据为:主题:威胁事件产生,收件人:glj@1.com.cn,内容概述:包含安全时间基本信息。
[0063] 在编排完成数据结构之后,基于编排完成的数据结构,判断是否检测到多条to C的边,若确定有多条to C的边,则确定下游响应节点C具有多个上游响应节点,也就是说,判断一个下游响应节点是否对应至少两个上游响应节点,若确定一个下游响应节点对应至少两个上游响应节点,则此时构建一个虚拟节点join_C。
[0064] 需要说明的是,该虚拟节点join_C对用户不可见,也就是说,用户看到的还是下游响应节点C,无法看到虚拟节点join_C,join_C仅用于接收各上游响应节点输出的各安全事件数据,将各安全事件数据进行合并,并将合并后的各安全事件数据进行存储,参阅图5所示,为本申请实施例中构建虚拟节点的示意图,A为上游响应节点,B为另一个上游响应节点,join_C为虚拟节点,C为下游响应节点。
[0065] 步骤210:将各安全事件数据进行合并,生成包含有各安全事件数据的数据集合,以使下游响应节点从数据集合中获取所述各安全事件数据,并根据各安全事件数据进行相应的响应操作。
[0066] 本申请实施例中,当虚拟节点分别获取到各上游响应节点输出的安全事件数据之后,则将各安全事件数据进行合并,并生成包含有各安全事件数据的数据集合,然后,虚拟节点存储生成的数据集合,进而下游响应节点能够从虚拟节点中的数据集合中获取各安全事件数据,并根据安全事件数据进行相应的响应操作。
[0067] 具体地,在将各安全事件数据进行合并,生成包含有各安全事件数据的安全事件数据集合时,具体包括:
[0068] S1:获得各安全事件数据对应的数据标识。
[0069] 其中,每一个安全事件数据对应一个数据标识。
[0070] 本申请实施例中,每一个安全事件数据都对应一个数据标识,因此,在获取到各上游响应节点输出的安全事件数据之后,获得各安全事件数据对应的数据标识。
[0071] 其中,各安全事件数据对应的数据标识用于区分各安全事件数据,若安全事件数据相同,则数据标识相同。
[0072] 例如,假设上游响应节点A输出的安全事件数据分别为A1和X,A1对应的数据标识为1,X对应的数据标识为2,假设上游响应节点B输出的安全事件数据分别为B1和X,B1对应的数据标识为3,X对应的数据标识为2。
[0073] 需要说明的是,若各上游响应节点输出的安全事件数据是相同的,则相同的安全事件数据对应的数据标识也是相同的。
[0074] 例如,假设上游响应节点A输出的安全事件数据分别为A1和Y,上游响应节点B输出的安全事件数据分别为B1和Y,则上游响应节点A输出的安全事件数据Y对应的数据标识为1,上游响应节点B输出的安全事件数据Y对应的数据标识也为1。
[0075] S2:根据各安全事件数据对应的数据标识,对所述各安全事件数据进行去重。
[0076] 本申请实施例中,在获得各上游响应节点输出的安全事件数据对应的数据标识之后,根据各安全事件数据对应的数据标识,对各安全事件数据进行去重,也就是说,不考虑安全事件数据是从哪一个上游响应节点获取到的,针对获取到的这些安全事件数据,将重复的安全事件数据删除。
[0077] 具体地,根据各安全事件数据对应的数据标识,若确定存在重复的数据标识,则删除其中一个数据标识对应的安全事件数据,从而实现对各安全事件进行去重。
[0078] 例如,假设上游节点例如,假设上游响应节点A输出的安全事件数据分别为[a1,a2,x],上游响应节点B输出的安全事件数据为[b1,x],可知,上游响应节点A和上游响应节点B输出的安全事件数据x为重复的安全事件数据,则选择其中一个x,并将选择出的x删除,假设选择删除上游响应节点A输出的安全事件数据,此时,虚拟节点获取到的各上游响应节点输出的安全事件数据分别为a1、a2、b1、x。
[0079] S3:将去重后的各安全事件数据进行合并,获得包含有各安全事件数据的数据集合。
[0080] 本申请实施例中,在获得去重后的各安全事件数据之后,将各安全事件数据进行合并,生成包含有各安全事件数据的数据集合。
[0081] 例如,假设上游响应节点A的输出为[a1,a2,x],上游响应节点B的输出为[b1,x],则虚拟节点中的数据集合join_C为[a1,a2,b1,x]。
[0082] 这样,虚拟节点获取各上游响应节点输出的安全事件数据,取并集并生成数据集合,而下游响应节点的输入将和各上游响应节点解耦,不论上游流程块有多少个上游响应节点,即不论上游有多少个分支,这里只需要处理虚拟节点join_C的一个分支。
[0083] 进一步地,将各安全事件数据进行合并,生成包含有各安全事件数据的数据集合之后,判断各上游响应节点是否均响应完成,若各上游响应节点均执行完成响应操作,则下游响应节点才能够从虚拟节点的数据集合中获取到各安全事件数据,则判断各上游响应节点是否均响应完成,具体包括:
[0084] S1:判断各上游响应节点对应的节点标识是否均出现在数据集合中。
[0085] 本申请实施例中,上游响应节点在执行完成相应的响应操作之后,将响应完成之后的安全事件数据输出到虚拟节点中,进而虚拟节点接收上游响应节点输出的安全事件数据,虚拟节点接收到的上游响应节点输出的安全事件数据中,携带有节点标识,节点标识为上游响应节点的ID,在当前流程中全局唯一,节点标识用于表征安全事件数据来源于哪一个上游响应节点,若上游响应节点执行完成相应的响应操作,若上游响应节点未执行完成相应的响应操作,则无法将响应完成之后的安全事件数据输出到虚拟节点中,进而也无法将其对应的节点标识输出至虚拟节点处,只有虚拟节点接收到所有上游响应节点对应的节点标识,才能够认为各上游响应节点均响应完成,进而下游响应节点从虚拟节点中获取各安全事件数据,并根据各安全事件数据进行相应的响应操作,这样,当各上游响应节点均执行完成响应操作,真正调用到下游响应节点,下游响应节点引用的数据也只有虚拟节点中的安全事件数据了,这里不再需要用户一个一个指定上游分支的具体来源,能够在对安全事件来源分支不敏感的场景下,通过虚拟节点的构建,实现对用户的透明化,使得整体编排流程更加简洁清晰。
[0086] 例如,假设在编排过程中,编排上游响应节点A和上游响应节点B,上游响应节点A对应的节点标识为a,上游响应节点B对应的节点标识为b,当上游响应节点A执行完成响应操作之后,触发一次完成性校验,即判断节点标识a和b是否均出现数据集合中,若此时发现节点标识b不存在,则等待,当上游响应节点B执行完成响应操作之后,再触发一次完成性校验,若此时节点标识a和节点标识b均出现在数据集合中,则认为上游响应节点均响应完成,并继续往下游响应节点执行。
[0087] S2:若确定各节点标识均出现在数据集合中,则确定各上游响应节点均响应完成,并生成响应完成指令。
[0088] 本申请实施例中,若确定各上游响应节点对应的节点标识均出现在数据集合中,则确定各上游响应节点均执行完成响应操作,那么此时生成响应完成指令。
[0089] S3:将响应完成指令发送给下游响应节点,以使下游响应节点根据响应完成指令,从数据集合中获取各安全事件数据。
[0090] 本申请实施例中,虚拟节点若确定各上游响应节点均响应完成,则生成响应完成指令,并将响应完成指令发送给下游响应节点,以使下游响应节点根据响应完成指令,获知各上游响应节点均已响应完成,并从虚拟节点的数据集合中获取各安全事件数据,进而根据各安全事件数据进行相应的响应操作。
[0091] 其中,响应完成指令用于通知下游响应节点,各上游响应节点均已执行完成响应操作。
[0092] 进一步地,本申请实施例中,还可以在上游响应节点前,设置研判取证节点和逻辑判定节点,研判取证节点用于获取当前检测到的安全事件情报取证结果,逻辑判定节点用于对安全事件进行判定,参阅图6所示,为本申请实施例中包含逻辑判定模块的编排示意图,在上游响应节点全局封堵之前设置研判取证_1和逻辑判定_1,通过研判取证_1获取当前检测到的安全事件情报取证结果,通过逻辑判定_1判定当前检测到的安全事件是否成功命中情报。
[0093] 例如,获取当前检测到的安全事件情报取证结果,即攻击者的IP为:36.35.36.36,然后,根据IP黑名单,判断攻击者的IP是否为IP黑名单中的其中一个IP,若攻击者的IP为IP黑名单的其中一个IP,则确定当前检测到的安全事件的取证结果为成功,那么就能继续流转下面的流程,即,各上游响应节点开始执行相应的响应操作,若攻击者的IP不是IP黑名单的其中一个IP,那么就将此次安全事件丢弃。
[0094] 又例如,在上游响应节点通知预警前设置逻辑判定_2,判定当前检测到的安全事件的事件类型是否为web漏洞攻击,若确定当前检测到的安全事件的事件类型为web漏洞攻击,则上游响应节点通知预警根据安全事件执行相应的响应操作。
[0095] 本申请实施例中,虚拟节点分别获取各上游响应节点输出的安全事件数据,并将获取到各安全事件数据进行合并,生成包含有各安全事件数据的数据集合,以使下游响应节点从虚拟节点的数据集合中获取各安全事件数据,并根据各安全事件数据进行相应的响应操作,相比与现有技术,在多合一编排模式下,不需要用户在进行编排的时候,去指定到上游响应节点具体的来源,而是对流转到当前块的安全事件进行操作,至于上游响应节点来源于众多上游响应节点的哪一个节点,并不需要关心,简化了操作流程,使得整体编排流程更加简洁清晰同时,对于SOAR引擎来说,不需要去多处主动获取安全事件数据,只需要对接虚拟节点的安全事件数据即可,降低了CPU使用率,提升了执行效率,引擎的资源使用率也更加高效。
[0096] 基于同一发明构思,本申请实施例中还提供了一种多合一编排模式的数据汇聚装置,该多合一编排模式的数据汇聚装置可以是硬件结构、软件模块、或硬件结构加软件模块。基于上述实施例,参阅图7所示为本申请实施例中多合一编排模式的数据汇聚装置的结构示意图,具体包括:
[0097] 获取模块700,用于分别获取各上游响应节点输出的安全事件数据;
[0098] 处理模块710,用于将各安全事件数据进行合并,生成包含有各安全事件数据的数据集合,以使下游响应节点从所述数据集合中获取所述各安全事件数据,并根据所述各安全事件数据进行相应的响应操作。
[0099] 可选的,将各安全事件数据进行合并,生成包含有各安全事件数据的数据集合时,处理模块710具体用于:
[0100] 获得所述各安全事件数据对应的数据标识,其中,每一个安全事件数据对应一个数据标识;
[0101] 根据所述各安全事件数据对应的数据标识,对所述各安全事件数据进行去重;
[0102] 将去重后的各安全事件数据进行合并,获得包含有各安全事件数据的数据集合。
[0103] 可选的,生成包含有各安全事件数据的数据集合之后,处理模块710进一步用于:
[0104] 判断各上游响应节点对应的节点标识是否均出现在所述数据集合中;
[0105] 若确定所述各节点标识均出现在所述数据集合中,则确定所述各上游响应节点均响应完成,并生成响应完成指令;
[0106] 将所述响应完成指令发送给下游响应节点,以使所述下游响应节点根据所述响应完成指令,从所述数据集合中获取所述各安全事件数据。
[0107] 可选的,所述安全事件数据至少包括以下一种或任意组合:源IP、目的IP、目的端口、安全事件名称、安全事件类型。
[0108] 基于上述实施例,参阅图8所示为本申请实施例中电子设备的结构示意图。
[0109] 本申请实施例提供了一种电子设备,该电子设备可以包括处理器810(Center Processing Unit,CPU)、存储器820、输入设备830和输出设备840等,输入设备830可以包括键盘、鼠标、触摸屏等,输出设备840可以包括显示设备,如液晶显示器(Liquid Crystal Display,LCD)、阴极射线管(Cathode Ray Tube,CRT)等。
[0110] 存储器820可以包括只读存储器(ROM)和随机存取存储器(RAM),并向处理器810提供存储器820中存储的程序指令和数据。在本申请实施例中,存储器820可以用于存储本申请实施例中任一种多合一编排模式的数据汇聚方法的程序。
[0111] 处理器810通过调用存储器820存储的程序指令,处理器810用于按照获得的程序指令执行本申请实施例中任一种多合一编排模式的数据汇聚方法。
[0112] 基于上述实施例,本申请实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述任意方法实施例中的多合一编排模式的数据汇聚方法。
[0113] 本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD‑ROM、光学存储器等)上实施的计算机程序产品的形式。
[0114] 本申请是参照根据本申请的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
[0115] 这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
[0116] 这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
[0117] 显然,本领域的技术人员可以对本申请进行各种改动和变型而不脱离本申请的精神和范围。这样,倘若本申请的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。