入侵检测技术 ( intrusion detection )
DESCRIPTION
入侵检测技术 ( Intrusion Detection ). 提纲. 入侵检测概述 入侵检测系统结构 入侵检测系统分类 入侵检测模型 入侵检测系统举例 入侵检测技术发展趋势. 提纲. 入侵检测概述 入侵检测系统结构 入侵检测系统分类 入侵检测模型 入侵检测系统举例 入侵检测技术发展趋势. 入侵检测概述. 为什么需要入侵检测?. 黑客攻击日益猖獗,防范问题日趋严峻。. 传统的安全产品足够吗 ?. - 每种 安全机制都有一定的应用范围和应用环境。. - 安全工具的使用受到人为因素的影响。. - 系统的后门是传统安全工具难于考虑到的地方。. - PowerPoint PPT PresentationTRANSCRIPT
入侵检测技术
( Intrusion Detection )
提纲
入侵检测概述入侵检测系统结构入侵检测系统分类入侵检测模型入侵检测系统举例入侵检测技术发展趋势
提纲
入侵检测概述入侵检测系统结构入侵检测系统分类入侵检测模型入侵检测系统举例入侵检测技术发展趋势
入侵检测概述为什么需要入侵检测?
• 黑客攻击日益猖獗,防范问题日趋严峻。
• 传统的安全产品足够吗 ?- 每种安全机制都有一定的应用范围和应用环境。 - 安全工具的使用受到人为因素的影响。 - 系统的后门是传统安全工具难于考虑到的地方。 - 只要有程序,就可能存在 BUG 。 - 黑客的攻击手段在不断地更新。
入侵检测概述什么是入侵检测?
入侵检测是对传统安全产品的合理补充,帮助系统对付网络攻击,扩展了系统管理员的安全管理能力(包括安全审计、监视、进攻识别和响应),提高了信息安全基础结构的完整性。它从计算机网络系统中的若干关键点收集信息,并分析这些信息,看看网络中是否有违反安全策略的行为和遭到袭击的迹象。
入侵检测概述
• IDS 是安全防护的第二道防线。
• IDS 用来检测攻击,包括外部攻击或试探、内部用户的未授权访问或攻击、误操作。
入侵检测系统( IDS )特点
• 入侵检测是一种积极主动的安全防护技术。
• 对 IDS 的要求: - 实时检测入侵行为 - 有效地阻止入侵或与其它的控制机制联动 - 不影响网络性能
入侵检测概述
入侵检测系统功能
• 监督并分析用户和系统的活动 • 检查系统配置和漏洞 • 检查关键系统和数据文件的完整性 • 识别反映已知进攻的活动模式并报警
• 异常行为模式的统计分析 • 操作系统的审计跟踪管理,识别用户违反安全策略的行为。
提纲
入侵检测概述入侵检测系统结构入侵检测系统分类入侵检测模型入侵检测系统举例入侵检测技术发展趋势
入侵检测系统结构IDS 系统结构图
数据采集( Sensor ) 分析器
知识库
响应 / 控制
响应政策配置信息
告警
控制
远程管理
提纲
入侵检测概述入侵检测系统结构入侵检测系统分类入侵检测模型入侵检测系统举例入侵检测技术发展趋势
入侵检测系统分类基于主机的入侵检测系统 HIDS
基于主机的入侵检测系统将检测模块驻留在被保护系统上,通过提取被保护系统的运行数据并进行入侵分析来实现入侵检测的功能。
基于主机的入侵检测
• 数据源
– 系统状态信息( CPU, Memory, Network )– 记账( Accounting )信息– 审计信息( Audit ),登录认证,操作审计,如 s
yslog 等– 应用系统提供的审计记录
基于主机的入侵检测• 基于主机的入侵检测系统实现方法
– 检测系统设置以发现不正当的系统设置和系统设置的不正当更改。例如 COPS 系统。
– 对系统安全状态进行定期检查以发现不正常的安全状态,例如 Tripwire 系统。
– 通过替换服务器程序,在服务器程序与远程用户之间增加一个中间层,在该中间层中实现跟踪和记录远程用户的请求和操作。例如 TCPwrapper 。
– 基于主机日志的安全审计,通过分析主机日志来发现入侵行为。
基于主机的入侵检测• 基于主机的入侵检测系统优点
基于主机的入侵检测系统具有检测效率高,分析代价小,分析速度快的特点,能够迅速并准确地定位入侵者,并可以结合操作系统和应用程序的行为特征对入侵进行进一步分析。
基于主机的入侵检测
– 日志信息有限,入侵不能完全记录
– 需要在主机上运行,占用系统资源
– 多数是事后的分析,实时性差
– 异构的平台支持困难
• 基于主机的入侵检测系统弱点
• 基于主机代理的分布式入侵检测系统
基于主机的入侵检测
分布式入侵检测系统
主机Agent
• HIDS 产品
基于主机的入侵检测
赛门铁克的 Intruder Alert
入侵检测系统分类
基于网络的入侵检测系统 (NIDS)
基于网络的入侵检测系统通过网络监视来实现数据提取,对可疑的异常活动和包含攻击特征的活动作出响应。
在局域网中,将网卡的接收模式设置为混杂模式,获得经过本网段的所有通信信息,从而实现网络监视的功能。
在其它网络环境下,虽然可能不采用广播的方式传送报文,但目前很多路由设备或交换机都提供数据报文监视功能。
基于网络的入侵检测
Router
IDS Sensor
Monitored Servers
WAN
LAN
基于网络的入侵检测
HUB
IDS Sensor
Monitored Servers
WAN
LAN
基于网络的入侵检测
– 成本低– 全面检测入侵– 实时检测、响应和截断。– 被动监听方式工作,很难被入侵者发现。– 能够检测未成功的攻击企图。– 不改变系统和网络的工作模式,不影响主机性能。– 与操作系统独立。
• 基于网络的入侵检测系统优点
基于网络的入侵检测
• 基于网络的入侵检测系统主要问题
– 数据量庞大,要求较强的特征数据提取能力– 高速网络的丢包问题– 监测范围的局限– 影响网络性能– 不能结合操作系统特征来对网络行为进行准确的判断
基于网络的入侵检测
• 基于网络代理的分布式入侵检测系统
基于网络的入侵检测
• NIDS 产品
东软、瑞星、东方龙马等公司都提供 NIDS 产品
入侵检测系统分类
混合分布式入侵检测系统 (DIDS)
HIDS 与 NIDS 并行可以做到优势互补。在实施 NIDS
系统的同时,在特定的敏感主机上增加代理。网络部分提供早期警告,而基于主机的部分可提供攻击成功与否的情况分析与确认。
混合分布式入侵检测系统可以从不同的主机系统、网络部件和通过网络监听方式收集数据,利用网络数据也可收集分析来自主机系统的高层事件发现可疑行为。
混合分布式入侵检测系统
主机主机
流量分析器
主机 Agent
管理器
网络 Agent
流量分析器
主机 主机
混合型的分布式入侵检测系统
– 不同的入侵检测 Agent之间的协调;– 不同审计记录格式:主机,网络;– 网络上传输的数据量可能会影响网络性能;– 层次结构
• 分布式入侵检测系统需要考虑的主要问题
混合型的分布式入侵检测系统
金诺网安拥有自主知识产权的入侵检测系统: KIDS 。
它是一种综合的网络入侵检测系统,分别可以保护重要网段和关键的主机。
• HIDS 和 NIDS融合的产品
提纲
入侵检测概述入侵检测系统结构入侵检测系统分类入侵检测模型入侵检测系统举例入侵检测技术发展趋势
入侵检测模型
误用( Misuse )检测
根据已知的攻击方法或系统安全缺陷方面的知识,建立特征( Signature ) 数据库,然后在收集到的网络活动中寻找匹配的使用模式( Pattern )—— 特征匹配 / 检测
– 准确率较高– 只能检测已知的攻击(漏警)
误用检测主要实现技术
安全专家对可疑行为的分析经验来形成一套推理规则(知识库),专家系统自动进行对所涉及入侵行为的分析工作。能随着经验的积累而利用其自学能力进行规则的扩充和修正。
关键点:• 知识库的完备性• 入侵特征抽取与表达
专家系统
误用检测主要实现技术
状态转换分析
在状态转换分析技术中,被监视的系统可以表达为状态转换图。系统从一个状态转移到另一个状态时必须符合某些条件,如果某条件不满足而系统状态发生了转变则被认为非法。
模式匹配
– 网络上每一个数据包都被检查,寻找攻击特征;– 与攻击特征相同长度的一组字节从可疑数据包首部取出,并对两组字节进行比较; – 如果两组字节一样,攻击特征即被检测出来; – 如果两组字节不一样,攻击特征“前移一个字节”,重复比较流程; – 第二次检测时,特征与数据包中第二位开始的字节进行比较; – 该流程被重复,每次的比较起始位置都增加一个字节,直到所有的数据字节都与攻击特征进行比较。
误用检测主要实现技术
模式匹配
0050 dac6 f2d6 00b0 d04d cbaa 0800 4500 0157 3105 4000 8006 0000 0a0a 0231 d850
数据包:
dac6 f2d6攻击特征:
发现攻击,报警!
模式匹配
• 特征模式匹配技术缺陷
– 计算的负载 计算量:攻击特征字节数 × 数据包字节数 × 每秒的数据 包数 × 数据库的攻击特征数
– 探测准确性 只能探测出明确的、唯一的攻击特征,即便是基于最轻微变换的攻击串都会被忽略。
– 消耗系统资源
误用检测主要实现技术
协议分析
协议分析能够智能地“理解”协议,利用网络协议的高度规则性快速探测攻击的存在。
– 解析命令字符串:解析器是一个命令解析程序,它可以在不同的上层应用协议上,对每一个用户命令作出详细分析。
– 探测碎片攻击和协议确认:在基于协议分析的 IDS 中,各种协议都被解析,如果出现 IP碎片设置,数据包将首先被重装,然后详细分析来了解潜在的攻击行为。通过重装数据包,系统可以检测到利用 IDS逃避技术的攻击手段。
协议分析
• 协议分析与命令解析的好处
当系统提升协议栈来解析每一层时,它用已获得的知识来消除在数据包结构中不可能出现的攻击,这样做的结果是性能得到明显改善。
协议分析
• 协议分析技术特点:
– 高性能– 高准确性– 抗 IDS躲避– 低系统资源消耗
协议分析
• 综合模式匹配和协议分析技术
高速数据包捕获+协议分析与命令解析 + 特征模式匹配
假设入侵行为与合法用户或者系统的正常行为有偏差。建立一个对应“正常活动”的特征原型,把所有与所建立的特征原型中差别“很大”的所有行为都标志为异常。
入侵检测模型
异常( Anomaly )检测
用户行为
正常行为 异常行为
误警漏警
“阈值
– 阀值选择是关键和难点– 能够检测出未知的攻击– “漏报”和“误报”问题– 不适应用户正常行为的突然改变
异常检测
• 异常检测特点
提纲
入侵检测概述入侵检测系统结构入侵检测系统分类入侵检测模型入侵检测系统举例入侵检测技术发展趋势
– 免费 NIDS
– 基于 GPL
– 最新版本 Snort 1.70
– 作者Martin Roesch
– 开放源码软件 – snort站点 http://www.snort.org
入侵检测系统举例— Snort 系统
Snort 系统简介
• RPM包安装
bash#rpm -ihv -nodeps snort-1.7-1.i386.rpm
• 源代码安装
解压、编译 libpcap 包 解压、编译 Snort
Snort 系统安装
Snort 系统
– 轻量级的入侵检测系统 – 支持多种平台: Linux , Solaris, IRIX , HP-UX , Windows
– 功能强大:可作为嗅探器,记录器和入侵检测系统 – 扩展性好 :插件,规则
Snort 系统
Snort 系统特点
Snort 系统
Snort 系统结构
数据包嗅探器 检测引擎 日志 / 告警
RulesRulesLibpcapLibpcap
Snort 嗅探器模式就是从网络上读出数据包,然后显示在控制台上。如:
./snort -vde
(在屏幕上输出数据报信息: 数据链路层、 IP、 TCP/UDP/ICMP、应用层)
Snort 系统的嗅探功能
Snort 数据包记录模式就是把所有的嗅探包记录到硬盘上。如:
./snort -dev -l ./log ( Snort 日志嗅探的数据包,并将其放到日志目录 ./lo
g )
日志模式:– 文本方式– 二进制方式,与 tcpdump 格式相同
Snort 系统的数据包记录功能
./snort -dev -l ./log -h 192.168.1.0/24 -c snort.conf
( snort.conf 是规则集文件)
Snort 系统的入侵检测功能
• 启动 Snort 入侵检测模式
• Snort 入侵检测模式的输出 检测到入侵行为的同时,选择多种方式及时记录和报警。
报警方式: syslog 、用户指定文件、 UNIXSocket 、 SMB 机制
规则动作 协议类型 IP地址 端口号 -> IP地址 端口号
Snort 系统
Snort 规则Snort 规则基本格式:
源发送方 目的接收方
规则动作 协议类型 (规则选项)
Snort 规则
规则动作 (Rule Action)
规则动作告诉 Snort,当发现匹配的数据包时,应该如何处理。
Snort 定义三种处理方式:– alert( 发送报警信息 )– log (记录该数据包)– pass(忽略该数据包)
Snort 规则
协议类型
当前, Snort 能够分析的协议是: TCP、 UDP和 ICMP,
将来,可能提供对 ARP、 ICRP、 GRE 、 OSPF 、 RIP、 IPX
等协议的支持。
Snort 规则
IP地址– any 用于匹配任意的 IP地址
– 支持 /CIDR的形式 如: 166.111.1.0/24 表示一个 C 类网络 166.111.0.0/16 表示一个 B 类网络 166.111.1.2/32 表示一台特定的主机地址
– 支持 IP地址的否定操作符 如: !192.168.1.0/24表示除了列出的 IP地址外,匹配所有的 IP地址
– 支持 IP地址列表: [IP地址 1/CIDR,IP地址 2/CIDR,....] 如: ![192.168.1.0/24,10.1.1.1.0/24]
Snort 规则
端口号 – any表示任意合法的端口号
– 静态端口号表示单个的端口号
如: 23(telnet) 、 80(http) 等
– 支持端口范围操作符 如: 1:1024 表示端口号在 1 到 1024之间 :600 表示端口号小于或者等于 600 500: 表示端口号大于等于 500
– 支持逻辑非 (port negation) 操作符 如: !6000:6010 表示除了这个端口范围以外的端口
Snort 规则
方向操作符 – 单向操作符 -> 表示数据包的流向。它左边是数据包的源地址和源端口,右边是目的地址和端口。
– 双向操作符 <> 使 Snort 对两个 IP地址 / 端口之间双向的数据传输进行记录 / 分析。 如: log !192.168.1.0/24 any <> 192.168.1.0/24 23
表示对一个 telnet 对话的双向数据传输进行记录。
Snort 规则
规则选项
规则选项是 Snort 入侵检测引擎的核心。
– 选项之间使用分号进行分割
– 选项关键词和其参数之间使用冒号分割
– Snort 1.7版有 23个规则选项关键词 如: msg :在报警和日志中打印的消息 flags :测试 TCP标志 (flag) 是否是某个值 nocase :大小写不敏感匹配内容字符串 content :在数据包的数据段中搜索模式 (pattern)
Snort 规则
规则编写举例 攻击名称 : NT IIS Showcode ASP 攻击种类 : 获取非法访问权限。 攻击描述 : 通过构造特定的 URL请求可以非法阅读服务器上的其他文件: http://attack host/msadc/Samples/SELECTOR/showcode.asp?source=/msadc/Samples/../../../../../boot.ini
入侵特征码 : – IP 地址:保护网段以外的 IP 地址。 – 协议类型: TCP– 端口: 80– TCP标志位: ACK– 数据段内容: /selector/showcode.asp
CVE ID--CAN-1999-0736 Bugtraq ID --167
攻
击
alert tcp !192.168.1.0/24 any -> 192.168.1.0/24 80
(msg:"CAN-1999-0736-IIS-showcode";flagsA;content:"/selector/showcode.asp"; nocase)
Snort
规则
Snort 规则
Snort 规则的二维链表
规则链表头源地址目标地址源端口目标端口
规则链表选项Payload ContentTCP FlagICMP TypeLength
规则链表头源地址目标地址源端口目标端口
规则链表选项Payload ContentTCP FlagICMP TypeLength
提纲
入侵检测概述入侵检测系统结构入侵检测系统分类入侵检测模型入侵检测系统举例入侵检测技术发展趋势
• 宽带高速实时的检测技术
IDS 的软件结构和算法 新的高速网络协议• 大规模分布式的检测技术
Purdue大学的 AAFID IDS 模型• 数据挖掘技术
海量的审计数据中提取出具有代表性的系统特征模式• 更先进的检测算法
计算机免疫技术、神经网络技术和遗传算法• 入侵响应技术
系统保护、动态策略和攻击对抗
IDS 系统的发展趋势
Purdue 大学的 AAFID IDS 模型
监视器代理
收发器
代理
基于代理的树形分层结构
Thank you !