基本概念
入侵: 绕过系统安全机制的非授权行为。危害计算机、网络的机密性、完整性和可用性或者绕过计算机、网络的安全机制的尝试。入侵通常是由从互联网访问系统的攻击者、或者试图获得额外或者更高的非法权限的授权用户等引起的。
入侵检测: 是一种对计算机系统或网络事件进行监测并分析这些入侵事件特征的过程。
入侵检测系统: 自动进行这种监测和分析过程的软件或硬件产品。
误报:
- 检测系统在检测时把系统的正常行为判为入侵行为的错误被称为误报。
- 检测系统在检测过程中出现误报的概率称为系统的误报率。
漏报:
- 检测系统在检测时把某些入侵行为判为正常行为的错误现象称为漏报。
- 检测系统在检测过程中出现漏警的概率称为系统的漏报率。
入侵检测的原理: 通过对计算机网络或计算机系统中得若干关键点收集信息并对其进行分析,从中发现网络或系统中是否有违反安全策略的行为和被攻击的迹象。
分类
按数据检测方法分类
- 异常检测模型(Anomaly Detection)
- 误用检测模型(Misuse Detection)
按系统结构分类
- 集中式 系统的各个模块包括数据的收集分析集中在一台主机上运行
- 分布式 系统的各个模块分布在不同的计算机和设备上
按时效性分类
- 离线入侵检测系统(off-line IDS)
- 在线入侵检测系统(On-line IDS)
按照数据来源分类
- 基于主机的入侵检测系统(HIDS)
- 基于网络的入侵检测系统(NIDS)
- 混合型入侵检测系统(Hybrid IDS)
- 网络节点入侵检测系统(NNIDS)
主机IDS 定义:运行于被检测的主机之上,通过查询、监听当前系统的各种资源的使用运行状态,发现系统资源被非法使用和修改的事件,进行上报和处理 特点:
- 安装于被保护的主机中
- 系统日志
- 系统调用
- 文件完整性检查
- 主要分析主机内部活动
- 占用一定的系统资源
网络IDS 定义:通过在共享网段上对通信数据的侦听采集数据,分析可疑现象。这类系统不需要主机提供严格的审计,对主机资源消耗少,并可以提供对网络通用的保护而无需顾及异构主机的不同架构。
特点:
- 安装在被保护的网段(通常是共享网络)中
- 混杂模式监听
- 分析网段中所有的数据包
- 实时检测和响应
通用入侵检测框架
- IDWG
- 目的:定义数据格式、定义交换流程
- 输出:需求文件、公共入侵检测语言规范、框架文件
- CIDF
- 用于审计数据和数据传送的规范
- CVE
- 是脆弱性和其他信息安全暴露的标准化名称的列表
- 目标:标准化命名所有公共已知的脆弱性和安全暴露
技术原理
- 数据采集技术
- 数据检测技术
- 数据分析技术
- 检测实例
数据采集技术
- 高速网络线速采集
- 包俘获
- 主机信息采集
数据检测技术
基于误用的检测
- 运用已知攻击方法,根据已定义好的入侵模式,通过判断这些入侵模式是否出现来检测。
- 通过分析入侵过程的特征、条件、排列以及事件间关系能具体描述入侵行为的迹象。
- 检测准确度很高,无法检测未知入侵。
专家系统: 原理:
- 攻击信息使用的输入使用if-then的语法。
- 指示入侵的具体条件放在规则的左边(if侧),当满足这些规则时,规则执行右边(then侧)的动作。
模式匹配检测: 原理:
- 根据知识建立攻击脚本库,每一脚本都由一系列攻击行为组成。
- 有关攻击者行为的知识被描述为:攻击者目的,攻击者达到此目的的可能行为步骤,以及对系统的特殊使用等
优点:
- 可检测出所有对系统来说是已知的入侵行为
- 系统安全管理员能够很容易地知道系统遭受到的是那种入侵攻击并采取相应的行动
局限:
- 它只是根据已知的入侵序列和系统缺陷的模式来检测系统中的可疑行为,而不能处理对新的入侵攻击行为以及未知的、潜在的系统缺陷的检测。
- 系统运行的环境与知识库中关于攻击的知识有关。
- 对于系统内部攻击者的越权行为,由于他们没有利用系统的缺陷,因而很难检测出来。
基于异常的检测
基本原理:
- 前提:入侵是异常活动的子集
- 用户轮廓(Profile): 通常定义为各种行为参数及其阀值的集合,用于描述正常行为范围
过程:
特点:
- 指标:漏报率低,误报率高,可检测未知入侵
具体实现:
- 基于统计学方法的异常检测
- 基于神经网络的异常检测
- 基于数据挖掘的异常检测
基于统计学方法的异常检测 原理: 记录的具体操作包括:CPU的使用,I/O的使用,使用地点及时间,邮件使用,编辑器使用,编译器使用,所创建、删除、访问或改变的目录及文件,网络上活动等。
统计:
- 操作密度
- 审计记录分布
- 范畴尺度
- 数值尺度
优点:
- 不需要操作系统及其安全性缺陷专门知识
- 能有效检测出冒充合法用户的入侵
缺点:
- 为用户建立正常行为模式的特征轮廓和对用户活动的异常性报警的门限值的确定都比较困难
- 不是所有入侵者的行为都能够产生明显的异常性
- 有经验的入侵者还可以通过缓慢地改变他的行为,来改变入侵检测系统中的用户正常行为模式,使其入侵行为逐步变为合法。
基于数据挖掘的异常检测 原理:
- 数据挖掘是指从大量实体数据抽象出模型的处理;目的是要从海量数据中提取对用户有用的数据;
- 这些模型经常在数据中发现对其它检测方式不是很明显的异常。
主要方法: 聚类分析、连接分析和顺序分析
数据分析技术
常见类型:
- 协议解析
- 有限状态自动机
- ACBM字符串匹配
- 正则表达式
- 事件规则树
- 完整性分析
检测实例
- 简单匹配
- 检查端口号
- 深入决策树
- 进一步深入
入侵检测系统部署
(待续)