Snort的配置与使用ppt课件
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
一些辅助功能,如Respond,Priority,PatternMatch, Session,React,Reference等,这些插件分别完成响应( 关闭连接)、严重级别、精模品课件式匹配(内容)、会话记录、 攻击响应(高级的响应机制)、攻击参考信息等功能。
3.输出插件
它们的源文件名都以spo_开头,这些插件分为日志和 警告两种类型放入两个列表中,在规则匹配过程中和 匹配结束之后调用,以便记录日志和警告。
In itP rep r百度文库 cesso rs In itP lu g In s
In itO u tp u tP lu g in s 预处理器、处理插件、输出插件
精品课件
配置输出插件
主要在报文匹配某条规则需要输出时,调用相应的输 出插件。根据snort.conf说明进行相应配置。
例:
output database :log, mysql, user=westfox dbname=detector host=localhost password password=t123 port=1234
(mysql>)grant usage on *.* to acid@loacalhost identified by “acidPwd”;
(mysql>)grant select,insert,update,delete,create,alter on snort.* to acid@localhost;
Windows版本的Apache Web 服务器
Jpgraph
PHP所用图形库
Mysql
Windows版本的Mysql数据库, 用于存储snrot的日志,报警,权限等信息
PHP
Windows中PHP脚本的支持环境
精品课件
三、 Windows环境下Snort的安装
ACID+snort的入侵检测系统
包
精品课件
辅助软件:
Acid(Analysis Console for Intrusion Databases )
基于PHP的入侵检测数据库分析控制台
ADOdb(ADOdb Database Abstraction Library)
Adodb库为PHP提供了统一的数据库连接函数
Apache
在检测过程中,一旦规则匹配成功,就会触发处理函 数的执行,预处理器就会在预处理过程中对数据报调 用相应处理函数进行处理。
精品课件
三、Snort的总体流程
开始
检测流程开始
P arseC m d L in e 解释命令行
O penPcap 初始化
S etP k tP ro cesso rs 设置解码函数
模拟TCP/IP堆栈功能的插件:如IP碎片重组、TCP流重组 插件。
各种解码插件:如HTTP解码插件、Unicode解码插件、RPC 解码插件、Telnet协商插件等。
规则匹配无法进行攻击检测时所用的检测插件:如端口扫
描插件、Spade异常入侵检测插件、Bo检测插件、Arp欺骗
检测插件等。
精品课件
优点
增强可扩展性 简化编码工作 使代码功能内聚,模块行强,程序相对易读
插件模块包括预处理插件、处理插件和输出插 件3种,它们通常对应规则中的一个或几个关 键字,规则匹配中遇到这些关键字时就会激活 相应的插件,以完成相应的功能。
精品课件
1.预处理插件
它们的源文件名都是以spp_开头的,在规则匹配( 误用检测)之前运行,完成的功能主要分为以下几类 。
精品课件
进入命令行方式,输入下面的命令:
C:\snort\bin>snort –c “C:\snort\etc\snort.conf” –l “C:\snort\log” –d –e –X
X参数:用于在数据链接层记录rawpacket数据; d e c参数:用以指定snort i参数:指定监视的网络适配器的编号。
$archive_password = "acidpwd";
$ChartLib_path=”C:\php\jpgraph\src”;
精品课件
http://127.0.0.1:50080/acid/acid_db_setup.php
精品课件
配置并启动snort
打开C:\snort\etc\snort.conf文件,将文件中的下列语句: include classification.config include reference.config
精品课件
/* Archive DB connection parameters */
$archive_dbname = "snort_archive";
$archive_host
= "localhost";
$archive_port
= "3306";
$archive_user
= "acid";
精品课件
6.2 Snort的总体结构分析
Snort的模块结构 插件机制 Snort的总体流程 入侵检测流程
精品课件
一、Snort总体结构分析
预处理插件
处理插件
输出插件
规则处理模块 解码模块
使用/归纳
日志模块 辅助模块
主控模块
Snort的模块组成及其相互关系
精品课件
Snort分析
32
二、Snort的插件机制
数据包记录器——数据包记录器模式把数据包记 录到硬盘上。 ./snort –dev –l ./log
精品课件
网络入侵检测系统——网络入侵检测模式是最复杂的 ,而且是可配置的。用户可以让Snort分析网络数据 流以匹配用户定义的一些规则,并根据检测结果采取 一定的动作。 ./snot –dev –l ./log –c snort.conf
上面的命令将启动snort,如果snort正常运行,系统最 后将显示如下图所示
精品课件
精品课件
精品课件
精品课件
四、Snort的配置
配置snort.conf文件
④定制snort规则集。
精品课件
设置网络相关变量
Snort.conf中的主要环境变量有: var HOME_NET any 本地网络 var EXTERNAL_NET any 外地网络 var DNS_SERVER $HOME_NET var HTTP_SERVER $HOME_NET var SQL_SERVER $HOME_NET var TELNET_SERVER $HOME_NET var SNMP_SERVER $HOME_NET
修改为绝对路径:
include C:\snort\etc\classfication.config include C:\snort\etc\reference. config
在该文件的最后加入下面语句: 目的:将日志记录到数据库中
output database: alert,mysql,host=localhost user=snort password=snortpwd dbname=snort encoding=hex detail=full
2.处理插件
它们的源文件名都以sp_开头,在规则匹配阶段的 ParseRuleOptions中被调用,辅助完成基于规则的匹 配检测过程。每个规则处理函数通常对应规则选项中 的一个关键字,实现对这个关键字的解释或辅助解释 。
这些插件的主要功能如下。
协议各字段的检查,如TCPFlag,IcmpType,IcmpCode, Ttl,IpId,TcpAck,TcpSeq,Dsize,IpOption,Rpc, IcmpId,IcmpSeq,IpTos,FragBits,TcpWin,IpProto和 IpSame等。
精品课件
需要了解的Mysql命令:
显示数据库列表: show databases;
显示库中的数据表: use mysql; show tables;
建库与删库: create database 库名; drop database 库名;
精品课件
精品课件
精品课件
激活和配置ACID
output database: alert, mysql, host=localhost user=snort password=snorttest dbname=snort encoding=hex detail=full
精品课件
定制snort规则集
#include <被包含文件的完整路径和文件名> include $RULE_PATH/local.rules
Snort是一个跨平台的,轻量级的网络入侵软 件,基于libpcap的数据包嗅探器和日志记录 工具
Snort采用基于规则的网络信息搜索机制,对 数据包进行内容的模式匹配,从中发现入侵和 探测行为。
Martin Roesch→ ……→Snort Team
Snort 2.9.7.6
精品课件
1. Snort的组成
解压缩acid至apache安装目录的htdocs\acid目录下 修改\htdocs\acid下的acid_conf.php文件
DBlib_path = "C:\php\adodb";
$DBtype=”mysql”; $alert_dbname = "snort"; $alert_host = "localhost"; $alert_port = "3306"; $alert_user = "acid"; $alert_password = "acidpwd";
C:\mysql\bin>mysql –u root –p (Mysql>)create database snort; (Mysql>)quit (c:\mysql\bin>)Mysql –D snort –u root –p
<C:\snort\contrib\create_mysql
精品课件
为用户分配权限
入侵检测技术
第六章 Snort的配置与使用
精品课件
本章内容
Snort的安装与配置 Snort的总体结构分析 Snort的使用 Snort的规则 使用Snort构建入侵检测系统实例
精品课件
6.1 SNORT的安装与配置
精品课件
3
一、Snort简介
snort 是一个用C语言编写的开放源代码的软 件
精品课件
以一个HTTP解码预处理器插件为例来解释 插件的内部结构:
每个插件都有一个安装函数,名称为SetupXXX(),如 Spp_http_decode.c:SetupHttpDecode()。
在解释规则文件时,如果检测到相应的关键字,系统 就会使用规则文件中这些关键字后的字符串作为参数 来调用相应的初始化函数。
精品课件
var HTTP_PORTS 80 var ORACLE_PORTS 1521 var RULE_PATH ../rules
本地规则路径
精品课件
配置预处理器
是在基于规则的模式匹配之前运行的模块,通常为规 则匹配进行一些前期的处理。如:IP分片重组( frag2)、TCP流重组(stream4) 、各种应用层解码等 。根据需要配置,通常采用默认值.
精品课件
二、Snort软件的下载
下载snort
http://www.snort.org 入侵检测的核心部分
下载winpcap或者libpcap
http://winpcap.polito.it/ http://www.tcpdump.org 网络数据包截取驱动程序,用于从网卡中抓取数据
1. 搭建apache+PHP的运行环境 2. 安装snort和Winpcap 3. 安装MySQL 4. 安装ADOdb 5. 安装Jpgraph 6. 安装和配置ACID 7. 配置和启动snort
精品课件
几点说明
1. 在snort中有一脚本create_mysql,用于建 立所有必要的表。
数据包解码器 检测引擎 日志和报警子系统
数 据 包
数 据 包 解 码 器
检 测 引 擎
精品课件
日 志 报 警
2. Snort的工作模式(3种)
嗅探器 数据包记录器 网络入侵检测系统
精品课件
4. Snort的工作模式(3种)
嗅探器——嗅探器模式仅仅是从网络上读取数据 包并作为连续不断的流显示在终端上。 ./snort –v ./snort –vd ./snort –vde
3.输出插件
它们的源文件名都以spo_开头,这些插件分为日志和 警告两种类型放入两个列表中,在规则匹配过程中和 匹配结束之后调用,以便记录日志和警告。
In itP rep r百度文库 cesso rs In itP lu g In s
In itO u tp u tP lu g in s 预处理器、处理插件、输出插件
精品课件
配置输出插件
主要在报文匹配某条规则需要输出时,调用相应的输 出插件。根据snort.conf说明进行相应配置。
例:
output database :log, mysql, user=westfox dbname=detector host=localhost password password=t123 port=1234
(mysql>)grant usage on *.* to acid@loacalhost identified by “acidPwd”;
(mysql>)grant select,insert,update,delete,create,alter on snort.* to acid@localhost;
Windows版本的Apache Web 服务器
Jpgraph
PHP所用图形库
Mysql
Windows版本的Mysql数据库, 用于存储snrot的日志,报警,权限等信息
PHP
Windows中PHP脚本的支持环境
精品课件
三、 Windows环境下Snort的安装
ACID+snort的入侵检测系统
包
精品课件
辅助软件:
Acid(Analysis Console for Intrusion Databases )
基于PHP的入侵检测数据库分析控制台
ADOdb(ADOdb Database Abstraction Library)
Adodb库为PHP提供了统一的数据库连接函数
Apache
在检测过程中,一旦规则匹配成功,就会触发处理函 数的执行,预处理器就会在预处理过程中对数据报调 用相应处理函数进行处理。
精品课件
三、Snort的总体流程
开始
检测流程开始
P arseC m d L in e 解释命令行
O penPcap 初始化
S etP k tP ro cesso rs 设置解码函数
模拟TCP/IP堆栈功能的插件:如IP碎片重组、TCP流重组 插件。
各种解码插件:如HTTP解码插件、Unicode解码插件、RPC 解码插件、Telnet协商插件等。
规则匹配无法进行攻击检测时所用的检测插件:如端口扫
描插件、Spade异常入侵检测插件、Bo检测插件、Arp欺骗
检测插件等。
精品课件
优点
增强可扩展性 简化编码工作 使代码功能内聚,模块行强,程序相对易读
插件模块包括预处理插件、处理插件和输出插 件3种,它们通常对应规则中的一个或几个关 键字,规则匹配中遇到这些关键字时就会激活 相应的插件,以完成相应的功能。
精品课件
1.预处理插件
它们的源文件名都是以spp_开头的,在规则匹配( 误用检测)之前运行,完成的功能主要分为以下几类 。
精品课件
进入命令行方式,输入下面的命令:
C:\snort\bin>snort –c “C:\snort\etc\snort.conf” –l “C:\snort\log” –d –e –X
X参数:用于在数据链接层记录rawpacket数据; d e c参数:用以指定snort i参数:指定监视的网络适配器的编号。
$archive_password = "acidpwd";
$ChartLib_path=”C:\php\jpgraph\src”;
精品课件
http://127.0.0.1:50080/acid/acid_db_setup.php
精品课件
配置并启动snort
打开C:\snort\etc\snort.conf文件,将文件中的下列语句: include classification.config include reference.config
精品课件
/* Archive DB connection parameters */
$archive_dbname = "snort_archive";
$archive_host
= "localhost";
$archive_port
= "3306";
$archive_user
= "acid";
精品课件
6.2 Snort的总体结构分析
Snort的模块结构 插件机制 Snort的总体流程 入侵检测流程
精品课件
一、Snort总体结构分析
预处理插件
处理插件
输出插件
规则处理模块 解码模块
使用/归纳
日志模块 辅助模块
主控模块
Snort的模块组成及其相互关系
精品课件
Snort分析
32
二、Snort的插件机制
数据包记录器——数据包记录器模式把数据包记 录到硬盘上。 ./snort –dev –l ./log
精品课件
网络入侵检测系统——网络入侵检测模式是最复杂的 ,而且是可配置的。用户可以让Snort分析网络数据 流以匹配用户定义的一些规则,并根据检测结果采取 一定的动作。 ./snot –dev –l ./log –c snort.conf
上面的命令将启动snort,如果snort正常运行,系统最 后将显示如下图所示
精品课件
精品课件
精品课件
精品课件
四、Snort的配置
配置snort.conf文件
④定制snort规则集。
精品课件
设置网络相关变量
Snort.conf中的主要环境变量有: var HOME_NET any 本地网络 var EXTERNAL_NET any 外地网络 var DNS_SERVER $HOME_NET var HTTP_SERVER $HOME_NET var SQL_SERVER $HOME_NET var TELNET_SERVER $HOME_NET var SNMP_SERVER $HOME_NET
修改为绝对路径:
include C:\snort\etc\classfication.config include C:\snort\etc\reference. config
在该文件的最后加入下面语句: 目的:将日志记录到数据库中
output database: alert,mysql,host=localhost user=snort password=snortpwd dbname=snort encoding=hex detail=full
2.处理插件
它们的源文件名都以sp_开头,在规则匹配阶段的 ParseRuleOptions中被调用,辅助完成基于规则的匹 配检测过程。每个规则处理函数通常对应规则选项中 的一个关键字,实现对这个关键字的解释或辅助解释 。
这些插件的主要功能如下。
协议各字段的检查,如TCPFlag,IcmpType,IcmpCode, Ttl,IpId,TcpAck,TcpSeq,Dsize,IpOption,Rpc, IcmpId,IcmpSeq,IpTos,FragBits,TcpWin,IpProto和 IpSame等。
精品课件
需要了解的Mysql命令:
显示数据库列表: show databases;
显示库中的数据表: use mysql; show tables;
建库与删库: create database 库名; drop database 库名;
精品课件
精品课件
精品课件
激活和配置ACID
output database: alert, mysql, host=localhost user=snort password=snorttest dbname=snort encoding=hex detail=full
精品课件
定制snort规则集
#include <被包含文件的完整路径和文件名> include $RULE_PATH/local.rules
Snort是一个跨平台的,轻量级的网络入侵软 件,基于libpcap的数据包嗅探器和日志记录 工具
Snort采用基于规则的网络信息搜索机制,对 数据包进行内容的模式匹配,从中发现入侵和 探测行为。
Martin Roesch→ ……→Snort Team
Snort 2.9.7.6
精品课件
1. Snort的组成
解压缩acid至apache安装目录的htdocs\acid目录下 修改\htdocs\acid下的acid_conf.php文件
DBlib_path = "C:\php\adodb";
$DBtype=”mysql”; $alert_dbname = "snort"; $alert_host = "localhost"; $alert_port = "3306"; $alert_user = "acid"; $alert_password = "acidpwd";
C:\mysql\bin>mysql –u root –p (Mysql>)create database snort; (Mysql>)quit (c:\mysql\bin>)Mysql –D snort –u root –p
<C:\snort\contrib\create_mysql
精品课件
为用户分配权限
入侵检测技术
第六章 Snort的配置与使用
精品课件
本章内容
Snort的安装与配置 Snort的总体结构分析 Snort的使用 Snort的规则 使用Snort构建入侵检测系统实例
精品课件
6.1 SNORT的安装与配置
精品课件
3
一、Snort简介
snort 是一个用C语言编写的开放源代码的软 件
精品课件
以一个HTTP解码预处理器插件为例来解释 插件的内部结构:
每个插件都有一个安装函数,名称为SetupXXX(),如 Spp_http_decode.c:SetupHttpDecode()。
在解释规则文件时,如果检测到相应的关键字,系统 就会使用规则文件中这些关键字后的字符串作为参数 来调用相应的初始化函数。
精品课件
var HTTP_PORTS 80 var ORACLE_PORTS 1521 var RULE_PATH ../rules
本地规则路径
精品课件
配置预处理器
是在基于规则的模式匹配之前运行的模块,通常为规 则匹配进行一些前期的处理。如:IP分片重组( frag2)、TCP流重组(stream4) 、各种应用层解码等 。根据需要配置,通常采用默认值.
精品课件
二、Snort软件的下载
下载snort
http://www.snort.org 入侵检测的核心部分
下载winpcap或者libpcap
http://winpcap.polito.it/ http://www.tcpdump.org 网络数据包截取驱动程序,用于从网卡中抓取数据
1. 搭建apache+PHP的运行环境 2. 安装snort和Winpcap 3. 安装MySQL 4. 安装ADOdb 5. 安装Jpgraph 6. 安装和配置ACID 7. 配置和启动snort
精品课件
几点说明
1. 在snort中有一脚本create_mysql,用于建 立所有必要的表。
数据包解码器 检测引擎 日志和报警子系统
数 据 包
数 据 包 解 码 器
检 测 引 擎
精品课件
日 志 报 警
2. Snort的工作模式(3种)
嗅探器 数据包记录器 网络入侵检测系统
精品课件
4. Snort的工作模式(3种)
嗅探器——嗅探器模式仅仅是从网络上读取数据 包并作为连续不断的流显示在终端上。 ./snort –v ./snort –vd ./snort –vde