Snort的使用二:入侵检测与规则编写

文章目录

  • 一、规则语法简述
    • 1、语法分析
    • 2、响应机制
    • 3、可选项内容
  • 二、规则编写示例
    • 1、ping警报
    • 2、TCP admin字段警报
    • 3、80端口监控
  • 三、入侵检测实验
    • 1、修改配置文件
    • 2、入侵检测示例

一、规则语法简述

1、语法分析

以下面规则为例进行解释:

alert icmp any any <> $HOME_NET any (logto:"task1"; msg:"————————————ICMP ping————————————"; sid:100000001)

Snort的使用二:入侵检测与规则编写_第1张图片

2、响应机制

Snort对规则的响应机制有:

1、alert 警报并记录
2、pass 忽略
3、log 记录
4、activation 报警并启动另一个动态规则链
5、dynamic 由其他规则包调用

3、可选项内容

Snort可选项内容有以下:

msg 在警报和记录的数据中打印消息。
logto 将数据包记录到一个用户指定的文件 中。
ttl 检测 IP 数据包的 TTL 域。
id 检测 IP 数据包的分段 ID 域是否等于特定 的值。
dsize 检测数据包的有效荷载是否等于特定 的值。
content 在数据包的有效荷载重搜索特定的模 式串。
offset 设定 content 中所说的起点。
depth 设定 content 中所说的终点。
nocase 设定搜索中使用与大小写无关的方 式。
flags 检测 TCP 数据包的标志是否等于特定的 值。
seq 检测 TCP 的顺序号是否对于特定的值。
ack 检测 TCP 的应答域否对于特定的值。
itype 检测 ICMP 类型域是否等于特定的值。
icode 检测 ICMP CODE域是否等于特定的值。
session 将应用层中一个指定的会话总的数据 复制出来。
icmp id 检测 ICMP ECHO ID 域是否等于特 定的值。
icmp seq 检测 ICMP ECHO 顺序号是否等于 特定的值。
ipoption 检测 IP 数据包中的协议头部的选项 部分是否存在特定值。
rpc 检测 RPC服务的特定应用。
resp 主动应答。

二、规则编写示例

1、ping警报

alert icmp any any <> $HOME_NET any (logto:"task1"; msg:"————————————ICMP ping————————————"; sid:100000001)

双向警报,凡是ping包(即icmp协议),警报并记录。

2、TCP admin字段警报

alert TCP any any <> $HOME_NET any (logto:"task2"; msg:"————————————TCP————————————"; content:"admin"; sid:100000002)

凡是TCP包中包含"admin"字段的,警报并记录。

3、80端口监控

alert TCP any any -> $HOME_NET 80 (logto:"task3"; msg:"————————————TCP 80————————————"; sid:100000003)

凡是访问主机80端口的TCP包,警报并记录。

三、入侵检测实验

  • 环境:win7 192.168.88.192

1、修改配置文件

1)打开Snort的配置文件:Snort -> etc -> snort.conf
Snort的使用二:入侵检测与规则编写_第2张图片
由于该配置文件是基于linux,因此需要进行一些改动。

  • 注:以下是我修改好的适用于Windows的配置文件,和编写的3条测试规则,可直接下载配置文件进行替换。

2)下载并替换配置文件

  • 配置文件:https://pan.baidu.com/s/1GIpExdtJEtAPdyA2WSfz1A

3)下载或新建规则文件,后缀为 .rules ,新建规则后保存进自定义目录(建议Snort -> rules 目录)。

  • 规则文件:https://pan.baidu.com/s/1QLahEcQS0FkR6j5MtvOviA

在这里插入图片描述

  • 也可在官网下载规则文件集:

Snort的使用二:入侵检测与规则编写_第3张图片
4)打开新的配置文件,找到 var HOME_NET ,将后边的ip替换为自己所在的局域网
Snort的使用二:入侵检测与规则编写_第4张图片
5)找到 site specific rules ,将下边的导入规则文件改为自己的规则文件路径
Snort的使用二:入侵检测与规则编写_第5张图片
全部保存即可。

2、入侵检测示例

在此只做简单测试。

配置文件及规则文件无误后,输入以下命令执行配置文件并进行入侵检测:Snort -dve -i1 -l c:\snort\log -c c:\snort\etc\snort.conf
Snort的使用二:入侵检测与规则编写_第6张图片
当出现以下语句即执行成功
Snort的使用二:入侵检测与规则编写_第7张图片
使用该主机随意访问网页,此时log文件夹下已有入侵检测日志文件
Snort的使用二:入侵检测与规则编写_第8张图片
查看内容,报警信息即为设定的msg内容,协议为TCP
Snort的使用二:入侵检测与规则编写_第9张图片
可自行编写规则进行入侵检测。

链接:Snort的使用一:安装、嗅探与记录

你可能感兴趣的:(Web攻防)