并行运行软件仿真器的系统安全性监测器的制作方法

文档序号:6463733阅读:128来源:国知局
专利名称:并行运行软件仿真器的系统安全性监测器的制作方法
技术领域
本发明涉及对试图攻击一个具有分布式功能性的电子系统的病毒和黑客(hacker)的安全性措施。该发明特别涉及,但并非唯一地涉及,一种家庭网络环境。
背景技术
计算机系统和网络的安全性正受到黑客(hacker)和计算机病毒的挑战。
术语“攻击(hacking)”通俗来讲是指试图获得对另一方的计算机系统或网络的非授权访问。尽管并不是所有的黑客(hacker)都具有恶意的目的,但如果它引起偷窃或破坏电子信息或者引起系统停机,这样的安全性破坏可以带来严重的后果。
病毒是加载到计算机系统上的一段代码,并在用户不知道它的情况下执行。病毒的一个典型例子就是一段自我复制的程序。这样一种病毒的一种可能危害是它迅速占据所有可用存储器,从而使该系统停止。如果该病毒可以自己经由网络传播和经过安全系统,则它将扩展这场灾难。
随着家庭网络和家庭网关的出现,对抗黑客(hacker)和病毒的安全性也成为家庭环境用户的忧虑。一个家庭网络连接控制网络和/或通信网络中的设备。这些网络通常也提供互联网访问并且通过无线调制解调器覆盖移动用户,从而将家庭暴露给来自外部的非授权电子访问。

发明内容
本发明尤其是提供一种对这种安全性问题的解决方案。更具体来讲,本发明考虑到一种分布式信息处理系统,包括形成例如一个家庭网络的一个交互设备或家电组。这些设备或家电具有监测该组的完整性的有限状态机(FSM)。该系统具有一个控制服务器,运行该组的FSM的一个仿真器。每一个设备的FSM在每一时间步长中分别计算一个数值,该数值取决于前一步长中其它设备的FSM的值、设备各自的内部状态(例如,根据该设备的存储器和I/O消息缓冲器的内容)和先前值的历史记录。选择这个数学关系,使得FSM的收集如同形成动态非周期随机过程一样进行。该仿真器在服务器上作同样的事情。仿真器的结果和设备的FSM应当是完全相同的。一旦出现一次错误匹配,就产生一个报警信号。该系统的安全性在于这样的事实为了攻击(hack)该系统,黑客(hacker)需要有在一特定步长中的所有FSM值的一个瞬态图(snapshot),收集历史记录中考虑到的这些步长的值,并进入每一设备的内部状态。所有这些操作需要在一个时间步长内执行,由于系统的分布性特征,使得它成为一次复杂的计算任务,而实际上是不可能实现的。另外的测量是通过使所考虑的先前状态的数目最大化来将每一设备的CPU计算时间完全100%地分配给数值计算。如果需要计算时间,就减少先前状态的数目。病毒需要一个处理环境来活动。通过完全占用CPU,将没有计算环境提供给病毒来安家落户。
本发明可以很好地用于家庭控制网络,其中家电具有简单的处理器来产生FSM的数值。


在下面通过例子和附图对本发明进行更详细的解释,附图中图1是本发明中一个具有监测系统的方框图;以及图2是一个表示一个FSM的数学表达式。
具体实施例方式
在许多不同条件下,需要监测一个技术系统的操作,以便确保该系统行为的完整性、安全性和正确性。下面涉及的系统的类型是作为设备的分布网络来实现的一种系统。这些设备具有基于CPU的控制器,并能够交换信息。该系统操作涉及一个FSM或者扩展有限状态机(EFSM)网络的操作。EFSM是一种具有本地约束条件或者本地数据变量的FSM。可以在FSM后被建模的该系统的例子是工业自动化和控制系统、家庭网络、医疗生命维持系统等等。
本系统力图解决的问题中的一个是怎样建立一个一旦出现故障即发出报警信号的控制和安全系统,该故障可能是由自然的或恶意的作用引起的。本发明阐述的另一个问题是如何阻挡未经认可的重新编程的攻击(hacking)和软件病毒的侵扰。
本发明人建议了若干安全性层面,可以被单独应用,或者组合应用以便增加系统的保护性、强壮性和安全性。在下文的详细讨论中将使用下列定义—系统考虑到需要被监测和防卫的设备的联合体;—设备系统的一个组成部分,包括一个基于CPU的控制器;—设备状态信息(DSI)根据可能包括设备的I/O消息缓冲器的设备存储器中的一些规则计算的控制代码;—控制服务器该系统外部的计算机,用于监测该系统的操作并能够发出报警信号;—仿真器将系统模拟为一个EFSM分布式网络的仿真软件。
图1是本发明中系统100的方框图。系统100包括一个系统102,例如一个家庭网络。系统102包括设备104、106、...、108。设备104-108中的每一个具有各自的FSM 110、112、...、114。系统100进一步包括一个控制服务器116,该服务器运行仿真器118,以软件模拟系统102的行为。在鉴别器120中比较仿真器118中的结果与设备104-108的状态,从而一旦检测到差异就发出一个报警信号。
在安全性层面的第一层面,模拟器118在控制服务器116中运行。对于每一离散时间步长,设备104-108中每一个的CPU分别计算与相关设备相应的DSI。该DSI与相应的由仿真器118为该设备计算的DSI代码相比较。这些值之间的不匹配指示系统102的非法重新编程或操作故障。
图2是一个定义了FSM的数学表达式。根据该表达式,在每一时间步长“t”为每一个设备(k)计算值Xk(t),其中-“t”是当前时刻;-“k”是设备(k)的下标或标号,从1到M,假设设备的数目等于M(本示例中M等于3);-“Sk”是设备(k)的DSI;以及-“Fk(.,.,.)”是一个所选数学向量函数的第k个分量,这样M个等式的集合描述了一个随机非周期动态过程。
因此,对于每一个固定的“k”,Xk(t)取决于在前一时间步长中所取的所有设备104-108的值X、设备(k)的DSI和设备(k)的值X的历史记录。所考虑的历史记录长度由数目N决定。仿真器118在每一时间步长中,使用相同的数学一致性为所有的“k”计算值Xk(t)。每一时间步长,由设备104-108计算的值Xk(t)与由仿真器118计算的值Xk(t)相比较。差异指示系统102的完整性被侵犯了。
为了对设备104-108中的任一个重新编程或者为了直接发出一些特别命令并作用于系统102,病毒或者黑客(hacker)必须刺探系统102的所有设备104-108,并且必须为所有设备104-108收集所需要的历史记录Xk(t-1),Xk(t-2),...,Xk(t-N)。由于通过图2中的等式集合给出的模型的发展的随机特性,所有这些操作将在一个时间步长内执行。这使得干扰系统102的未被检测的攻击(undetected hacking)在技术上和计算上成为一项非常复杂的任务。
计算机病毒需要来自设备104-108中至少一个的CPU资源以便执行它的任务,包括隐藏和仿制的行为。因此,本发明人建议减少或消除CPU的空闲,以防止为病毒创建一个合适的环境。例如,这可以如下完成。
开始,也就是t=0,系统102被加载图2中讨论的等式,以便它占用每一设备的除了设备的主要任务所需资源之外的所有额外CPU资源。例如这可以是这样一种通过利用增加决定所考虑的历史记录或递归的长度的值N来增加动态过程的计算复杂性。如果设备在系统102的操作使用期间需要另外的CPU功率,则在一个适当的进度算法的控制下动态减少数目N。这些操作在系统102以及控制服务器116上执行以便维持随机过程的计算值和操作值之间的匹配。因此将这些更新122通知给仿真器118以维持一致性。
控制服务器可以是一个相同地理环境例如家庭中被信赖的受到良好保护的设备,如同系统102。此外,控制服务器116也可以是一个被信赖方的远端服务器。
总而言之,本发明人建议以软件模拟一个主要的多设备系统,并且对实际设备的行为与模拟之间进行鉴别以便检测系统操作的合法性。该设备具有FSM。一个等式的随机离散集合被用来交叉捆绑(cross-bind)状态和内部设备消息以便使之不可能预测和重新计算主要系统的控制代码值。作为防毒措施,一个将病毒可用计算资源最小化的计算环境被建立。后者可以通过在离散等式集合中使用递归的动态变量深度作为吸收空闲计算资源的机制来实现。
权利要求
1.一个监测系统(100),包括—一个主要系统(102),具有多个设备(104,106,108);以及—一个仿真器(118),用于模拟该主要系统的行为;其特征在于—该监测系统对该主要系统提供的结果和由仿真器计算的输出进行鉴别以便监测该主要系统。
2.如权利要求1所述的系统,其特征在于—设备中的每一个设备分别包括一个各自的有限状态机(110,112,114);—该各自的状态机(具有下标“k”)在每一时间步长中根据一个各自的数学函数(图2)计算一个量(Xk(t))的值;—每一个各自的数学函数具有如下参数—在前一时间步长中使用状态机的至少另外一个计算的量值(前一时间步长所取的所有设备104-108的X);—由各自状态机计算的量假定的一个各自值的历史记录(Xk(t-1),Xk(t-2),...,Xk(t-N));—在每一时间步长中由各自设备的存储器中存在的内容确定的各自的控制代码(“Sk”是设备(k)的DSI)。—各自的数学函数是这样的,即该量假定一种随机行为。
3.如权利要求1所述的系统,其特征在于—每一个设备具有各自的计算资源;—设备中的每一个各自使用各自的资源执行各自的主要任务;—根据各自的主要任务,每一个设备分别执行一个各自的第二任务以减少各自的计算资源的可用性。
4.如权利要求2所述的系统,其特征在于—每一个设备具有各自的计算资源;—设备中的每一个分别使用各自的资源执行各自的主要任务;—根据各自主要任务的资源的使用,每一个设备分别执行一个第二任务以减少各自的计算资源的可用性;以及—各自的第二任务包括采用各自历史记录长度计算使用的量。
5.一种能够保护一个具有多个设备(104,106,108)的主要系统(100)的方法,该方法包括—模拟主要系统的行为(118);以及—对该主要系统提供的一个结果和由该仿真器计算的一个输出进行鉴别(120)。
6.如权利要求5所述的方法,其特征在于—设备中的每一个设备分别包括一个各自的有限状态机(110,112,114);—该各自的状态机在每一时间步长中根据一个各自的数学函数(图2)计算一个量(Xk(t))的值;—各自的数学函数具有如下参数—在前一时间步长中使用状态机的至少另外一个计算的量值(前一时间步长所取的所有设备104-108的X);—由各自状态机计算的量假定的一个各自的值的历史记录(Xk(t-1),Xk(t-2),...,Xk(t-N));以及—在每一时间步长中由各自设备的存储器中存在的内容确定的各自的控制代码(“Sk”是设备(k)的DSI)。—各自的数学函数是这样的,即该量假定是一种随机行为。
7.如权利要求5所述的方法,其特征在于—每一个设备具有各自的计算资源;—设备中的每一个分别使用各自的资源执行各自的主要任务;以及—该方法包括使得每一个设备根据各自的主要任务分别执行一个各自的第二任务,以减少各自的计算资源的可用性。
8.如权利要求6所述的方法,其特征在于—每一个设备具有各自的计算资源;—设备中的每一个分别使用各自的资源执行各自的主要任务;—该方法包括使得每一个设备根据各自主要任务分别执行一个第二任务,以减少各自的计算资源的可用性;以及—各自的第二任务包括采用各自历史记录长度计算使用的量。
9.一设备(104),具有用于执行一项主要任务的计算资源,并且包括一个FSM(112),用于能够检测该资源的完整性而与执行该主要任务无关。
全文摘要
一种监测系统监测一个具有多个执行各自主要任务的设备的系统。为了该监测目的,每一设备都具有一个有限状态机(FSM),该有限状态机(FSM)具有随机的非周期行为。该监测系统以软件模拟该FSM的行为。每一时间步长后由该FSM假定的状态与在每一时间步长内在模拟中假定的状态之间的差异指示该网络完整性的一次故障或破坏。攻击(hacking)例如主要系统而不被检测到实际上是不可能的。每一设备包括计算资源。为了减少病毒可以获得的计算环境,通过动态增加FSM的复杂性来占用资源的空闲时间。
文档编号G06F21/00GK1484783SQ01802880
公开日2004年3月24日 申请日期2001年9月14日 优先权日2000年9月26日
发明者V·R·皮萨斯基, V R 皮萨斯基 申请人:皇家菲利浦电子有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1