基于约束层次结构的系统健康与入侵监测
1. 引言
在大型关键任务系统中,一个能持续评估系统健康和状态的高级监测系统至关重要。它能及时向操作员发出系统异常警报,如入侵、故障或操作错误,这些异常可能导致系统故障,以便及时采取措施避免问题发生。本文聚焦于计算机系统安全方面的健康监测,采用约束层次结构来建模系统在不同抽象层次的有效行为,从而检测可能导致安全故障的入侵或错误。
传统的入侵自动检测方法主要有两种:
- 特征匹配法 :提前收集可疑事件的特征,监测与之匹配的特征来识别入侵。该方法误报率较低,但无法应对未知类型的攻击。
- 统计分析法 :随着时间积累正常行为的统计特征,对不符合该特征的异常事件发出警报。此方法虽可能检测到新的未知攻击,但会对任何新行为(无论是否恶意)都触发警报,导致误报率过高。
还有一种基于规范的方法,即指定系统的正确允许行为,不符合规范的事件会触发警报。这种方法能检测新攻击,且正常的异常行为不会产生误报。以往基于规范的技术主要集中在程序监测上。
本文的方法扩展了现有的基于规范的技术,对分布式系统中的各种组件行为进行约束。在不同抽象层次和系统的不同实体(如程序、协议、主机、系统服务、网络服务以及整个区域)创建约束,这些约束涵盖了组件的静态、动态和时间关键行为。约束从高级系统策略、系统语义、安全原则、系统历史行为以及入侵/漏洞的通用知识中系统地开发而来,在运行时检查是否有意外行为,并且能提示约束被违反时可能产生的后果。该方法不直接检测攻击中的入侵行为,而是检测其作为约束违反的表现。