本发明涉及网络安全技术领域,尤其涉及一种拟态表决器的安全运行方法及系统。
背景技术:
在当今网络环境下,web服务系统作为重要的服务承载和提供平台,是政府、企业以及个人在互联网上的虚拟代表,汇集了海量数据资源,如用户信息、企业数据、金融财政、商业机密、知识产权、客户订单信息等。其重要程度不言而喻。因此,web服务器成为网络黑客的主要攻击对象。网络黑客利用各种途径、各种攻击工具、各种欺骗手段来获取其想得到的信息。
实践证明,拟态web服务器作为拟态防御技术的重要工程实现,能够有效地防御各类漏洞/后门利用攻击,保障了web服务器的安全性。其中,发挥重要作用的是拟态表决器功能组件。拟态表决器能够同时接收后端多个异构执行体的服务响应结果,并按照多数一致或者完全一致的表决策略对响应结果进行比较。后端执行体的异构冗余设计使得攻击者无法同时对所有的执行体攻击成功,因此表决器根据接收到的多数正确的结果判决最终的正确结果,并反馈给用户。
然而,在整个拟态防御架构中,表决器虽然能够对执行体的响应结果进行择多判决,增加结果的正确性。但是一般情况下,表决器不包含在拟态防御架构所设置的拟态界之内,因此拟态表决器的安全防护相对执行体略显薄弱,因此,如何有效的进一步提高表决器的安全性是一项亟待解决的问题。
本发明基于软件多样化和移动目标防御的思想,对拟态表决器软件进行异构化编译,同时根据用户需求对表决器变体进行周期性的随机调度,增加了表决器服务的不确定性,提高了攻击者的攻击难度,保障了拟态表决器的安全性。
技术实现要素:
有鉴于此,本发明提供了一种拟态表决器的安全运行方法,能够基于移动目标的思想,对拟态表决器软件进行异构化编译,同时根据用户需求对表决器变体进行周期性的随机调度,增加了表决器服务的不确定性,提高了攻击者的攻击难度,保障了拟态表决器的安全性。
本发明提供了一种拟态表决器的安全运行方法,包括:
存储异构编译算法;
获取用户的安全需求参数;
基于所述参数调用异构编译算法生成特定数量的拟态表决器变体;
存储生成的拟态表决器变体;
基于所述参数从存储的拟态表决器变体中随机调用一个拟态表决器变体进行上线服务。
优选地,所述方法还包括:
实时监控存储的拟态表决器以及线上运行的拟态表决器的运行状态;
根据得到的监控状态进行周期性的拟态表决器变体随机上线服务。
优选地,所述获取用户的安全需求参数,包括:
获取用户安全需求的变体数量和调度周期。
优选地,所述基于所述参数调用编译算法生成特定数量的拟态表决器变体,包括:
基于所述变体数量调用编译算法生成特定数量的拟态表决器变体。
优选地,所述基于所述参数从存储的拟态表决器变体中随机调用一个拟态表决器变体进行上线服务,包括:
基于所述调度周期从存储的拟态表决器变体中随机调用一个拟态表决器变体进行上线服务。
一种拟态表决器的安全运行系统,包括:
异构编译算法库,用于存储异构编译算法;
用户交互模块,用于获取用户的安全需求参数;
异构算法调用模块,用于基于所述参数调用异构编译算法生成特定数量的拟态表决器变体;
拟态表决器变体库,用于存储生成的拟态表决器变体;
变体动态调度模块,用于基于所述参数从存储的拟态表决器变体中随机调用一个拟态表决器变体进行上线服务。
优选地,所述系统还包括:
表决器变体状态监测模块,用于实时监控存储的拟态表决器以及线上运行的拟态表决器的运行状态;
所述变体动态调度模块,还用于根据得到的监控状态进行周期性的拟态表决器变体随机上线服务。
优选地,所述用户交互模块具体用于:
获取用户安全需求的变体数量和调度周期。
优选地,所述异构算法调用模块具体用于:
基于所述变体数量调用编译算法生成特定数量的拟态表决器变体。
优选地,所述变体动态调度模块具体用于:
基于所述调度周期从存储的拟态表决器变体中随机调用一个拟态表决器变体进行上线服务。
综上所述,本发明公开了一种拟态表决器的安全运行,当需要实现拟态表决器的安全运行时,首先存储异构编译算法,获取用户的安全需求参数,然后基于参数调用异构编译算法生成特定数量的拟态表决器变体,存储生成的拟态表决器变体,基于参数从存储的拟态表决器变体中随机调用一个拟态表决器变体进行上线服务。本发明能够基于软件多样化和移动目标防御的思想,对拟态表决器软件进行异构化编译,同时根据用户需求对表决器变体进行周期性的随机调度,增加了表决器服务的不确定性,提高了攻击者的攻击难度,保障了拟态表决器的安全性。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明公开的一种拟态表决器的安全运行方法实施例1的方法流程图;
图2为本发明公开的一种拟态表决器的安全运行方法实施例2的方法流程图;
图3为本发明公开的一种拟态表决器的安全运行方法实施例3的方法流程图;
图4为本发明公开的一种拟态表决器的安全运行系统实施例1的结构示意图;
图5为本发明公开的一种拟态表决器的安全运行系统实施例2的结构示意图;
图6为本发明公开的一种拟态表决器的安全运行系统实施例3的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
如图1所示,为本发明公开的一种拟态表决器的安全运行方法实施例1的方法流程图,所述方法可以包括以下步骤:
s101、存储异构编译算法;
当需要实现拟态表决器的安全运行时,首先存储用于生成拟态表决器变体的异构编译算法。需要说明的是,存储的异构编译算法是经过筛选过的,能够确保异构编译算法在提高拟态表决器变体异构性的同时不对表决器自身的性能产生较大的影响。
s102、获取用户的安全需求参数;
同时,获取用户的安全需求参数。其中,用户的安全需求参数主要包括变体数量、调度周期等。
s103、基于参数调用异构编译算法生成特定数量的拟态表决器变体;
在获取到用户的安全需求参数后,进一步根据获取到的参数调用存储的异构编译算法,根据需求生成特定数量的拟态表决器变体。由此可以看出,结合异构冗余思想,对拟态表决器进行异构编译,能够得到功能相同、结构不同的表决器软件,增加了攻击者对表决器软件进行逆向攻击或者漏洞利用攻击的难度,保障了拟态表决器的安全性。
s104、存储生成的拟态表决器变体;
在生成特定数量的拟态表决器变体后,对生成的拟态表决器变体进行存储。
s105、基于参数从存储的拟态表决器变体中随机调用一个拟态表决器变体进行上线服务。
然后,根据用户的安全需求参数从存储的拟态表决器变体中随机调用一个拟态表决器变体进行上线服务。由此可以看出,能够结合动态思想,根据用户需求对拟态表决器的异构变体实行周期性的随机调度上线,在保障系统表决功能正常的前提下,增加了拟态表决器的动态性和服务的不确定性,拟态表决器变体选择的动态性增加了url(uniformresourcelocator,统一资源定位符)的传输因素的不确定性,缩短了攻击者进行攻击操作的时间周期,降低了攻击成功的概率。
综上所述,在上述实施例中,当需要实现拟态表决器的安全运行时,首先存储异构编译算法,获取用户的安全需求参数,然后基于参数调用异构编译算法生成特定数量的拟态表决器变体,存储生成的拟态表决器变体,基于参数从存储的拟态表决器变体中随机调用一个拟态表决器变体进行上线服务。本发明能够基于软件多样化和移动目标的防御思想,对拟态表决器软件进行异构化编译,同时根据用户需求对表决器变体进行周期性的随机调度,增加了表决器服务的不确定性,提高了攻击者的攻击难度,保障了拟态表决器的安全性。
如图2所示,为本发明公开的一种拟态表决器的安全运行方法实施例2的方法流程图,所述方法可以包括以下步骤:
s201、存储异构编译算法;
当需要实现拟态表决器的安全运行时,首先存储用于生成拟态表决器变体的异构编译算法。需要说明的是,存储的异构编译算法是经过筛选过的,能够确保异构编译算法在提高拟态表决器变体异构性的同时不对表决器自身的性能产生较大的影响。
s202、获取用户的安全需求参数;
同时,获取用户的安全需求参数。其中,用户的安全需求参数主要包括变体数量、调度周期等。
s203、基于参数调用异构编译算法生成特定数量的拟态表决器变体;
在获取到用户的安全需求参数后,进一步根据获取到的参数调用存储的异构编译算法,根据需求生成特定数量的拟态表决器变体。由此可以看出,结合异构冗余思想,对拟态表决器进行异构编译,能够得到功能相同、结构不同的表决器软件,增加了攻击者对表决器软件进行逆向攻击或者漏洞利用攻击的难度,保障了拟态表决器的安全性。
s204、存储生成的拟态表决器变体;
在生成特定数量的拟态表决器变体后,对生成的拟态表决器变体进行存储。
s205、基于参数从存储的拟态表决器变体中随机调用一个拟态表决器变体进行上线服务;
然后,根据用户的安全需求参数从存储的拟态表决器变体中随机调用一个拟态表决器变体进行上线服务。由此可以看出,能够结合动态思想,根据用户需求对拟态表决器的异构变体实行周期性的随机调度上线,在保障系统表决功能正常的前提下,增加了拟态表决器的动态性和服务的不确定性,拟态表决器变体选择的动态性增加了url(uniformresourcelocator,统一资源定位符)的传输因素的不确定性,缩短了攻击者进行攻击操作的时间周期,降低了攻击成功的概率。
s206、实时监控存储的拟态表决器以及线上运行的拟态表决器的运行状态;
在从存储的拟态表决器变体中随机调用一个拟态表决器变体进行上线服务后,还可以进一步对存储的拟态表决器以及线上运行的拟态表决器的运行状态进行实时监控。
s207、根据得到的监控状态进行周期性的拟态表决器变体随机上线服务。
然后,根据实时监控到的状态进行周期性的拟态表决器变体随机上线服务。如,在监控到拟态表决器在用户调度周期之外因外部攻击或者内部故障出现服务异常的情况时,能够及时根据异常信息及时调度新的表决器变体上线服务,保障服务的正常性。
综上所述,本实施例在上述实施例的基础上,能够进一步实时监控存储的拟态表决器以及线上运行的拟态表决器的运行状态,根据得到的监控状态进行周期性的拟态表决器变体随机上线服务,保障服务的正常性。
如图3所示,为本发明公开的一种拟态表决器的安全运行方法实施例3的方法流程图,所述方法可以包括以下步骤:
s301、存储异构编译算法;
当需要实现拟态表决器的安全运行时,首先存储用于生成拟态表决器变体的异构编译算法。需要说明的是,存储的异构编译算法是经过筛选过的,能够确保异构编译算法在提高拟态表决器变体异构性的同时不对表决器自身的性能产生较大的影响。
s302、获取用户安全需求的变体数量和调度周期;
同时,获取用户的安全需求参数。其中,用户的安全需求参数主要包括变体数量、调度周期等。
s303、基于变体数量调用编译算法生成特定数量的拟态表决器变体;
在获取到用户的安全需求参数后,进一步根据获取到的变体数量调用存储的异构编译算法,根据需求生成特定数量的拟态表决器变体。由此可以看出,结合异构冗余思想,对拟态表决器进行异构编译,能够得到功能相同、结构不同的表决器软件,增加了攻击者对表决器软件进行逆向攻击或者漏洞利用攻击的难度,保障了拟态表决器的安全性。
s304、存储生成的拟态表决器变体;
在生成特定数量的拟态表决器变体后,对生成的拟态表决器变体进行存储。
s305、基于调度周期从存储的拟态表决器变体中随机调用一个拟态表决器变体进行上线服务;
然后,根据调度周期从存储的拟态表决器变体中随机调用一个拟态表决器变体进行上线服务。由此可以看出,能够结合动态思想,根据用户需求对拟态表决器的异构变体实行周期性的随机调度上线,在保障系统表决功能正常的前提下,增加了拟态表决器的动态性和服务的不确定性,拟态表决器变体选择的动态性增加了url(uniformresourcelocator,统一资源定位符)的传输因素的不确定性,缩短了攻击者进行攻击操作的时间周期,降低了攻击成功的概率。
s306、实时监控存储的拟态表决器以及线上运行的拟态表决器的运行状态;
在从存储的拟态表决器变体中随机调用一个拟态表决器变体进行上线服务后,还可以进一步对存储的拟态表决器以及线上运行的拟态表决器的运行状态进行实时监控。
s307、根据得到的监控状态进行周期性的拟态表决器变体随机上线服务。
然后,根据实时监控到的状态进行周期性的拟态表决器变体随机上线服务。如,在监控到拟态表决器在用户调度周期之外因外部攻击或者内部故障出现服务异常的情况时,能够及时根据异常信息及时调度新的表决器变体上线服务,保障服务的正常性。
综上所述,本发明能够通过对拟态表决器的异构化以及周期性随机调度上线的方式迷惑攻击者,有效提高了拟态表决器自身的安全性。
如图4所示,为本发明公开的一种拟态表决器的安全运行系统实施例1的结构示意图,所述系统可以包括:
异构编译算法库401,用于存储异构编译算法;
当需要实现拟态表决器的安全运行时,首先存储用于生成拟态表决器变体的异构编译算法。需要说明的是,存储的异构编译算法是经过筛选过的,能够确保异构编译算法在提高拟态表决器变体异构性的同时不对表决器自身的性能产生较大的影响。
用户交互模块402,用于获取用户的安全需求参数;
同时,获取用户的安全需求参数。其中,用户的安全需求参数主要包括变体数量、调度周期等。
异构算法调用模块403,用于基于参数调用异构编译算法生成特定数量的拟态表决器变体;
在获取到用户的安全需求参数后,进一步根据获取到的参数调用存储的异构编译算法,根据需求生成特定数量的拟态表决器变体。由此可以看出,结合异构冗余思想,对拟态表决器进行异构编译,能够得到功能相同、结构不同的表决器软件,增加了攻击者对表决器软件进行逆向攻击或者漏洞利用攻击的难度,保障了拟态表决器的安全性。
拟态表决器变体库404,用于存储生成的拟态表决器变体;
在生成特定数量的拟态表决器变体后,对生成的拟态表决器变体进行存储。
变体动态调度模块405,用于基于参数从存储的拟态表决器变体中随机调用一个拟态表决器变体进行上线服务。
然后,根据用户的安全需求参数从存储的拟态表决器变体中随机调用一个拟态表决器变体进行上线服务。由此可以看出,能够结合动态思想,根据用户需求对拟态表决器的异构变体实行周期性的随机调度上线,在保障系统表决功能正常的前提下,增加了拟态表决器的动态性和服务的不确定性,拟态表决器变体选择的动态性增加了url(uniformresourcelocator,统一资源定位符)的传输因素的不确定性,缩短了攻击者进行攻击操作的时间周期,降低了攻击成功的概率。
综上所述,在上述实施例中,当需要实现拟态表决器的安全运行时,首先存储异构编译算法,获取用户的安全需求参数,然后基于参数调用异构编译算法生成特定数量的拟态表决器变体,存储生成的拟态表决器变体,基于参数从存储的拟态表决器变体中随机调用一个拟态表决器变体进行上线服务。本发明能够基于软件多样化和移动目标的防御思想,对拟态表决器软件进行异构化编译,同时根据用户需求对表决器变体进行周期性的随机调度,增加了表决器服务的不确定性,提高了攻击者的攻击难度,保障了拟态表决器的安全性。
如图5所示,为本发明公开的一种拟态表决器的安全运行系统实施例2的结构示意图,所述系统可以包括:
异构编译算法库501,用于存储异构编译算法;
当需要实现拟态表决器的安全运行时,首先存储用于生成拟态表决器变体的异构编译算法。需要说明的是,存储的异构编译算法是经过筛选过的,能够确保异构编译算法在提高拟态表决器变体异构性的同时不对表决器自身的性能产生较大的影响。
用户交互模块502,用于获取用户的安全需求参数;
同时,获取用户的安全需求参数。其中,用户的安全需求参数主要包括变体数量、调度周期等。
异构算法调用模块503,用于基于参数调用异构编译算法生成特定数量的拟态表决器变体;
在获取到用户的安全需求参数后,进一步根据获取到的参数调用存储的异构编译算法,根据需求生成特定数量的拟态表决器变体。由此可以看出,结合异构冗余思想,对拟态表决器进行异构编译,能够得到功能相同、结构不同的表决器软件,增加了攻击者对表决器软件进行逆向攻击或者漏洞利用攻击的难度,保障了拟态表决器的安全性。
拟态表决器变体库504,用于存储生成的拟态表决器变体;
在生成特定数量的拟态表决器变体后,对生成的拟态表决器变体进行存储。
变体动态调度模块505,用于基于参数从存储的拟态表决器变体中随机调用一个拟态表决器变体进行上线服务;
然后,根据用户的安全需求参数从存储的拟态表决器变体中随机调用一个拟态表决器变体进行上线服务。由此可以看出,能够结合动态思想,根据用户需求对拟态表决器的异构变体实行周期性的随机调度上线,在保障系统表决功能正常的前提下,增加了拟态表决器的动态性和服务的不确定性,拟态表决器变体选择的动态性增加了url(uniformresourcelocator,统一资源定位符)的传输因素的不确定性,缩短了攻击者进行攻击操作的时间周期,降低了攻击成功的概率。
表决器变体状态监测模块506,用于实时监控存储的拟态表决器以及线上运行的拟态表决器的运行状态;
在从存储的拟态表决器变体中随机调用一个拟态表决器变体进行上线服务后,还可以进一步对存储的拟态表决器以及线上运行的拟态表决器的运行状态进行实时监控。
变体动态调度模块505,还用于根据得到的监控状态进行周期性的拟态表决器变体随机上线服务。
然后,根据实时监控到的状态进行周期性的拟态表决器变体随机上线服务。如,在监控到拟态表决器在用户调度周期之外因外部攻击或者内部故障出现服务异常的情况时,能够及时根据异常信息及时调度新的表决器变体上线服务,保障服务的正常性。
综上所述,本实施例在上述实施例的基础上,能够进一步实时监控存储的拟态表决器以及线上运行的拟态表决器的运行状态,根据得到的监控状态进行周期性的拟态表决器变体随机上线服务,保障服务的正常性。
如图6所示,为本发明公开的一种拟态表决器的安全运行系统实施例3的结构示意图,所述系统可以包括:
异构编译算法库601,用于存储异构编译算法;
当需要实现拟态表决器的安全运行时,首先存储用于生成拟态表决器变体的异构编译算法。需要说明的是,存储的异构编译算法是经过筛选过的,能够确保异构编译算法在提高拟态表决器变体异构性的同时不对表决器自身的性能产生较大的影响。
用户交互模块602,用于获取用户安全需求的变体数量和调度周期;
同时,获取用户的安全需求参数。其中,用户的安全需求参数主要包括变体数量、调度周期等。
异构算法调用模块603,用于基于变体数量调用编译算法生成特定数量的拟态表决器变体;
在获取到用户的安全需求参数后,进一步根据获取到的变体数量调用存储的异构编译算法,根据需求生成特定数量的拟态表决器变体。由此可以看出,结合异构冗余思想,对拟态表决器进行异构编译,能够得到功能相同、结构不同的表决器软件,增加了攻击者对表决器软件进行逆向攻击或者漏洞利用攻击的难度,保障了拟态表决器的安全性。
拟态表决器变体库604,用于存储生成的拟态表决器变体;
在生成特定数量的拟态表决器变体后,对生成的拟态表决器变体进行存储。
变体动态调度模块605,用于基于调度周期从存储的拟态表决器变体中随机调用一个拟态表决器变体进行上线服务;
然后,根据调度周期从存储的拟态表决器变体中随机调用一个拟态表决器变体进行上线服务。由此可以看出,能够结合动态思想,根据用户需求对拟态表决器的异构变体实行周期性的随机调度上线,在保障系统表决功能正常的前提下,增加了拟态表决器的动态性和服务的不确定性,拟态表决器变体选择的动态性增加了url(uniformresourcelocator,统一资源定位符)的传输因素的不确定性,缩短了攻击者进行攻击操作的时间周期,降低了攻击成功的概率。
表决器变体状态监测模块606,用于实时监控存储的拟态表决器以及线上运行的拟态表决器的运行状态;
在从存储的拟态表决器变体中随机调用一个拟态表决器变体进行上线服务后,还可以进一步对存储的拟态表决器以及线上运行的拟态表决器的运行状态进行实时监控。
变体动态调度模块605,还用于根据得到的监控状态进行周期性的拟态表决器变体随机上线服务。
然后,根据实时监控到的状态进行周期性的拟态表决器变体随机上线服务。如,在监控到拟态表决器在用户调度周期之外因外部攻击或者内部故障出现服务异常的情况时,能够及时根据异常信息及时调度新的表决器变体上线服务,保障服务的正常性。
综上所述,本发明能够通过对拟态表决器的异构化以及周期性随机调度上线的方式迷惑攻击者,有效提高了拟态表决器自身的安全性。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(ram)、内存、只读存储器(rom)、电可编程rom、电可擦除可编程rom、寄存器、硬盘、可移动磁盘、cd-rom、或技术领域内所公知的任意其它形式的存储介质中。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。