一种异构执行体快速恢复方法、系统及架构
技术领域
本发明涉及拟态防御领域,具体涉及一种异构执行体快速恢复方法、系统及架构。
背景技术
拟态防御技术的特征是动态异构冗余DHR架构,异构执行体是动态冗余架构实现的基础。拟态构造设备发现威胁时,通常会将异常的异构执行体进行下线或者清洗,同时会将备份的执行体进行上线;备份执行体上线后,如何快速地将备份执行体的状态恢复到与当前在线执行体的状态一致,关系到拟态构造设备对外提供服务的稳定性以及可用性。因此,研究异构执行体的快速上线并恢复至在线状态,对于提高拟态构造设备的服务质量具有重要意义。
针对构执行体存在的上述问题,人们一直在寻求一种理想的技术解决方案。
发明内容
本发明的目的是提供一种异构执行体快速恢复方法、系统及架构。
为了实现上述目的,本发明第一方面提供了一种异构执行体快速恢复方法,包括以下步骤:
设置在线运行执行体池,将在线运行执行体池中的执行体配置为接收输入代理发送的数据,进行计算处理后,将计算处理结果发送至裁决器进行裁决输出;
设置在线备份运行执行体池,将在线备份运行执行体池中的执行体配置为接收输入代理发送的数据,只进行计算处理,不向裁决器发送计算处理结果;
设置离线备份执行体池,将离线备份执行体池中的执行体配置为未激活状态;
反馈控制器执行调度策略时,向在线运行执行体池输出第一调度命令,向在线备份运行执行体池输出第二调度命令和向离线备份执行体池输出第三调度命令:
所述第一调度命令执行:断开在线运行执行体池中的在线执行体与输入代理和裁决器之间的连接,以将在线执行体从在线运行执行体池中迁移出;
所述第二调度命令执行:在线备份执行体池中的在线备份执行体与输入代理的接连保持不变,与裁决器建立新的连接,以将在线备份执行体从在线备份执行体池中迁移入在线运行执行体池中;
所述第三调度命令执行:激活离线备份执行体池中的离线备份执行体,离线备份执行体开始与输入代理建立数据连接,以将离线备份执行体从激活离线备份执行体池中迁移入在线备份运行执行体池中。
基于上述,当裁决器裁决出威胁信息时,裁决器通知反馈控制器,反馈控制器根据裁决器的裁决结果执行调度,
输出的第一调度命令执行:断开在线运行执行体池中的问题在线执行体与输入代理和裁决器之间的连接;
输出的第二调度命令执行:在线备份执行体池中与问题在线执行体数量相同的在线备份执行体与输入代理的接连保持不变,与裁决器建立新的连接。
基于上述,反馈控制器接收外部输入的控制参数,根据所述控制参数的指示, 输出的第一调度命令执行:在在线运行执行体池中随机选择在线执行体执行断开与输入代理和裁决器之间的连接;输出的第二调度命令执行:在线备份执行体池中与问题在线执行体数量相同的在线备份执行体与输入代理的接连保持不变,与裁决器建立新的连接。
基于上述,所述控制参数包括在在线运行执行体池中调度的在线执行体的数量;所述在在线运行执行体池中随机选择在线执行体的步骤包括:当选择的在线执行体的数量为n,n≥2时,按照单数双数模式、顺序模式或随机模式确定n个在线执行体;其中,n小于或等于在线运行执行体池提供的执行体的数量m。
基于上述,所述在线备份运行执行体池中的每个在线备份运行执行体对应设置一模拟输出器,所述模拟输出器预置所有输出数据,当在线备份运行执行体接收到输入代理发送的数据后,所述模拟输出器对应输出预置的输出数据以实现对线备份运行执行体业务数据的反馈。
基于上述,所述在线运行执行体池、所述在线备份运行执行体池和所述离线备份执行体池中的执行体均通过通信接口与输入代理和裁决器连接,各个执行体内预置sendJudge应用程序,用于配置通信接口的连接状态。
基于上述,所述在线备份执行体池中执行体之间配置数据通信通道,当所述在线备份执行体池中执行体转入所述在线执行体池后,切断与在线备份执行体池中执行体的数据通路。
本发明第二方面提供了一种异构执行体快速恢复系统,包括:用于提供线备份运行执行体的在线运行执行体池,用于提供线备份运行执行体的在线备份运行执行体池,用于提供离线备份执行体的离线备份执行体池,以及反馈控制器;进行执行体调度时,执行所述的异构执行体快速恢复方法。
本发明第三方面提供了一种拟态防御架构,包括输入代理、异构执行体池与裁决输出,所述异构执行体池采用所述的异构执行体快速恢复系统。
本发明第四方面提供了一种计算机可读存储介质,其上存储有计算机指令,该计算机指令被处理器执行时实现所述的异构执行体快速恢复方法。
本发明相对现有技术具有突出的实质性特点和显著的进步,具体地说:
1、本发明通过将异构执行体池分为在线运行执行体池、在线备份执行体池、离线备份执行体池,异构执行体在切换时首先将在线备份执行体切换至在线运行执行体池,然后将离线备份执行体切换至在线备份执行体池中,采用“分级切换,分级运行”的方式提高了异构执行体的切换速度,实现了将在线备份执行体无缝地切换为在线执行体,大大提高了拟态构造设备对外提供的服务质量。
2、本发明通过“分级切换,分级运行”的方式,解决了在线异构执行体出现异常后,备份执行体上线时间较长、状态同步难的问题。
3、本发明通过在“分级切换,分级运行”方式的基础上进行执行体组合调度,使在线执行体池能够快速呈现出更加复杂的拟态场景,增强拟态构造架构带来的防御迷雾,使得攻击很难感知拟态界内服务功能实现的结构,也很难构建起可靠的攻击链,提高拟态构造设备的抗攻击能力。
附图说明
图1本发明实施例1提供的异构执行体快速恢复方法的系统框图。
图2本发明实施例2提供的异构执行体快速恢复方法的系统框图。
具体实施方式
实施例1
如图1所示,本实施例提供了一种异构执行体快速恢复方法,包括以下步骤:
设置在线运行执行体池,在线运行执行体池中的执行体为拟态构造设备对外提供服务以及发现异常威胁的必要元素;将在线运行执行体池中的执行体配置为接收输入代理发送的数据,进行计算处理后,将计算处理结果发送至裁决器进行裁决输出;
设置在线备份运行执行体池,将在线备份运行执行体池中的执行体配置为接收输入代理发送的数据,只进行计算处理,不向裁决器发送计算处理结果;
设置离线备份执行体池,将离线备份执行体池中的执行体配置为未激活状态;
反馈控制器执行调度策略时,向在线运行执行体池输出第一调度命令,向在线备份运行执行体池输出第二调度命令和向离线备份执行体池输出第三调度命令:
所述第一调度命令执行:断开在线运行执行体池中的在线执行体与输入代理和裁决器之间的连接,以将在线执行体从在线运行执行体池中迁移出;
所述第二调度命令执行:在线备份执行体池中的在线备份执行体与输入代理的接连保持不变,与裁决器建立新的连接,以将在线备份执行体从在线备份执行体池中迁移入在线运行执行体池中;
所述第三调度命令执行:激活离线备份执行体池中的离线备份执行体,离线备份执行体开始与输入代理建立数据连接,以将离线备份执行体从激活离线备份执行体池中迁移入在线备份运行执行体池中;此时离线备份执行体采用传统的数据同步方法慢慢地与在线备份执行体池中执行体的状态进行同步,数据同步完成后,离线备份执行体开始与输入代理建立数据连接,处理外部输入数据。
本实施例方法,为了解决在线异构执行体出现异常后,备份执行体上线时间较长、状态同步难的问题,当裁决器裁决出威胁信息时,裁决器通知反馈控制器,反馈控制器根据裁决器的裁决结果执行调度,
输出的第一调度命令执行:断开在线运行执行体池中的问题在线执行体与输入代理和裁决器之间的连接;
输出的第二调度命令执行:在线备份执行体池中与问题在线执行体数量相同的在线备份执行体与输入代理的接连保持不变,与裁决器建立新的连接。由于在线备份执行体池从上线以来一直与输入代理保持连接,因此在线备份执行体池的对外服务功能状态理论上与在线执行体的状态是一致的,因此,保证了能够快速的将在线备份执行体无缝地切换为在线执行体,大大提高了拟态构造设备对外提供的服务质量。
本实施例方法,为了解决能够快速呈现出更加复杂的拟态场景的问题,反馈控制器接收外部输入的控制参数,根据所述控制参数的指示,输出的第一调度命令执行:在在线运行执行体池中随机选择在线执行体执行断开与输入代理和裁决器之间的连接;输出的第二调度命令执行:在线备份执行体池中与问题在线执行体数量相同的在线备份执行体与输入代理的接连保持不变,与裁决器建立新的连接。
所述控制参数包括在在线运行执行体池中调度的在线执行体的数量;所述在在线运行执行体池中随机选择在线执行体的步骤包括:当选择的在线执行体的数量为n,n≥2时,按照单数双数模式、顺序模式或随机模式确定n个在线执行体;其中,n小于或等于在线运行执行体池提供的执行体的数量m。
通过在“分级切换,分级运行”方式的基础上进行执行体组合调度(单数双数模式、顺序模式或随机模式),使在线执行体池能够快速呈现出更加复杂的拟态场景,增强拟态构造架构带来的防御迷雾,使得攻击很难感知拟态界内服务功能实现的结构,也很难构建起可靠的攻击链,提高拟态构造设备的抗攻击能力。
在线备份执行体只与输入代理有交互,不参与裁决输出。由于在线备份执行体不参与裁决输出,在线备份执行体接收到外部输入以后,在没有裁决输出反馈的条件下,很难判断输入数据经过执行体业务处理以后,执行体处理的结果是否正常。因此在只有输入数据情况下,如何保证执行体业务的正常运行,是在线备份执行体设计的关键点。本实施例中,所述在线备份运行执行体池中的每个在线备份运行执行体对应设置一模拟输出器,所述模拟输出器预置所有输出数据,当在线备份运行执行体接收到输入代理发送的数据后,所述模拟输出器对应输出预置的输出数据以实现对线备份运行执行体业务数据的反馈。
基于上述,所述在线运行执行体池、所述在线备份运行执行体池和所述离线备份执行体池中的执行体均通过通信接口与输入代理和裁决器连接,各个执行体内预置sendJudge应用程序,用于配置通信接口的连接状态。当在线执行体上线后,只需将sendJudge应用程序启动,即可完成与裁决器的通信。在线备份执行体在备份状态时,具备与裁决器通信的接口eth1(IP地址、端口号,已经事先在sendJudge应用程序中配置完成);在备份状态时,eth1接口处于未激活状态,上线以后eth1处于激活状态。同理于离线备份执行体上线。
本实施例中,所述在线备份执行体池中执行体之间配置数据通信通道,当所述在线备份执行体池中执行体转入所述在线执行体池后,切断与在线备份执行体池中执行体的数据通路。在线备份执行体由于不与外界建立双向通信链路(只接收外部输入数据),外部的攻击对于在线备份执行体应是攻击不可达的,理论上无法完成对在线备份执行体的控制,因此很难做到将在线备份执行体作为翘板去访问其它在线备份执行体。在线备份执行体之间建立通信链路,在工程实践上,可以比较容易的实现在线备份执行体之间的数据同步。
实施例2
如图2所示,本实施例提供了一种拟态构造的web服务器的异构执行体快速恢复实例:
当输入代理接收到外部用户web请求后,会将web请求分发至在线运行执行体池中的执行体以及在线备份执行体池中的执行体,然后执行体中web服务求对web请求进行处理并进行写数据库操作。此时,在线运行执行体池以及在线备份执行体池中的数据库内容应是一致的;
当在线运行执行体池中的执行体出现异常时,在线备份执行体池中的执行体可以快速切换至在线执行体池中,数据库内容无需再进行同步,此时可以快速地对外提供服务;此时离线备份执行体池中的执行体会切换至在线备份执行体池,并与在线备份执行体池中的执行体数据库进行数据同步,由于此时离线备份执行体无需立刻上线,可以留有足够的时间与其它在线备份执行体进行数据库同步。数据库内容同步完成后,离线备份执行体与输入代理建立连接,此时离线执行体完成至在线备份执行体的迁移。
实施例3
本实施例提供了一种异构执行体快速恢复系统,包括:用于提供线备份运行执行体的在线运行执行体池,用于提供线备份运行执行体的在线备份运行执行体池,用于提供离线备份执行体的离线备份执行体池,以及反馈控制器;进行执行体调度时,执行所述的异构执行体快速恢复方法。
实施例4
本实施例提供了一种拟态防御架构,包括输入代理、异构执行体池与裁决输出,所述异构执行体池采用所述的异构执行体快速恢复系统。
实施例5
本实施例提供了一种计算机可读存储介质,其上存储有计算机指令,该计算机指令被处理器执行时实现所述的异构执行体快速恢复方法。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及方法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
上述集成的模块如果以软件功能单元的形式实现并作为独立的产品销售或使用时,还可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请实现上述实施例方法中的全部或部分流程,也可以通过计算机程序来指令相关的硬件来完成,上述的计算机程序可存储于计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,上述计算机程序包括计算机程序代码,上述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。