入侵容忍技术是一种融合了密码技术、容错技术等的全新网络安全技术,它突出强调当系统在受到攻击时,即使系统的某些部分己经受到破坏、或者某些部分已经受到攻击者的控制时,整个系统仍然能够保证服务的可用性和数据的秘密性、完整性,保证系统关键功能的运行,从而仍然能够对外继续提供正常或降级的服务.文中介绍了在入侵容忍领域里常用的基本技术:冗余技术、多样性技术、沙盒技术、复制技术、门限方案、恢复策略、群组通信系统等.
1 入侵容忍技术的概念
侵容忍技术是一种融合了密码技术、容错技术等的全新网络安全技术,它突出强调当系统在受到攻击时,即使系统的某些部分己经受到破坏、或者某些部分已经受到攻击者的控制时,整个系统仍然能够保证服务的可用性和数据的秘密性、完整性,保证系统基本功能的正常运行,从而仍然能够对外继续提供正常或降级的服务。
入侵容忍技术与传统安全技术不同,入侵容忍技术突破以往的以保护和防范为出发点来使系统免受入侵的传统思维,更强调“容忍”,入侵容忍关注的焦点不再是所构建的系统是否足够安全,入侵活动是否发生,发生的具体原因或实施入侵时所采取的具体方法等,而是关注入侵对系统功能的影响,入侵容忍可以用攻击响应和攻击屏蔽的方法,可在恶意入侵对系统造成不良影响前消除其危害或恢复系统,这就好比建立起了一道类似于人体的免疫系统,可视作系统中新的一道防线,这样就能保证系统在具有安全风险威胁的环境中,一旦系统被破坏或被攻击,能够尽早发现,并采取相应的防护和补救措施,能够最大限度地保障系统的基本功能,减少在遭到攻击时的损失,保证系统生存。
2 入侵容忍技术常见相关技术
2.1冗余
冗余是入侵容忍的最基本的技术,也是增强系统服务的重要技术,冗余的原理是:重复配置系统的一些组件,当系统发生故障时,冗余配置的组件介入并承担故障部件的工作,继续执行该故障组件的功能直到该组件被修复,也即是说,即使所系统的一些地方失效或产生故障,通过使用冗余组件,仍能保障系统的继续有效运行、减少系统的故障时间或改善服务性能,增强系统的安全特性。
需要注意的是冗余不同于复制,复制只是冗余的一种类型,也就是物理资源冗余,物理资源冗余的目的是使用多个部件共同承担同一项任务,当主要模块发生故障时,用后援的备份替换故障模块,使系统完好无损,也可以用缓慢降级切除故障模块,让剩下的正常模块继续工作,此外还有两种类型的冗余:时间冗余和信息冗余时间冗余适合执行时间较宽松的任务,它是通过消耗时间资源来达到了容错目的的,时间冗余的一个例子是程序回滚,这种技术用来检验一段程序完成时的计算数据,如有错,则回滚重算那个部分,信息冗余的基本思想则是在最低限度的信息码之外增加一些信息码,包括奇偶校验码、检查和码、算术编码等,以防止使用错误的码,发现编码错误,纠正编码内的错误,一般而言,附加的信息越多,其检错和纠错能力越强,从实质而言,门限机制也是信息冗余的一个例子:它从K份共享的数据(原始数据被分成N份)中可以重新构造出原始数据D,每一份共享数据中都嵌入一些特定的冗余信息,前者偏重于保证系统的可用性(有效性),后者偏重于保护系统的完整性和机密性,在目前的容忍入侵技术中主要使用的是物理资源冗余和信息冗余。
2.2多样性技术
如果冗余组件只是简单的对每个系统成员进行复制,那么容忍入侵系统中的无关性假定就有可能被破坏——也就是说,如果攻击者已经发现了一种技术去破坏一个组件,那么在攻击者的快速攻击下,所有相同的复制组件都可能会受到同样的攻击,这样整个系统都会被攻陷,这种弱点使得冗余技术很少被单独使用在入侵容忍系统中,于是,又提出另一种技术——多样性技术。该技术确保所有具有相同功能的复制组件不能具有同一漏洞,也防止攻击者快速破解所有的复制组件。多样性技术用不同的设计和实现方法来提供功能相同的计算行为,可以有效防止攻击者找到冗余组件中共同的脆弱点,一般来说,多样性可以从硬件、操作系统、软件开发等实现。
此外,在时间和空间上常常也使用多样性,空间多样性要求服务必须协同定位多个地点的冗余组件去阻止局部的灾难,而时间多样性则要求用户在不同时间段向服务器提出服务请求,几乎在所有的容侵系统中使用了冗余技术,例如,分布式容忍入侵(DIT),容忍入侵服务器基础组织(ITSI)分层的服务质量自适应控制容忍入侵系统(HACQIT),分布式系统中可升级的容忍体系结构(SITAR)等系统在设计中都具有这样的能力:容纳多个服务器,考虑到多样性的缘故,每个服务器可以运行在不同的操作平台国之上,如LiNux或者UNix或者windows之上,此外应用程序也可一在不同的环境中运行,如Apache,IIS等其他的运行环境,使用冗余,可以消除系统中的单一脆弱点,同时由于使用了多样性方法,系统之问以异构的方式组织,减少了相关的错误风险,加大了攻击者完全攻克系统的难度,但是,需要注意的是多样性的使用也有不利的因素:首先多样性增加了系统的复杂性,这是因为:为了获得高级别的多样性,对于一个服务必须有多种完全不同的实现方式,这包括了在一个混合的硬件系统上运行一个混合操作系统,使用隔离的实现梯队开发的应用服务软件,系统的复杂必然带来维护上的困难,其次多样性的代价是昂贵的,这些代价主要有以下几个方面不同的站点需要使用不同的专家团队来维护,许多系统管理员只知道一部分系统,而那些了解完整系统的管理员很少而且代价更大,站点必须为这些系统打上补丁,由于系统中的漏洞是不相同的,随着系统多样性的增加,为系统打补丁的工作也将会更复杂,多版本的服务需要额外购买或者开发费用,这必然会增加系统的费用,最后不成熟的多样性可能存在潜在的危机,所以对系统的每一个部分都必须进行正确的多样性等级评估,这可能需要在多样性和容忍做一个适当的折中。
冗余性和多样性减少了错误关联的危险,但是增加了系统的复杂性,为了得到冗余性,必须提供多套设备或软件,为了得到更高水平的多样性,必须使用多个不同执行方式的服务,因此这种冗余性和多样性的代价很昂贵,在使用时必须评估系统的每一部分适合什么程度的冗余和多样,在性能和代价以及预防和容忍之间进行权衡。
2.3沙盒技术
沙盒是用来分隔用户、服务器和其它不被信任组件的工具,它的设计思想是:当系统识别出可能的攻击请求或发生错误时,依据系统检测功能,启动诊断程序,分析应用日志中最近一些请求,判断出异常与可疑的请求,将异常与可疑的请求发送到“沙盒”中逐个进行测试,若某一请求导致了同样的结果,则认为其为“恶意请求或非法请求”,被添加到“非法请求列表”中,以后同样请求将被阻止,在此过程中,所有“非法请求”均在沙盒这个特殊的工具内运行,与其它系统和子系统之间的交互都被限制在一定的范围内,因此,从总体上来说,不会影响到系统,ITSI和HACQIT都使用了沙盒技术。
2.4复制技术
复制技术其实是基于冗余的思想,作为一种重要的容错机制,它是入侵容忍里的重要技术,国内一些学者也用此技术应用到入侵容忍系统中,因此本文将其单独列出,复制技术通过对同一个服务进程(可以是数据、AgeNt、对象)进行多次复制并将复制品放在不同的服务器上,当出现故障造成某个或某几个服务器上的服务失效时,整个系统的可用性仍然可以得到保证,这样就防止了单点失效现象,提高了系统的可靠性(Reliability)和可用性(Availability);同时复制技术还可以避免有大量客户提出请求而只有一个服务进程在运行导致的瓶颈现象,提高了系统的性能。
复制技术可分为两类,一是主动复制(ActiveReplicatioN),主动复制技术也称为状态机方法(StateMachiNe ApprOAch),这种技术给所有的复制品赋予同等地位,没有中心控制点,所有的复制品以相同的次序执行同一个操作,然后将结果反馈给请求者,主动复制技术中,很重要的问题就是每一个复制品的状态都必须要始终保持一致,否则,复制就失去了存在的价值,另一种是被动复制(Passive ReplicatioN),被动复制也称为主一备份方法(Primary一bacKupApproach),这种方法中,仅仅有一个复制品(称之为主席)执行操作,然后将处理结果反馈给客户端,而且主席要负责及时更新其他所有的复制品,被动复制所要求的处理能力要比主动复制的少,当出现故障时要重新选择一个复制品作为主席。
2.5门限方案
门限方案也被称为是秘密共享,1979年,Shamir就“如何共享一个秘密”提出秘密共享算法,该算法的基本思想是把数据D分成N份,使用其中的K份可以重新还原出数据D;如果得到的份数少于K,就不能还原出原始信息,任意知道少于K个秘密碎片, 就如同一个秘密碎片不知道时是一样的,这就是秘密共享方案,或者叫门限方案,门限密码学提出的既可以将权利分散又可以提高安全性,同样,在入侵容忍系统中,可以设计一种方法来把数据D分割成N份,分布在不同的地点,至少需要K份才能重建数据D,少于K份则不能揭示任何信息。
门限方案在容忍入侵系统中的使用,主要是通过两种方式:第一,是它本身的方式,数据共享份额被分布式的存储在不同的物理位置,即使N—K-1个共享被攻击而且已经威胁到系统安全,数据的机密性仍可以保持并且可以重构原始的数据,这样就可以实现容忍入侵,从这个角度来说,本质上门限方案本身也是种冗余技术,第二, 数据使用同一个密钥加密,这个密钥使用门限方案分成N份,这种方法实际上并没有给原始数据提供任何冗余,然而,为了对信息进行访问, 必须要把加密密钥的K份重构来得到原始的密钥, 这实质上提供了信息的“联合控制和监旨”。
这种方案最主要的局限是N和K的选择,要在安全性、可用性和存储空间上进行权衡,一个较高的N值保证了系统的高可用性,但性能低并且存储占用量大,一个较小的K值则保证了高性能但却是低可信任度,如果N和K的选择合理, 门限方案将很难攻破。
2.6 恢复策略
恢复策略是入侵容忍系统中的重要策略之一,与之相对应的灾难恢复手段也是入侵容忍系统工作流程的重要部分之一,恢复策略可以分为两类:后向恢复和前向恢复。
1)后向恢复,它是比较常用的恢复策略,是指当系统发生故障时,恢复机制将系统状态带回到事前某一正确的状态,这一状态可以是事先已经通过冗余的手段保存下来的,也可以是通过一步步的回滚操作进行恢复,对于大多数服务器来说,由于服务器自身状态在不断的演化,因此除非直接回滚到初始状态,否则只能一步步的进行恢复,后向恢复的操作时间可能是不可预知的,尤其是采用回滚方式进行恢复的时候,但是,只要后向恢复成功,系统就一定能够保证处于正确的状态,常用的后向恢复的方法有:系统重配和重置系统状态。
2)前向恢复,它是指将系统向更新的状态演变,使错误的状态转化为可以工作的新状态,前向恢复策略中比较常用的方法是系统降级,当入侵容忍系统发现系统遭受入侵而进入一个含有故障的状态,恢复机制可以关闭部分已经崩溃的组件服务,提供降级的服务,前向恢复的优点是恢复的速度较快,适用于需要提供持续服务的场合,但是,前向恢复难以将系统恢复到完美的状态,一些常用的前向恢复的方法有:在门限密码学中替换被泄漏的密钥、降低系统功能和软件升级。
系统的前向恢复和后向恢复并非是对立的,例如可以在灾难恢复首先尝试使用的是后向恢复,如果该系统在规定时间内, 无法从灾难中完全恢复出来,那么就应该尝试使用的是前向恢复策略,只有这样才能保证系统服务的持久性。
2.7群组通信系统
在有些容忍入侵系统中,如ITUA、ITDOS、MAFTIA系统中群组通信系统是建立容忍入侵系统非常关键的一个构件,群组通信系统框架一般由以下三个基本的群组管理协议组成:
第一,群组成员协议,其目的是保持各对象组和复制品间状态信息的一致,对各对象组成员进行管理,实际上,群组成员管理是一个很复杂的问题,就目前看,以下的三个问题是群组成员设计中需要集中解决的问题:
(1)如果一个组成员崩溃,实际上它就要离开了这个组,问题是,与自愿离开不一样,它没有对这一事实进行宣告,其他成员只有在发往它的消息得不到任何应答后,才发现这个崩溃成员已离开,一旦确定这个崩溃的成员已经停机,就从这个组中删去该成员。
(2)加入与离开一个组必须与发送的消息同步,换句话说,从进程加入到组的瞬间开始,它必须接受所有发往该组的消息,同样,一旦进程已经离开该组,它就不应再收到该组的任何消息,组内任何成员也不应该收到该成员发出的消息。
(3)当一个进程组中过多的进程失败,使得该组不能继续提供相应的任务,就需要某个协议来重建该进程组。
第二,可靠的多播协议,用于保证各对象之间安全、可靠的消息传递,使用该协议,即使在入侵存在的情况下消息仍能正确地传递给各组并保证了消息完整性。
第三,全序协议,用于保证消息按一定的顺序发送,在容忍入侵系统中,为了确保所有的服务器同时执行相同的请求,就必须要某种机制来保证传递给所有服务器的请求都是有序的,全序协议一般是通过产生一个全局的序列数来解决这一问题的。
群组成员协议确保了所有正确进程即便在入侵存在的情况下仍能保持各群组成员的一致信息:可靠的传播送协议保证了向各组成员间一致、可靠的多点消息传送,同时保证了消息的完整性和一致性;全序协议使得多播传送的消息在配置变化时仍能得到一致的传输。
当前已有许多专门针对群组通信系统的研究,如NEnsemble和SecureRing都是典型的群组通信系统,许多容忍入侵系统在具体实现时,都是根据系统的特定需求,在原有群组通信系统的基础上对功能进行扩展,或者只是使用群组通信系统中的某些协议。
3 结语
入侵容忍技术作为一门新兴安全技术,尽管目前在理论与应用上还不是很完善,但有着广阔的研究与应用前景,以上介绍的包括冗余技术、多样性技术、沙盒技术、复制技术、门限方案、恢复策略、群组通信系统等是入侵容忍的目前常见基本技术,随着计算机技术的发展与应用,新的技术会逐步应用到入侵容忍相关领域里,推动入侵容忍理论的发展。
另外,从本质上来看,入侵容忍系统的构建就是这些技术的组合与应用。因此,研究和探索入侵容忍相关技术是入侵容忍系统走向完善、走向应用的重要工作。
核心关注:拓步ERP系统平台是覆盖了众多的业务领域、行业应用,蕴涵了丰富的ERP管理思想,集成了ERP软件业务管理理念,功能涉及供应链、成本、制造、CRM、HR等众多业务领域的管理,全面涵盖了企业关注ERP管理系统的核心领域,是众多中小企业信息化建设首选的ERP管理软件信赖品牌。
转载请注明出处:拓步ERP资讯网http://www.toberp.com/
本文标题:入侵容忍常见实现技术研究