snort实验:编写snort规则
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
目录
1 实验细节 (1)
2 实验描述 (1)
3 环境配置 (1)
3.1 安装daq所需程序 (1)
3.1.1 安装flex (1)
3.1.2 安装bison (1)
3.1.3 安装libpcap-dev (2)
3.2 安装daq (2)
3.3 安装snort所需程序 (2)
3.3.1 安装libpcre3-dev (3)
3.3.2 安装libdumbnet-dev (3)
3.3.3 安装zlib1g-dev (3)
3.4 安装snort (3)
3.5 配置snort (4)
3.6 增加路径 (6)
3.7 安装xampp (6)
3.8 测试 (7)
4 实验任务 (7)
4.1 snort三种工作模式 (7)
4.2 snort规则定义 (8)
4.3 任务一 (9)
4.4 任务二 (11)
5 实验问题 (13)
6 实验总结 (13)
1 实验细节
不需要材料,可以参考互联网上的资料。
2 实验描述
对于网络安全而言,入侵检测是一件非常重要的事。入侵检测系统(IDS)用于检测网络中非法与恶意的请求。
Snort是一款免费、开源的网络入侵防御系统(Network Intrusion Prevention System,NIPS)和网络入侵检测系统(Network Intrusion Detection System,NIDS)工具,用于管理和防御黑客入侵Web 站点、应用程序和支持Internet的程序。本实验为了了解snort入侵检测系统中,对于外界访问本机系统依据规则提出警告等相关操作。查阅资料,编写具有防护警告的snort rules,了解snort运行机理。
3 环境配置
3.1 安装daq所需程序
snort使用数据采集器(daq)监听防火墙数据包队列,所以按照daq。需预装的程序有:flex、bison、libcap。
3.1.1 安装flex
3.1.2 安装bison
3.1.3 安装libpcap-dev
3.2 安装daq
安装daq本应使用如下命令:wget https:///downloads/
snort/daq-2.0.7.tar.gz,但由于是外网站,所以下载速度极慢,故在csdn中下载了相关数据包并压缩。
安装后make
3.3 安装snort所需程序
3.3.1 安装libpcre3-dev
3.3.2 安装libdumbnet-dev
3.3.3 安装zlib1g-dev
3.4 安装snort
安装snort本应使用如下命令:wget https:///downloads/snort
/snort-2.9.16.tar.gz,但由于是外网站,所以下载速度极慢,故在csdn中下载了相关数据包并压缩。
安装后make
snort -vde(显示数据链路层的信息)
3.5 配置snort
创建snort配置(及规则)目录,创建运行需要目录。
首先将解压出来的etc下的默认配置文件复制到snort配置目录下。
下载社区规则并解压到规则目录,本应使用如下命令:wget https:///downloads/community/community-rules.tar.gz,但由于是外网站,所以下载速度极慢,故在csdn中下载了相关数据包并压缩。
启用社区规则文件。
重新设置snort.conf中的变量值。
创建默认使用的白名单文件、黑名单文件和自己设置的规则文件(之后创建的规则都写到该规则集里)。
注释掉所有默认要加载的规则文件。
测试配置文件是否有误,用命令snort -T -c /etc/snort/snort.conf。
可见配置成功。
3.6 增加路径
在snort.conf文件中加入新建的规则集文件路径。
3.7 安装xampp
3.8 测试
在opt/lampp/htdocs文件夹下编写一个test.html的测试网页,通过linux本身的Firefox浏览器访问。
4 实验任务
4.1 snort三种工作模式
snort有三种工作模式:嗅探器、数据包记录器、网络入侵检测系统:
嗅探器模式仅仅是从网络上读取数据包并作为连续不断的流显示在终端上;
数据包记录器模式把数据包记录到硬盘上;
网路入侵检测模式是最复杂的,且是可配置的;
所以,可以让snort分析网络数据流以匹配用户定义的一些规则,并根据检测结果采取一定的动作。本实验要求snort工作在NIDS模式,即网络入侵检测
模式。
各模式命令如下:
嗅探模式:snort –v
记录模式:mkdir log snort -dev -l ./log
网络入侵检测模式:mkdir log + snort -dev -l ./log -h IP address -c /etc/snort/snort.conf(该模式将会按指定的规则扫描通信数据包)
4.2 snort规则定义
Snort规则被分成两个逻辑部分:规则头和规则选项:
规则头包含规则的动作、协议、源和目标ip地址与网络掩码,以及源和目标端口信息;
规则选项部分包含报警消息内容和要检查的包的具体部分;
规则的头包含了定义一个包的who,where和what信息,以及当满足规则定义的所有属性的包出现时要采取的行动。
规则的第一项是"规则动作"(rule action),"规则动作"告诉snort在发现匹配规则的包时要干什么。在snort中有五种动作:alert、log、pass、activate和dynamic:
alert-使用选择的报警方法生成一个警报,然后记录(log)这个包;
log-记录这个包;
pass-丢弃(忽略)这个包;
activate-报警并且激活另一条dynamic规则;
dynamic-保持空闲直到被一条activate规则激活,被激活后就作为一条log 规则执行;