入侵检测技术 - SecurityCN.net

入侵检测技术
胡建斌
北京大学网络与信息安全研究室
E-mail: [email protected]
http://infosec.pku.edu.cn/~hjbin
1.
概述
2.
入侵检测方法
3.
入侵检测系统的设计原理
4.
入侵检测响应机制
5.
入侵检测标准化工作
6.
其它
7.
展望
 概述
2.
入侵检测方法
3.
入侵检测系统的设计原理
4.
入侵检测响应机制
5.
入侵检测标准化工作
6.
其它
7.
展望
Intrusion



Intrusion : Attempting to break into
or misuse your system.
Intruders may be from outside the
network or legitimate users of the
network.
Intrusion can be a physical, system
or remote intrusion.
Intrusion Detection


传统的信息安全方法采用严格的访问控制和数
据加密策略来防护,但在复杂系统中,这些策
略是不充分的。它们是系统安全不可缺的部分
但不能完全保证系统的安全
入侵检测(Intrusion Detection)是对入侵行
为的发觉。它通过从计算机网络或计算机系统
的关键点收集信息并进行分析,从中发现网络
或系统中是否有违反安全策略的行为和被攻击
的迹象
入侵检测的定义



对系统的运行状态进行监视,发现各种攻
击企图、攻击行为或者攻击结果,以保证
系统资源的机密性、完整性和可用性
进行入侵检测的软件与硬件的组合便是入
侵检测系统
IDS : Intrusion Detection System
入侵检测的特点
一个完善的入侵检测系统的特点:




经济性
时效性
安全性
可扩展性
网络安全工具的特点
优点
防火墙
IDS
Scanner
VPN
防病毒
局限性
可简化网络管理,产品成熟
无法处理网络内部的攻击
实时监控网络安全状态
误报警,缓慢攻击,新的攻
击模式
简单可操作,帮助系统管理
员和安全服务人员解决实际
问题
并不能真正扫描漏洞
保护公网上的内部通信
可视为防火墙上的一个漏洞
针对文件与邮件,产品成熟
功能单一
入侵检测起源
1980年
Anderson提出:入侵检测概念,分类方法
1987年
Denning提出了一种通用的入侵检测模型
独立性
:系统、环境、脆弱性、入侵种类
系统框架:异常检测器,专家系统
90年初:CMDS™、NetProwler™、NetRanger™
ISS RealSecure™
入侵检测的起源(1)


审计技术:产生、记录并检查按时间顺序排列
的系统事件记录的过程
审计的目标:






确定和保持系统活动中每个人的责任
重建事件
评估损失
监测系统的问题区
提供有效的灾难恢复
阻止系统的不正当使用
入侵检测的起源(2)



计算机安全和审计
美国国防部在70年代支持“可信信息系
统”的研究,最终审计机制纳入《可信
计算机系统评估准则》(TCSEC)C2级
以上系统的要求的一部分
“褐皮书”《理解可信系统中的审计指
南》
入侵检测的起源(3)
 1980年4月,James P. Anderson :《Computer
Security Threat Monitoring and Surveillance》
(计算机安全威胁监控与监视)的技术报告,第
一次详细阐述了入侵检测的概念
 他提出了一种对计算机系统风险和威胁的分类方
法,并将威胁分为外部渗透、内部渗透和不法行
为三种
 还提出了利用审计跟踪数据监视入侵活动的思想。
这份报告被公认为是入侵检测的开山之作
入侵检测的起源(4)
从1984年到1986年,乔治敦大学的Dorothy Denning
和SRI/CSL的Peter Neumann研究出了一个实时入侵检
测系统模型,取名为IDES(入侵检测专家系统)
入侵检测的起源(5)
 1990,加州大学戴维斯分校的L. T. Heberlein等
人开发出了NSM(Network Security Monitor)
 该系统第一次直接将网络流作为审计数据来源,
因而可以在不将审计数据转换成统一格式的情况
下监控异种主机
 入侵检测系统发展史翻开了新的一页,两大阵营
正式形成:基于网络的IDS和基于主机的IDS
入侵检测的起源(6)
IDS存在与发展的必然性
一、网络攻击的破坏性、损失的严重性
二、日益增长的网络安全威胁
三、单纯的防火墙无法防范复杂多变的攻击
为什么需要IDS

关于防火墙





网络边界的设备
自身可以被攻破
对某些攻击保护很弱
不是所有的威胁来自防火墙外部
入侵很容易


入侵教程随处可见
各种工具唾手可得
IDS基本结构
入侵检测是监测计算机网络和系统,以发
现违反安全策略事件的过程
 简单地说,入侵检测系统包括三个功能
部件:
(1)信息收集
(2)信息分析
(3)结果处理

信息收集


入侵检测的第一步是信息收集,收集内容
包括系统、网络、数据及用户活动的状态
和行为。
需要在计算机网络系统中的若干不同关键
点(不同网段和不同主机)收集信息,


尽可能扩大检测范围
从一个源来的信息有可能看不出疑点
信息收集

入侵检测很大程度上依赖于收集信息的可
靠性和正确性,因此,要保证用来检测网
络系统的软件的完整性,特别是入侵检测
系统软件本身应具有相当强的坚固性,防
止被篡改而收集到错误的信息
信息收集的来源




系统或网络的日志文件
网络流量
系统目录和文件的异常变化
程序执行中的异常行为
系统或网络的日志文件



黑客经常在系统日志文件中留下他们的踪迹,
因此,充分利用系统和网络日志文件信息是检
测入侵的必要条件
日志文件中记录了各种行为类型,每种类型又
包含不同的信息,例如记录“用户活动”类型
的日志,就包含登录、用户ID改变、用户对文
件的访问、授权和认证信息等内容
显然,对用户活动来讲,不正常的或不期望的
行为就是重复登录失败、登录到不期望的位置
以及非授权的企图访问重要文件等等
系统目录和文件的异常变化


网络环境中的文件系统包含很多软件和数据文
件,包含重要信息的文件和私有数据文件经常
是黑客修改或破坏的目标。目录和文件中的不
期望的改变(包括修改、创建和删除),特别
是那些正常情况下限制访问的,很可能就是一
种入侵产生的指示和信号
入侵者经常替换、修改和破坏他们获得访问权
的系统上的文件,同时为了隐藏系统中他们的
表现及活动痕迹,都会尽力去替换系统程序或
修改系统日志文件
信息分析
 模式匹配
 统计分析
 完整性分析,往往用于事后分析
模式匹配


模式匹配就是将收集到的信息与已知的网络入侵
和系统误用模式数据库进行比较,从而发现违背
安全策略的行为
一般来讲,一种进攻模式可以用一个过程(如执
行一条指令)或一个输出(如获得权限)来表示。
该过程可以很简单(如通过字符串匹配以寻找一
个简单的条目或指令),也可以很复杂(如利用
正规的数学表达式来表示安全状态的变化)
统计分析


统计分析方法首先给系统对象(如用户、文件、
目录和设备等)创建一个统计描述,统计正常使
用时的一些测量属性(如访问次数、操作失败次
数和延时等)
测量属性的平均值将被用来与网络、系统的行为
进行比较,任何观察值在正常值范围之外时,就
认为有入侵发生
完整性分析

完整性分析主要关注某个文件或对象是
否被更改,这经常包括文件和目录的内
容及属性,它在发现被更改的、被安装
木马的应用程序方面特别有效
入侵检测的分类(1)

按照分析方法(检测方法)


异常检测模型(Anomaly Detection ):首先总
结正常操作应该具有的特征(用户轮廓),
当用户活动与正常行为有重大偏离时即被认
为是入侵
误用检测模型(Misuse Detection):收集非
正常操作的行为特征,建立相关的特征库,
当监测的用户或系统行为与库中的记录相匹
配时,系统就认为这种行为是入侵
异常检测
Normal
Activity
System Audit
Below Threshold levels
Metrics
Profiler
Exceed Threshold Levels
Intrusion
异常检测模型
异常检测
1. 前提:入侵是异常活动的子集
2. 用户轮廓(Profile): 通常定义为各种行为参数及其
阀值的集合,用于描述正常行为范围
3. 过程
监控

量化

比较

判定

修正
4. 指标:漏报(false positive),错报(false negative)
异常检测


如果系统错误地将异常活动定义为入侵,称为
误报(false positive) ;如果系统未能检测出真
正的入侵行为则称为漏报(false negative)。
特点:异常检测系统的效率取决于用户轮廓的
完备性和监控的频率。因为不需要对每种入侵
行为进行定义,因此能有效检测未知的入侵。
同时系统能针对用户行为的改变进行自我调整
和优化,但随着检测模型的逐步精确,异常检
测会消耗更多的系统资源。
Anomaly Detection
90
80
70
60
activity 50
measures40
30
20
10
0
probable
intrusion
normal profile
abnormal
CPU
Process
Size
Relatively high false positive rate anomalies can just be new normal activities.
误用检测
Normal Activity
System Audit
No Signature Match
Metrics
Pattern
Matcher
Signature Match
Intrusion
误用检测模型
误用检测
1. 前提:所有的入侵行为都有可被检测到的特征
2. 攻击特征库: 当监测的用户或系统行为与库中的记录
相匹配时,系统就认为这种行为是入侵
3. 过程
监控
4. 指标

特征提取
错报低
漏报高

匹配

判定
误用检测模型


如果入侵特征与正常的用户行能匹配,则系统
会发生误报;如果没有特征能与某种新的攻击
行为匹配,则系统会发生漏报
特点:采用特征匹配,滥用模式能明显降低错
报率,但漏报率随之增加。攻击特征的细微变
化,会使得滥用检测无能为力
Misuse Detection
pattern
matching
Intrusion
Patterns
intrusion
activities
Example: if (src_ip == dst_ip) then “land attack”
Can’t detect new attacks
入侵检测的分类(2)

按照数据来源:
基于主机:系统获取数据的依据是系统
运行所在的主机,保护的目标也是系统
运行所在的主机
 基于网络:系统获取的数据是网络传输
的数据包,保护的是网络的运行
 混合型

基于主机




监视与分析主机的审计记录
可以不运行在监控主机上
能否及时采集到审计记录?
如何保护作为攻击目标主机审计子系统?
基于网络





在共享网段上对通信数据进行侦听采集数据
主机资源消耗少
提供对网络通用的保护
如何适应高速网络环境?
非共享网络上如何采集数据?
两类IDS监测软件

网络IDS





侦测速度快
隐蔽性好
视野更宽
较少的监测器
占资源少

主机IDS




视野集中
易于用户自定义
保护更加周密
对网络流量不敏感
入侵检测的分类(3)

按系统各模块的运行方式
集中式:系统的各个模块包括数据的
收集分析集中在一台主机上运行
 分布式:系统的各个模块分布在不同
的计算机和设备上

入侵检测的分类(4)

根据时效性
脱机分析:行为发生后,对产生的数
据进行分析
 联机分析:在数据产生的同时或者发
生改变时进行分析

常用术语
Alert(警报)



当一个入侵正在发生或者试图发生时,IDS系统将发
布一个alert信息通知系统管理员
如果控制台与IDS系统同在一台机器,alert信息将
显示在监视器上,也可能伴随着声音提示
如果是远程控制台,那么alert将通过IDS系统内置
方法(通常是加密的)、SNMP(简单网络管理协议,
通常不加密)、email、SMS(短信息)或者以上几
种方法的混合方式传递给管理员
Anomaly(异常)



当有某个事件与一个已知攻击的信号相匹配时,多数
IDS都会告警
一个基于anomaly(异常)的IDS会构造一个当时活动
的主机或网络的大致轮廓,当有一个在这个轮廓以外
的事件发生时,IDS就会告警
有些IDS厂商将此方法看做启发式功能,但一个启发
式的IDS应该在其推理判断方面具有更多的智能
Automated Response



首先,可以通过重新配置路由器和防火墙,拒绝那些来
自同一地址的信息流;其次,通过在网络上发送reset包
切断连接
但是这两种方式都有问题,攻击者可以反过来利用重新
配置的设备,其方法是:通过伪装成一个友方的地址来
发动攻击,然后IDS就会配置路由器和防火墙来拒绝这
些地址,这样实际上就是对“自己人”拒绝服务了
发送reset包的方法要求有一个活动的网络接口,这样它
将置于攻击之下,一个补救的办法是:使活动网络接口
位于防火墙内,或者使用专门的发包程序,从而避开标
准IP栈需求
Signatures(特征)



IDS的核心是攻击特征,它使IDS在事件发生时触发
特征信息过短会经常触发IDS,导致误报或错报,过长
则会减慢IDS的工作速度
有人将IDS所支持的特征数视为IDS好坏的标准,但是
有的产商用一个特征涵盖许多攻击,而有些产商则会将
这些特征单独列出,这就会给人一种印象,好像它包含
了更多的特征,是更好的IDS
Promiscuous(混杂模式)




默认状态下,IDS网络接口只能看到进出主机的信息,
也就是所谓的non-promiscuous(非混杂模式)
如果网络接口是混杂模式,就可以看到网段中所有的
网络通信量,不管其来源或目的地
这对于网络IDS是必要的,但同时可能被信息包嗅探
器所利用来监控网络通信量
交换型HUB可以解决这个问题,在能看到全面通信量
的地方,会都许多跨越(span)端口
1.
概述
 入侵检测方法
3.
入侵检测系统的设计原理
4.
入侵检测响应机制
5.
入侵检测标准化工作
6.
其它
7.
展望
入侵检测相关的数学模型
•试验模型(Operational Model)
•平均值和标准差模型(Mean and Standard Deviation Model):
•多变量模型(Multivariate Model): 多个随机变量的相关性
计算,
•马尔可夫过程模型(Markov Process Model):初始分布和概
率转移矩阵;预测新的事件的出现频率太低,则表明出现异常情
况。
•时序模型(Time Series Model):该模型通过间隔计时器和资
源计数器两种类型随机变量参数之间的相隔时间和它们的值来判
断入侵
异常入侵检测方法
•统计异常检测
•基于特征选择异常检测
•基于贝叶斯推理异常检测
•基于贝叶斯网络异常检测
•基于模式预测异常检测
•基于神经网络异常检测
•基于贝叶斯聚类异常检测
•基于机器学习异常检测
•基于数据挖掘异常检测
误用入侵检测方法
•基于条件概率误用检测
•基于专家系统误用检测
•基于状态迁移误用检测
•基于键盘监控误用检测
•基于模型误用检测
基于误用的入侵检测



思想:主要是通过某种方式预先定义入侵行为,
然后监视系统,从中找出符合预先定义规则的
入侵行为
误用信号需要对入侵的特征、环境、次序以及
完成入侵的事件相互间的关系进行描述
重要问题



(1)如何全面的描述攻击的特征
(2)如何排除干扰,减小误报
(3)解决问题的方式
其它
•基于生物免疫检测
•基于伪装检测
1.
概述
2.
入侵检测方法
 入侵检测系统的设计原理
4.
入侵检测响应机制
5.
入侵检测标准化工作
6.
其它
7.
展望
数据源
操作员
活动
事件
感应器
通
告
警报
分析器
安全策略
管理员
管理器
安全策略
入侵检测系统原理图
应
急
攻击模式库
配置系统库
入侵检测器
审计记录/协议数据等
数据采集
应急措施
系统操作
安全控制
系统
简单的入侵检测示意图
基于主机的入侵检测系统


系统分析主机产生的数据(应用程
序及操作系统的事件日志)
由于内部人员的威胁正变得更重要
基于主机的检测威胁
 基于主机的结构
 优点及问题

基于主机的检测威胁



特权滥用
关键数据的访问及修改
安全配置的变化
基于主机的入侵检测系统结构

基于主机的入侵检测系统通常是基
于代理的,代理是运行在目标系统
上的可执行程序,与中央控制计算
机通信
集中式:原始数据在分析之前要先发
送到中央位置
 分布式:原始数据在目标系统上实时
分析,只有告警命令被发送给控制台

目标系统
审计记录
审计记录收集方法
审计记录预处理
异常检测
误用检测
安全管理员接口
审计记录数据
归档/查询
审计记录数据库
基于审计的入侵检测系统结构示意图
集中式检测的优缺点

优点:




不会降低目标机的性能
统计行为信息
多主机标志、用于支持起诉的原始数据
缺点:



不能进行实时检测
不能实时响应
影响网络通信量
分布式检测的优缺点

优点:



实时告警
实时响应
缺点:






降低目标机的性能
没有统计行为信息
没有多主机标志
没有用于支持起诉的原始数据
降低了数据的辨析能力
系统离线时不能分析数据
操作模式

操作主机入侵检测系统的方式
警告
 监视
 毁坏情况评估
 遵从性

基于主机的技术面临的问题




性能:降低是不可避免的
部署/维护
损害
欺骗
基于网络的入侵检测系统




入侵检测系统分析网络数据包
基于网络的检测威胁
基于网络的结构
优点及问题
基于网络的检测威胁



非授权访问
数据/资源的窃取
拒绝服务
基于网络的入侵检测系统结构



基于网络的入侵检测系统由遍及网络的
传感器(Sensor)组成,传感器会向中
央控制台报告。传感器通常是独立的检
测引擎,能获得网络分组、找寻误用模
式,然后告警。
传统的基于传感器的结构
分布式网络节点结构
传统的基于传感器的结构



传感器(通常设置为混杂模式)用
于嗅探网络上的数据分组,并将分
组送往检测引擎
检测引擎安装在传感器计算机本身
网络分接器分布在关键任务网段上,
每个网段一个
管理/配置
分析结果
网络安全数据库
入侵分析引擎器
嗅探器
嗅探器
基于网络的入侵检测系统模型
分布式网络节点结构


为解决高速网络上的丢包问题,1999年6
月,出现的一种新的结构,将传感器分布
到网络上的每台计算机上
每个传感器检查流经他的网络分组,然后
传感器相互通信,主控制台将所有的告警
聚集、关联起来
数据采集构件
通信传输构件
管理构件
应急处理构件
安全知识库
分布式入侵检测系统结构示意图
检测分析构件
基于网络的入侵检测的好处



威慑外部人员
检测
自动响应及报告
基于网络的技术面临的问题



分组重组
高速网络
加密
基于异常的入侵检测
思想:任何正常人的行为有一定的规律
 需要考虑的问题:
(1)选择哪些数据来表现用户的行为
(2)通过以上数据如何有效地表示用户的行为,
主要在于学习和检测方法的不同
(3)考虑学习过程的时间长短、用户行为的时
效性等问题

数据选取的原则
(1)数据能充分反映用户行为特征的全貌
(2) 应使需要的数据量最小
(3) 数据提取难度不应太大
NIDS抓包

PF_PACKET


libpcap


从链路层抓包
提供API函数
winpcap

Windows下的抓包库
分析数据包
模式匹配
协议分析
XML
TCP
IP
Ethernet
Unicode
HTTP
TCP
IP
Ethernet
模式匹配
0
10
20
30
40
50
60
70
80
90
a0
b0
c0
d0
e0
f0
100
110
120
130
140
150
160
0050
0157
1111
16d0
6374
6765
322e
4163
6572
2e61
726f
2f73
4c61
0a41
3a20
0a55
696c
6962
2057
0d0a
6974
6374
650d
dac6
3105
06a3
f6e5
732f
732f
6a70
6365
6572
6d65
6475
746f
6e67
6363
677a
7365
6c61
6c65
696e
486f
6563
696f
0a0d
f2d6
4000
0050
0000
7769
686f
6720
7074
3a20
7269
6374
7265
7561
6570
6970
722d
2f34
3b20
646f
7374
682e
6e3a
0a
00b0
8006
df62
4745
7265
6d65
4854
3a20
6874
7465
732f
2f0d
6765
742d
2c20
4167
2e30
4d53
7773
3a20
636f
204b
d04d
0000
322e
5420
6c65
5f63
5450
2a2f
7470
6368
7769
0a41
3a20
456e
6465
656e
2028
4945
204e
7777
6d0d
6565
cbaa
0a0a
413a
2f70
7373
6f6c
2f31
2a0d
3a2f
2e63
7265
6363
656e
636f
666c
743a
636f
2035
5420
772e
0a43
702d
0800
0231
9cf1
726f
2f69
6c61
2e31
0a52
2f77
6f6d
6c65
6570
2d75
6469
6174
204d
6d70
2e30
352e
616d
6f6e
416c
4500
d850
5018
6475
6d61
6765
0d0a
6566
7777
2f70
7373
742d
730d
6e67
650d
6f7a
6174
313b
3029
6572
6e65
6976
.P.......M....E.
[email protected]
.....P.b2.A:..P.
......GET /produ
cts/wireless/ima
ges/home_collage
2.jpg HTTP/1.1..
Accept: */*..Ref
erer: http://www
.ameritech.com/p
roducts/wireless
/store/..AcceptLanguage: en-us.
.Accept-Encoding
: gzip, deflate.
.User-Agent: Moz
illa/4.0 (compat
ible; MSIE 5.01;
Windows NT 5.0)
..Host: www.amer
itech.com..Conne
ction: Keep-Aliv
e....
协议分析
0
10
20
30
40
50
60
70
80
90
a0
b0
c0
d0
e0
f0
100
110
120
130
140
150
160
0050
0157
1111
16d0
6374
6765
322e
4163
6572
2e61
726f
2f73
4c61
0a41
3a20
0a55
696c
6962
2057
0d0a
6974
6374
650d
dac6
3105
06a3
f6e5
732f
732f
6a70
6365
6572
6d65
6475
746f
6e67
6363
677a
7365
6c61
6c65
696e
486f
6563
696f
0a0d
f2d6
4000
0050
0000
7769
686f
6720
7074
3a20
7269
6374
7265
7561
6570
6970
722d
2f34
3b20
646f
7374
682e
6e3a
0a
00b0
8006
df62
4745
7265
6d65
4854
3a20
6874
7465
732f
2f0d
6765
742d
2c20
4167
2e30
4d53
7773
3a20
636f
204b
d04d
0000
322e
5420
6c65
5f63
5450
2a2f
7470
6368
7769
0a41
3a20
456e
6465
656e
2028
4945
204e
7777
6d0d
6565
cbaa
0a0a
413a
2f70
7373
6f6c
2f31
2a0d
3a2f
2e63
7265
6363
656e
636f
666c
743a
636f
2035
5420
772e
0a43
702d
0800
0231
9cf1
726f
2f69
6c61
2e31
0a52
2f77
6f6d
6c65
6570
2d75
6469
6174
204d
6d70
2e30
352e
616d
6f6e
416c
4500
d850
5018
6475
6d61
6765
0d0a
6566
7777
2f70
7373
742d
730d
6e67
650d
6f7a
6174
313b
3029
6572
6e65
6976
.P.......M....E.
[email protected]
.....P.b2.A:..P.
......GET /produ
cts/wireless/ima
ges/home_collage
2.jpg HTTP/1.1..
Accept: */*..Ref
erer: http://www
.ameritech.com/p
roducts/wireless
/store/..AcceptLanguage: en-us.
.Accept-Encoding
: gzip, deflate.
.User-Agent: Moz
illa/4.0 (compat
ible; MSIE 5.01;
Windows NT 5.0)
..Host: www.amer
itech.com..Conne
ction: Keep-Aliv
e....
一个攻击检测实例

老版本的Sendmail漏洞利用
$ telnet mail.victim.com 25
WIZ
shell
或者
DEBUG
#
直接获得rootshell!
简单的匹配

检查每个packet是否包含:
“WIZ”
| “DEBUG”
检查端口号

缩小匹配范围
Port 25:{
“WIZ”
| “DEBUG”
}
深入决策树

只判断客户端发送部分
Port 25:{
Client-sends: “WIZ” |
Client-sends: “DEBUG”
}
1.
概述
2.
入侵检测方法
3. 入侵检测系统的设计原理
 入侵检测响应机制
5.
入侵检测标准化工作
6.
其它
7.
展望
响应策略





弹出窗口报警
E-mail通知
切断TCP连接
执行自定义程序
与其他安全产品交互


Firewall
SNMP Trap
自动响应
压制调速
1、 撤消连接
2、 回避
3、 隔离
SYN/ACK
RESETs
蜜罐

一个高级的网络节点在使用“压制调速”技术的情
况下,可以采用路由器把攻击者引导到一个经过特殊装
备的系统上,这种系统被成为蜜罐

蜜罐是一种欺骗手段,它可以用于错误地诱导攻击
者,也可以用于收集攻击信息,以改进防御能力

蜜罐能采集的信息量由自身能提供的手段以及攻击
行为数量决定
• BOF:
NFR Windows
• pecter是商业产品,运行在Windows平台上
• Deception Toolkit : DTK是一个状态机,实际上它能
虚拟任何服务,并可方便地利用其中的功能直接模仿许
多服务程序
• Mantrap :
Solaris 平台
Recourse
最多达四种操作系统 运行在
• Honeynets : 它是一个专门设计来让人“攻陷”的网
络,一旦被入侵者所攻破,入侵者的一切信息、工具等
都将被用来分析学习
主动攻击模型
1.
概述
2.
入侵检测方法
3. 入侵检测系统的设计原理
4.
入侵检测响应机制
 入侵检测标准化工作
6.
其它
7.
展望
CIDF
(The Common Intrusion Detection Framework)
http://www.gidos.org/drafts
CIDF




Increasingly, intrusions are taking on a grander scale.
Many attacks can be orchestrated over a wide area
network, and over a long period of time.
In such an environment, the ability of intrusion
detection systems and their components to share
information about these attacks is especially
important.
Such sharing would allow systems to warn others
about possible impending attacks
In order to achieve this, it is necessary for IDS
systems to have well defined interfaces to share
information.
Components




Event generators ("Eboxes")
Event analyzers ("A-boxes")
Event databases ("Dboxes")
Response units ("R-boxes")
Event Generators


obtain events from the larger
computational environment outside the
intrusion detection system
provide them in the CIDF gido format to
the rest of the system.
Event Generators



converting features of typical computational
environments into standard gido format
re-usable in that CIDF has a standard gido
format
it is useful to specify an interface for how
event generators are configured and used
Event Analyzers


Receive gidos from other components
Analyze them, and return new gidos
(which presumably represent some kind
of synthesis or summary of the input
events)
Event Databases

These components simply exist to give
persistence to CIDF gidos where that is
necessary
Response Units



Consume gidos which direct them
Carry out some kind of action on behalf
of other CIDF components, and they
carry out this action.
This includes such things as killing
processes, resetting connections,
altering file permissions, etc.
CISL
(A Common Intrusion Specification Language )


A language that can be used to
disseminate event records, analysis
results, and countermeasure directives
amongst intrusion detection and
response components.
We give an encoding that translates
these messages into an efficient octet
stream.
CIDF互操作性
 配置互操作性:相互发现并交换数据
 语法互操作性:正确识别交换的数据
 语义互操作性:相互理解交换的数据
CIDF协同方式






分析
互补
互纠
核实
调整
响应
Language Goals List
1.
2.
3.
4.
Any language used to exchange information about attacks
should have the following qualities:
Expressive. Components should be able to express a wide
range of intrusion- and misuse-related phenomena and
prescriptions.
Unique in expression. Components should not be able to
express a given sentiment in a nearly infinite number of ways;
instead, there should be one or a small number of "natural"
expressions.
Precise. The meaning of an utterance in the language should
be well-defined. But this language should also be...
Layered. Specific senses should be expressed as cases of
general senses, so that different receivers with different
requirements can discern as much as they need from a
message.
Language Goals List
6.
7.
8.
9.
Efficient. Messages should consume as little of system
resources as possible. Especially, it should be possible to
omit contextual information in most of a sequence of similar
messages.
Extensible. If a group of producers and consumers decide on
additional information they wish to be able to express, they
can define a way of doing so with a minimum of trouble and
not lose any compatibility with other CIDF components that do
not know their extension. These extensions may be arbitrarily
complex.
Simple. Producers should be able to encode information
quickly; consumers should be able to extract the information
they need without having to do excessive processing.
Portable. The language should support a variety of platforms
and transport mechanisms---support meaning that the
environment should not fundamentally limit what information
OPSEC
(Open Platform for Security)





An open, industry-wide initiative which enables customers to
deploy multi-vendor security solutions unified by a single
management framework.
Developed by Check Point Software Technologies, it has become
the de facto industry standard platform for achieving true
enterprise-wide security integration at the policy level.
The OPSEC architecture allows customers to build the secure
network that meets their specific business needs.
Customers can choose from over 200 best-of-breed products,
from routers, switches, servers, gateways and VPN devices, to
anti-virus, intrusion detection, URL filtering, high availability and
other security and reporting applications.
They can also sign up with Managed Service Providers whose
offerings are based on Check Point and OPSEC solutions.
1.
概述
2.
入侵检测方法
3. 入侵检测系统的设计原理
4. 入侵检测响应机制
5.
入侵检测标准化工作
 其它
7.
展望
IDS现状
1. 基于主机和基于网络的入侵检测系统采集、分析的数
据不全面
2. 入侵检测由各个检测引擎独立完成,中心管理控制平
台并不具备检测入侵的功能,缺乏综合分析
3. 在响应上,除了日志和告警,检测引擎只能通过发送
RST包切断网络连接,或向攻击源发送目标不可达信
息来实现安全控制
协同
协同
1. 目前IDS实现的功能是相对初级的
2. IDS也需要充分利用数据信息的相关性
3. IDS作为网络安全整体解决方案的重要部分,与
其他安全设备之间应该有着紧密的联系
4. IDS需要一种新的系统体系来克服自身的不足,
并将IDS的各个功能模块与其他安全产品有机地
融合起来, 这就需要引入协同的概念
数据采集协同
1. 基于网络的IDS需要采集动态数据(网络数据包)
2. 基于主机的IDS需要采集静态数据(日志文件等)
3. 目前的IDS将网络数据包的采集、分析与日志文件的采集、
分析割裂开来,没有在这两类原始数据的相关性上作考虑。
4. 在数据采集上进行协同并充分利用各层次的数据,是提高
入侵检测能力的首要条件
数据分析协同
入侵检测不仅需要利用模式匹配和异常检测技术来分析某个
检测引擎所采集的数据,以发现一些简单的入侵行为,还需
要在此基础上利用数据挖掘技术,分析多个检测引擎提交的
审计数据以发现更为复杂的入侵行为。
两个层面上进行
1. 单个检测引擎采集的数据:综合使用检测技术,以发现较
为常见的、典型的攻击行为 <—— 本地引擎
2. 多个检测引擎的审计数据:利用数据挖掘技术进行分析,
以发现较为复杂的攻击行为 <—— 中心管理控制平台
数据挖掘
1.
数据挖掘技术是一种决策支持过程,它主要基于AI,机器学习
统计等技术,能高度自动化地分析原有数据,做出归纳性推理,
从中挖掘出潜在的模式,预测出客户的行为
2.
运用关联分析,能够提取入侵行为在时间和空间上的关联,可
以进行的关联包括源IP关联、目标IP关联、数据包特征关联、
时间周期关联、网络流量关联等;
3.
运用序列模式分析可以进行入侵行为的时间序列特征分析;
4.
利用以上的分析结构,可以制订入侵行为的分类标准,并进行
形式化的描述,通过一定的训练数据集来构造检测模型;
5.
运用聚类分析,能优化或完全抛弃既有的模型,对入侵行为重
新划分并用显示或隐式的方法进行描述
数据挖掘过程
1. 数据准备
2. 数据清理和集成
3. 数据挖掘
4. 知识表示
5. 模式评估
数据挖掘
1. 从审计数据中提取特征,以帮助区分正常数据和攻击
行为
2. 将这些特征用于模式匹配或异常检测模型
3. 描述一种人工异常产生方法,来降低异常检测算法的
误报率
4. 提供一种结合模式匹配和异常检测模型的方法
基本框架
1. 引擎观察原始数据并计算用于模型评估的特征
2. 检测器获取引擎的数据并利用检测模型来评估它是否
是一个攻击
3. 数据仓库被用作数据和模型的中心存储地;
4. 模型产生的主要目的是为了加快开发以及分发新的入
侵检测模型的速度
响应协同
理想的情况是,建立相关安全产品能够相互通信并协同
工作的安全体系,实现防火墙、IDS、病毒防护系统和审
计系统等的互通与联动,以实现整体安全防护
响应协同:当IDS检测到需要阻断的入侵行为时,立即迅
速启动联动机制,自动通知防火墙或其他安全控制设备对
攻击源进行封堵,达到整体安全控制的效果。




IDS与防火墙的联动,可封堵源自外部网络的攻击
IDS与网络管理系统的联动,可封堵被利用的网络设备和主机
IDS与操作系统的联动,可封堵有恶意的用户账号
IDS与内网监控管理系统的联动,可封堵内部网络上恶意的主机
IDS与Firewall联动
通过在防火墙中驻留的一个IDS Agent对象,以接收来自
IDS的控制消息,然后再增加防火墙的过滤规则,最终实
现联动
Cisco
CIDF(CISL)
ISS
Checkpoint
模式匹配
 模式匹配是第一代(10M)和第二代(100M)入侵检测
系统在网络数据包里检查某个攻击特征存在性的一
种技术
 模式匹配就是将收集到的信息与已知的网络入侵和
系统误用模式数据库进行比较,从而发现违背安全
策略的行为
 一般来讲,一种进攻模式可以用一个过程(如执行
一条指令)或一个输出(如获得权限)来表示
优点
1. 只需收集相关的数据集合,显著减少系统负担
2. 技术已相当成熟
3. 检测准确率和效率都相当高
缺点
1.计算负荷大:支撑这一算法所需的计算量非常惊人,对一个
满负荷的100兆以太网而言,所需的计算量是每秒720亿次计算。
这一计算速度要求大大超出了现有的技术条件。同时,这种办法
虽然可以把系统构建为部分覆盖的功能,但是这样的系统有严重
的性能问题,并容易被黑客规避
2.检测准确率低:第二个根本弱点是使用固定的特征模式来检
测入侵只能检测特定的特征,这将会错过通过对原始攻击串做对
攻击效果无影响的微小变形而衍生所得的攻击
3. 没有理解能力:模式匹配系统没有判别模式的真实含义和实
际效果的能力,因此,所有的变形都将成为攻击特征库里一个不
同的特征,这就是模式匹配系统有一个庞大的特征库的原因
新技术的出现
1. 高速网络的出现
基于模式匹配的入侵检测系统在一个满负荷的100兆以太网上,
将不得不丢弃30%~75%的数据流量
某些系统,即使在利用率为20%的100兆以太网上也已经开始漏
掉某些攻击行为
2. 攻击技术的提高
3. 降低错报率和漏报率的要求
协议分析 + 命令解析
协议分析加命令解析技术是一种新的入侵检测技术,
它结合高速数据包捕捉、协议分析和命令解析来进行入
侵检测,给入侵检测战场带来了许多决定性的优势
由于有了协议分析加命令解析的高效技术,基于运行
在单个Intel架构计算机上的入侵检测系统的千兆网络
警戒系统,就能分析一个高负载的千兆以太网上同时存
在的超过300万个连接,而不错漏一个包
协议分析
协议分析充分利用了网络协议的高度有序性,使用这些知识
快速检测某个攻击特征的存在
因为系统在每一层上都沿着协议栈向上解码,因此可以
使用所有当前已知的协议信息,来排除所有不属于这一
个协议结构的攻击。
协议解码

Protocol Analysis



Ether、IP、ARP
TCP、UDP、ICMP
HTTP、Telnet、DNS、FTP、IRC、NetBIOS、
SMB、SMTP、SNMP、TFTP、RPC、POP3、
Finger、rlogin、MIME、IMAP4、VNC、
RealAudio、NetGames、MS SQL
协议分析的优势


效率高
检测0-day漏洞脚本


例如大量的90字符可能是ShellCode中的
NOOP操作。
依据RFC,执行协议异常分析
命令解析
解析器是一个命令解释程序,入侵检测引擎包括了多种不同
的命令语法解析器,因此,它能对不同的高层协议——如
Telnet、FTP、HTTP、SMTP、SNMP、DNS等的用户命令进行详
细的分析。
命令解析器具有读取攻击串及其所有可能的变形,并发掘其
本质含义的能力。这样,在攻击特征库中只需要一个特征,
就能检测这一攻击所有可能的变形。
解析器在发掘出命令的真实含义后将给恶意命令做好标记,
主机将会在这些包到达操作系统、应用程序之前丢弃它们。
典型例子
第一步——直接跳到第13个字节,并读取2个字节的协议标识。如果
值是0800,则说明这个以太网帧的数据域携带的是IP包,基于协议解
码的入侵检测利用这一信息指示第二步的检测工作。
第二步——跳到第24个字节处读取1字节的第四层协议标识。如果读
取到的值是06,则说明这个IP帧的数据域携带的是TCP包,入侵检测
利用这一信息指示第三步的检测工作。
第三步——跳到第35个字节处读取一对端口号。如果有一个端口号是
0080,则说明这个TCP帧的数据域携带的是HTTP包,基于协议解码的
入侵检测利用这一信息指示第四步的检测工作。
第四步——让解析器从第55个字节开始读取URL。
URL串将被提交给HTTP解析器,在它被允许提交给Web服务器前,
由HTTP解析器来分析它是否可能会做攻击行为。
优点
● 提高了性能:协议分析利用已知结构的通信协议,与模式匹配系统中
传统的穷举分析方法相比,在处理数据帧和连接时更迅速、有效。
● 提高了准确性:与非智能化的模式匹配相比,协议分析减少了虚警和误
判的可能性,命令解析(语法分析)和协议解码技术的结合,在命令字符
串到达操作系统或应用程序之前,模拟它的执行,以确定它是否具有恶意。
● 基于状态的分析:当协议分析入侵检测系统引擎评估某个包时,它考虑
了在这之前相关的数据包内容,以及接下来可能出现的数据包。与此相反,
模式匹配入侵检测系统孤立地考察每个数据包。
● 反规避能力:因为协议分析入侵检测系统具有判别通信行为真实意图的
能力,它较少地受到黑客所用的像URL编码、干扰信息、TCP/IP分片等入侵
检测系统规避技术的影响。
● 系统资源开销小:协议分析入侵检测系统的高效性降低了在网络和主机
探测中的资源开销,而模式匹配技术却是个可怕的系统资源消费者。
部署

NIDS的位置必须要看到所有数据包





共享媒介HUB
交换环境
隐蔽模式
千兆网
分布式结构


Sensor
Console
共享媒介
Console
IDS Sensor
HUB
Monitored
Servers
交换环境
Console
IDS Sensor
Switch
通过端口镜像实现
(SPAN / Port Monitor)
Monitored
Servers
隐蔽模式
不设IP
IDS Sensor
Switch
Console
Monitored
Servers
千兆网络
L4或L7
交换设备
IDS Sensors
Advanced
1 Gb to many 100Mb Sensors
(Advanced concept)
Deployment of IDS
IDS #3
Internet
FireWall
IDS #1
IDS #2
IDS#1 Monitor of External Traffic
External
IDS#2 Monitor of Internal Traffic
IDS#3 Monitor of Firewalls
性能测试


实际生产环境
模拟流量

硬件:SmartBits


人为构造一定大小的数据报,从64bytes到
1500bytes,衡量不同pps(packets per second)
下IDS对攻击的检测情况。
软件:tcpdump & tcpreplay

对流量的回放
IDS躲避测试

URL编码


“cgi-bin”
“%63%67%69%2d%62%69%6e”
Insersion,插入其他字符
“GET /cgi-bin/phf”  “GET //cgibin//phf”
以绕过攻击特征库。


将攻击包以碎片方式发出

fragrouter
状态性测试


Stateful ?
测试工具:Stick/Snot



不建立连接,直接发送攻击数据包
只分析单个数据包的IDS会大量误报
要减少误报,IDS必须维护连接状态
状态性测试:CGI攻击举例
1.
2.
3.
4.
5.
SYN
SYN/ACK
ACK
GET /cgi-bin/phf
200 OK 或
404 Not Found
三
次
握
手
1) 不握手,直接
发送第4个包;
2) 握手,能否跟
踪返回的第5个包
,判断攻击成功
与否?
产品

免费

Snort


http://www.snort.org
SHADOW

http://www.nswc.navy.mil/ISSEC/CID/
产品

商业








CyberCop Monitor, NAI
Dragon Sensor, Enterasys
eTrust ID, CA
NetProwler, Symantec
NetRanger, Cisco
NID-100/200, NFR Security
RealSecure, ISS
SecureNet Pro, Intrusion.com
资源

IDS FAQ


Focus-IDS Mailinglist


http://www.docshow.net
OldHand


http://online.securityfocus.com/archive/96
Yawl


http://www.robertgraham.com/pubs/
http://www.oldhand.org
Sinbad

http://sinbad.dhs.org/doc.html?board=IDS
1.
概述
2.
入侵检测方法
3.
入侵检测系统的设计原理
4.
入侵检测响应机制
5.
入侵检测标准化工作
6.
其它
 展望
面临的问题
(1) 随着能力的提高,入侵者会研制更多的攻击工具,以及使
用更为复杂精致的攻击手段,对更大范围的目标类型实施攻击;
(2) 入侵者采用加密手段传输攻击信息;
(3) 日益增长的网络流量导致检测分析难度加大;
(4) 缺乏统一的入侵检测术语和概念框架;
(5) 不适当的自动响应机制存在着巨大的安全风险;
(6) 存在对入侵检测系统自身的攻击;
(7) 过高的错报率和误报率,导致很难确定真正的入侵行为;
(8) 采用交换方法限制了网络数据的可见性;
(9) 高速网络环境导致很难对所有数据进行高效实时分析
发展方向
1. 更有效的集成各种入侵检测数据源,包括从不同的系统和不同的传
感器上采集的数据,提高报警准确率;
2. 在事件诊断中结合人工分析;
3. 提高对恶意代码的检测能力,包括email攻击,Java,ActiveX等;
4. 采用一定的方法和策略来增强异种系统的互操作性和数据一 致性;
5. 研制可靠的测试和评估标准;
6. 提供科学的漏洞分类方法,尤其注重从攻击客体而不是攻击主体的
观点出发;
7. 提供对更高级的攻击行为如分布式攻击、拒绝服务攻击等的检测手
段;