🎓 总站 🏠 本课目录 CH1 概论 CH2 风险管理 CH3 安全保障 CH4 技术体系 CH5 鉴别 CH6 访问控制 CH7 防火墙 CH8 入侵检测 古典密码 哈希函数 牛津密码练习
网络空间安全技术 · 第八章

CH8 入侵检测技术

从 IDS 原理到 Snort 实战规则,安全防御的"巡逻队与监控摄像头"

📚 学习进度
0%

🎯学习目标

读完这一章,你应该能回答:

  1. IDS 为什么存在?它和防火墙有什么区别?
  2. CIDF 通用架构的四大组件是什么?
  3. 异常检测 vs 特征检测各自的优缺点?
  4. HIDS、NIDS、NNIDS 的区别?
  5. Snort 规则的语法格式和常见检测实例?

1为什么需要入侵检测?

形象比喻 防火墙是小区的大门保安,IDS 是小区里的巡逻队和监控摄像头。保安只管门口进出,但小偷翻墙进来、或住户自己搞破坏,保安管不了。

安全工具对比

工具主要功能优点缺点
防火墙网络访问控制成本低、性能好无法检测内部攻击
IDS检测入侵行为实时检测、深层分析误报/漏报、配置复杂
扫描器发现系统漏洞主动发现隐患只发现不能防御
VPN加密隧道通信保护传输安全隧道内恶意流量检测困难
防病毒查杀病毒木马针对性强依赖特征库、零日无效

预防-检测-响应:三步防御

🛡️

预防

防火墙、加密、访问控制 — 挡住攻击

🔍

检测

IDS、日志分析 — 发现已进入的攻击

🚨

响应

应急响应 — 处理攻击后果

2入侵检测基本概念

入侵的分类

类型说明
外部渗透未授权用户从外部入侵
内部渗透授权用户越权访问
不法行为合法用户做非法的事

IDS 六大功能

  1. 监视和分析用户和系统活动
  2. 审计系统的配置和脆弱性
  3. 评估关键系统和数据文件的完整性
  4. 识别已知的攻击模式
  5. 统计分析异常行为
  6. 对异常行为做出响应(自动/报警)

3入侵检测模型 ⭐

Denning 通用模型(1987)

最早、最有影响力的入侵检测模型。核心思想:建立用户/系统的"正常行为基线",偏离基线就是异常。

组件作用
主体(Subject)活动的发起者,通常指用户
对象(Object)资源实体,如文件、命令、设备
审计记录记录操作:<主体, 动作, 对象, 异常条件, 资源使用, 时间戳>
活动档案(Profile)保存主体的正常行为特征
异常记录记录检测到的异常
活动规则判断是否异常,更新档案,输出报警

CIDF 通用架构(重点)

CIDF(Common Intrusion Detection Framework)定义了 IDS 的四大组件:

E-box

事件产生器

从网络/系统中采集事件数据(监控摄像头)

A-box

事件分析器

分析数据,判断是否入侵(视频分析员)

R-box

响应单元

对入侵做出响应、报警/阻断(保安队)

D-box

事件数据库

存储中间数据和最终数据(录像存储)

其他模型

  • IDM 层次化模型:分安全审计(下层)和安全管理(上层)两个层次
  • SNMP-IDSM:将入侵检测引入网络管理体系,有 Agent/Manager/MIB 三角色

4检测技术分类 ⭐⭐

两大检测范式

异常检测特征检测(误用检测)
原理建立正常行为模型,偏离 = 入侵建立攻击特征库,匹配 = 入侵
优点能检测未知攻击误报率低,速度快
缺点误报率高,需要训练无法检测未知攻击(零日)
别名基于行为/统计基于知识/规则/签名

异常检测的具体技术

技术原理
统计异常检测收集正常活动的统计数据,建立统计模型
HMM 隐马尔可夫建立正常系统调用序列的概率模型
神经网络学习正常行为模式,自动分类异常
免疫系统方法模拟生物免疫:自我/非我识别
遗传算法用遗传进化搜索最优检测规则
SVM 支持向量机找最优分割超平面,区分正常/异常

特征检测的具体技术

技术原理
专家系统将安全专家知识编码为 if-then 规则
攻击签名将攻击表示为特定签名/模式
模式匹配在网络流量中搜索特定字节序列
状态转换分析将攻击建模为状态机(初始 → 中间 → 入侵)
状态转换分析(STAT) 把攻击过程画成从"正常状态"到"被入侵状态"的路径图,每一步对应一个系统事件。直观、可分析复杂多步攻击。

5HIDS vs NIDS vs NNIDS ⭐

主机入侵检测系统(HIDS)

数据来源:主机上的系统日志、应用日志、文件变化。两种检测方法:网络连接检测 + 主机文件检测。

优点缺点
可以精确判断入侵是否成功依赖主机 OS,不同系统需不同版本
可以监控加密后的流量可能被攻击者禁用
不需要额外硬件占用主机资源
能关联到具体用户无法检测网络层攻击

网络入侵检测系统(NIDS)

数据来源:网络流量(在交换机/路由器上抓包分析)。两种检测方法:模式匹配 + 协议分析。

优点缺点
实时检测网络流量无法检测加密流量
对网络性能影响小高速网络下丢包
独立于 OS无法判断入侵是否成功
攻击者难以清除痕迹对交换网络需要镜像端口

网络节点 IDS(NNIDS)

结合 HIDS 和 NIDS 的优点:安装在主机上,但只检测该主机相关的网络流量。解决了 NIDS 检测加密流量的问题。

三者对比速查

特性HIDSNIDSNNIDS
数据源主机日志网络流量本机网络流量
加密检测可以不可以可以
部署每台主机网络关键节点每台主机
内部攻击可检测不可检测部分可检测

6性能指标与响应方式

关键指标

误报 False Positive

把正常行为判定为攻击 = "冤枉好人"

漏报 False Negative

攻击行为没检测到 = "放过坏人"

检测率

检测到的攻击占全部攻击的比例,越高越好

现实困境 降低误报率往往会增加漏报率,反之亦然。需要在两者之间找平衡。

IDS 响应方式

类型方式说明
主动响应自动阻断连接发送 TCP RST 包切断连接
防火墙联动通知防火墙添加阻断规则
重配路由器让可疑流量进入"蜜罐"
被动响应报警通知向管理员发送邮件/短信
日志记录记录详细的攻击信息
SNMP Trap发送网管告警

7Snort 实战详解 ⭐⭐

Snort 是世界上最流行的开源 NIDS,由 Martin Roesch 于 1998 年开发。开源、轻量级、功能强大。

三个子系统

数据包解码器

从网卡抓包,解析各层协议头

检测引擎

将数据包与规则库进行匹配

日志和报警

匹配成功后记录日志或发出报警

三种工作模式

模式说明
嗅探器模式类似 tcpdump,只是抓包并显示
数据包记录器模式抓包并记录到磁盘
网络入侵检测模式抓包 + 规则匹配 + 报警(最常用)

规则语法(必考)

规则格式 动作 协议 源IP 源端口 方向 目的IP 目的端口 (选项)

示例:

alert tcp any any -> 192.168.1.0/24 80 (content:"attack"; msg:"Web Attack Detected"; sid:1000001;)

含义:任何来源向 192.168.1.0/24 的 80 端口发送 TCP 包,且内容包含 "attack" 时报警。

规则头要素

要素可选值说明
动作alert, log, pass, activate, dynamicalert=报警+记录,log=只记录,pass=忽略
协议tcp, udp, icmp, ip检测哪种协议
方向-><>单向或双向
IP/端口具体值或 any源和目的地址

常用规则选项

选项作用
msg报警消息文本
content匹配数据包中的特定内容
flags匹配 TCP 标志位(SYN, ACK, FIN 等)
sid规则唯一标识号
itypeICMP 类型
dsize数据包负载大小

检测实例

检测 ICMP 大包 Ping(Ping of Death):

alert icmp any any -> any any (dsize:>800; msg:"ICMP Large Packet"; sid:1000002;)

检测 NMAP TCP SYN 扫描:

alert tcp any any -> any any (flags:S; msg:"Possible NMAP SYN Scan"; sid:1000003;)

检测 NMAP XMAS 扫描:

alert tcp any any -> any any (flags:FPU; msg:"Possible NMAP XMAS Scan"; sid:1000004;)
为什么叫 XMAS? XMAS 扫描同时设置 FIN+PSH+URG 标志位,像圣诞树一样"灯全亮了"。

检测 NMAP NULL 扫描:

alert tcp any any -> any any (flags:0; msg:"Possible NMAP NULL Scan"; sid:1000005;)
NULL 扫描 所有标志位都不设置,像"关灯偷偷摸进来"。

8高级检测技术

神经网络异常检测

两种常用模型:

  • MLP(多层感知器):标准前馈神经网络,输入 → 隐藏层 → 输出
  • CMAC(小脑模型关节控制器):联想记忆网络,适合模式分类

工作流程:收集正常流量 → 提取特征 → 训练网络 → 偏离正常模式时触发报警。

状态转换分析(STAT)

将攻击建模为有限状态机:从初始状态经过一系列中间状态到达入侵状态。每个转换对应一个系统事件。

9IDS 部署策略

四种典型部署位置

位置检测内容说明
防火墙外部Internet 上的所有攻击尝试能看到最多攻击但噪音最大
DMZ 区域针对对外服务器的攻击保护 Web/邮件等公开服务
防火墙内部穿过防火墙的攻击过滤了外部噪音,关注真正威胁
内部网络内部攻击/异常行为检测内部威胁
最佳实践 在多个位置部署,形成纵深检测。就像在小区大门、楼道、家门口都装摄像头。

部署注意事项

  • NIDS 需要能镜像流量(交换机的 SPAN 端口)
  • 高速网络需要考虑性能瓶颈
  • 加密流量要在终端或代理处检测
  • HIDS 和 NIDS 互补部署效果最好

📋快速记忆总结

检测技术对比

异常检测特征检测
原理偏离正常 = 入侵匹配特征 = 入侵
未知攻击能检测不能检测
误报率
CIDF 四大组件 E-box(产生事件) → A-box(分析事件) → R-box(响应) + D-box(存储)
Snort 规则记忆 动作 协议 源IP 源端口 -> 目的IP 目的端口 (选项)
常用动作:alert / log / pass
常用选项:msg / content / flags / sid
关键指标 误报 = 冤枉好人 | 漏报 = 放过坏人

🎯本章自测

单选CIDF 架构中,负责采集事件数据的组件是?
单选能检测未知攻击(零日漏洞)的检测方法是?
单选以下哪种 IDS 可以检测加密流量?
单选Snort 规则 alert tcp any any -> any any (flags:FPU; ...) 检测的是?
单选"误报"(False Positive)的含义是?
Snort 的三个子系统是什么?
数据包解码器(Packet Decoder)、检测引擎(Detection Engine)、日志和报警(Logger & Alert)。
HIDS 和 NIDS 最大的区别是什么?
HIDS 数据来源是主机日志,能检测加密流量但占用主机资源;NIDS 数据来源是网络流量,独立于 OS 但无法检测加密流量。二者互补部署效果最好。
Denning 模型的核心思想是什么?
建立用户/系统的"正常行为基线"(活动档案),偏离基线就是异常。这是异常检测方法的理论基础。