ImageVerifierCode 换一换
格式:DOCX , 页数:43 ,大小:41.41KB ,
资源ID:22313342      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/22313342.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(Snort中文手册Word格式文档下载.docx)为本站会员(b****8)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

Snort中文手册Word格式文档下载.docx

1、所谓的二进制日志文件格式就是tcpdump程序使用的格式。使用下面的命令可以把所有的包记录到一个单一的二进制文件中:./snort -l ./log -b 注意此处的命令行和上面的有很大的不同。我们勿需指定本地网络,因为所有的东西都被记录到一个单一的文件。你也不必冗余模式或者使用-d、-e功能选项,因为数据包中的所有内容都会被记录到日志文件中。 你可以使用任何支持tcpdump二进制格式的嗅探器程序从这个文件中读出数据包,例如: tcpdump或者Ethereal。使用-r功能开关,也能使snort读出包的数据。snort在所有运行模式下都能够处理tcpdump格式的文件。如果你想在嗅探器模式

2、下把一个tcpdump格式的二进制文件中的包打印到屏幕上,可以输入下面的命令: ./snort -dv -r packet.log 在日志包和入侵检测模式下,通过BPF(BSD Packet Filter)接口,你可以使用许多方式维护日志文件中的数据。例如,你只想从日志文件中提取ICMP包,只需要输入下面的命令行: ./snort -dvr packet.log icmp网络入侵检测系统 snort最重要的用途还是作为网络入侵检测系统(NIDS),使用下面命令行可以启动这种模式: ./snort -dev -l ./log -h 192.168.1.0/24 -c snort.conf sno

3、rt.conf是规则集文件。snort会对每个包和规则集进行匹配,发现这样的包就采取相应的行动。如果你不指定输出目录,snort就输出到/var/log/snort目录。 注意:如果你想长期使用snort作为自己的入侵检测系统,最好不要使用-v选项。因为使用这个选项,使snort向屏幕上输出一些信息,会大大降低snort的处理速度,从而在向显示器输出的过程中丢弃一些包。 此外,在绝大多数情况下,也没有必要记录数据链路层的包头,所以-e选项也可以不用: ./snort -d -h 192.168.1.0/24 -l ./log -c snort.conf 这是使用snort作为网络入侵检测系统最

4、基本的形式,日志符合规则的包,以ASCII形式保存在有层次的目录结构中。网络入侵检测模式下的输出选项 在NIDS模式下,有很多的方式来配置snort的输出。在默认情况下,snort以ASCII格式记录日志,使用full报警机制。如果使用full报警机制,snort会在包头之后打印报警消息。如果你不需要日志包,可以使用-N选项。 snort有6种报警机制:full、fast、socket、syslog、smb(winpopup)和none。其中有4个可以在命令行状态下使用-A选项设置。这4个是:-A fast:报警信息包括:一个时间戳(timestamp)、报警消息、源/目的IP地址和端口。-A

5、 full:是默认的报警模式。-A unsock:把报警发送到一个UNIX套接字,需要有一个程序进行监听,这样可以实现实时报警。-A none:关闭报警机制。 使用-s选项可以使snort把报警消息发送到syslog,默认的设备是LOG_AUTHPRIV和LOG_ALERT。可以修改snort.conf文件修改其配置。 snort还可以使用SMB报警机制,通过SAMBA把报警消息发送到Windows主机。为了使用这个报警机制,在运行./configure脚本时,必须使用-enable-smbalerts选项。下面是一些输出配置的例子: 使用默认的日志方式(以解码的ASCII格式)并且把报警发给

6、syslog: ./snort -c snort.conf -l ./log -s -h 192.168.1.0/24 使用二进制日志格式和SMB报警机制:./snort -c snort.conf -b -M WORKSTATIONS第二章 编写snort 规则基础 snort使用一种简单的,轻量级的规则描述语言,这种语言灵活而强大。在开发snort规则时要记住几个简单的原则。 第一,大多数snort规则都写在一个单行上,或者在多行之间的行尾用/分隔。Snort规则被分成两个逻辑部分:规则头和规则选项。规则头包含规则的动作,协议,源和目标ip地址与网络掩码,以及源和目标端口信息;规则选项部分

7、包含报警消息内容和要检查的包的具体部分。下面是一个规则范例: alert tcp any any - 192.168.1.0/24 111 (content:|00 01 86 a5|; msg: mountd access) 第一个括号前的部分是规则头(rule header),包含的括号内的部分是规则选项(rule options)。规则选项部分中冒号前的单词称为选项关键字(option keywords)。注意,不是所有规则都必须包含规则选项部分,选项部分只是为了使对要收集或报警,或丢弃的包的定义更加严格。组成一个规则的所有元素对于指定的要采取的行动都必须是真的。当多个元素放在一起时,可

8、以认为它们组成了一个逻辑与(AND)语句。同时,snort规则库文件中的不同规则可以认为组成了一个大的逻辑或(OR)语句。规则高级概念Includes:include允许由命令行指定的规则文件包含其他的规则文件。格式:include:注意在该行结尾处没有分号。被包含的文件会把任何预先定义的变量值替换为自己的变量引用。参见变量(Variables)一节以获取关于在SNORT规则文件中定义和使用变量的更多信息。Variables :变量可能在snort中定义。var:例子:var MY_NET 192.168.1.0/24 alert tcp any any - $MY_NET any (flag

9、s: S;SYN packet规则变量名可以用多种方法修改。可以在$操作符之后定义变量。? 和 -可用于变量修改操作符。$var - 定义变量。$(var) - 用变量var的值替换。$(var:-default) - 用变量的值替换,如果没有定义用default替换。message) - 用变量的值替换或打印出错误消息message然后退出。var MY_NET $(MY_NET:-192.168.1.0/24) log tcp any any - $(MY_NET:MY_NET is undefined!) 23ConfigSnort的很多配置和命令行选项都可以在配置文件中设置。confi

10、g : Directivesorder 改变规则的顺序( snort -o ) alertfile 设置报警输出文件,例如:config alertfile: alerts classification 创建规则分类。decode_arp 开启arp解码功能。(snort -a) dump_chars_only 开启字符倾卸功能。(snort -C) dump_payload 倾卸应用层数据。(snort -d) decode_data_link 解码第二层数据包头。(snort -e) bpf_file 指定BPF过滤器(snort -F)。config bpf_file: filename

11、.bpf set_gid 改变GID (snort -g)。config set_gid: snort_group daemon 以后台进程运行。(snort -D) reference_net 设置本地网络。 (snort -h). 例如:config reference_net:192.168.1.0/24 interface 设置网络接口(snort i )。config interface: xl0 alert_with_interface_name 报警时附加上接口信息。(snort -I) logdir 设置记录目录 (snort -l)。config logdir: /var/l

12、og/snort umask 设置snort输出文件的权限位。(snort -m). Example: config umask: 022 pkt_count 处理n个数据包后就退出。(snort -n). Example: config pkt_count: 13 nolog 关闭记录功能,报警仍然有效。 (snort -N) obfuscate 使IP地址混乱 (snort -O) no_promisc 关闭混杂模式。(snort -p) quiet 安静模式,不显示标志和状态报告。(snort -q) checksum_mode 计算校验和的协议类型。类型值:none, noip, no

13、tcp, noicmp, noudp, all utc 在时间戳上用UTC时间代替本地时间。 (snort -U) verbose 将详细记录信息打印到标准输出。 (snort -v) dump_payload_verbose 倾卸数据链路层的原始数据包 ( snort -X ) show_year 在时间戳上显示年份。(snort -y) stateful 为stream4设置保证模式。min_ttl 设置一个snort内部的ttl值以忽略所有的流量。disable_decode_alerts 关闭解码时发出的报警。disable_tcpopt_experimental_alerts 关闭t

14、cp实验选项所发出的报警。disable_tcpopt_obsolete_alerts关闭tcp过时选项所发出的报警。disable_tcpopt_ttcp_alerts 关闭ttcp选项所发出的报警。disable_tcpopt_alerts 关闭选项长度确认报警。disable_ipopt_alerts 关闭IP选项长度确认报警。detection 配置检测引擎。( 例如:search-method lowmem ) reference 给snort加入一个新的参考系统。规则头规则动作:规则的头包含了定义一个包的who,where和what信息,以及当满足规则定义的所有属性的包出现时要采取

15、的行动。规则的第一项是规则动作(rule action),告诉snort在发现匹配规则的包时要干什么。在snort中有五种动作:alert、log、pass、activate和dynamic.1、Alert-使用选择的报警方法生成一个警报,然后记录(log)这个包。2、Log-记录这个包。3、Pass-丢弃(忽略)这个包。4、activate-报警并且激活另一条dynamic规则。5、dynamic-保持空闲直到被一条activate规则激活,被激活后就作为一条log规则执行。你可以定义你自己的规则类型并且附加一条或者更多的输出模块给它,然后你就可以使用这些规则类型作为snort规则的一个动作

16、。下面这个例子创建一条规则,记录到tcpdump。ruletype suspicioustype log outputlog_tcpdump: suspicious.log搠?敧?捯浵?o?external mountd access这个规则的ip地址代表任何源ip地址不是来自内部网络而目标地址是内部网络的tcp包。你也可以指定ip地址列表,一个ip地址列表由逗号分割的ip地址和CIDR块组成,并且要放在方括号内“”,“”。此时,ip列表可以不包含空格在ip地址之间。下面是一个包含ip地址列表的规则的例子。192.168.1.0/24,10.1.1.0/24 any - 192.168.1.0

17、/24,10.1.1.0/24 111 (content:端口号端口号可以用几种方法表示,包括端口、静态端口定义、范围、以及通过否定操作符。端口是一个通配符,表示任何端口。静态端口定义表示一个单个端口号,例如111表示portmapper,23表示telnet,80表示http等等。端口范围用范围操作符:范围操作符可以有数种使用方法,如下所示:log udp any any - 192.168.1.0/24 1:1024记录来自任何端口的,目标端口范围在1到1024的udp流 192.168.1.0/24 :6000记录来自任何端口,目标端口小于等于6000的tcp流log tcp any :

18、1024 - 192.168.1.0/24 500:记录来自任何小于等于1024的特权端口,目标端口大于等于500的tcp流端口否定操作符用它可以用于任何规则类型(除了any,这表示没有,呵呵)。例如,由于某个古怪的原因你需要记录除x windows端口以外的所有一切,你可以使用类似下面的规则: 192.168.1.0/24 !6000:6010方向操作符方向操作符-表示规则所施加的流的方向。方向操作符左边的ip地址和端口号被认为是流来自的源主机,方向操作符右边的ip地址和端口信息是目标主机,还有一个双向操作符它告诉snort把地址/端口号对既作为源,又作为目标来考虑。这对于记录/分析双向对话

19、很方便,例如telnet或者pop3会话。用来记录一个telnet会话的两侧的流的范例如下:log !192.168.1.0/24 any $HOME_NET 143 (flags: PA; content:|E8C0FFFFFF|/bin activates: 1;IMAP buffer overflow!dynamic tcp ! $HOME_NET 143 (activated_by: count: 50;规则选项规则选项组成了snort入侵检测引擎的核心,既易用又强大还灵活。所有的snort规则选项用分号;隔开。规则选项关键字和它们的参数用冒号分开。按照这种写法,snort中有42个规

20、则选项关键字。msg - 在报警和包日志中打印一个消息。logto - 把包记录到用户指定的文件中而不是记录到标准输出。ttl - 检查ip头的ttl的值。tos 检查IP头中TOS字段的值。id - 检查ip头的分片id值。ipoption 查看IP选项字段的特定编码。fragbits 检查IP头的分段位。dsize - 检查包的净荷尺寸的值 。flags -检查tcp flags的值。seq - 检查tcp顺序号的值。ack - 检查tcp应答(acknowledgement)的值。window 测试TCP窗口域的特殊值。itype - 检查icmp type的值。icode - 检查ic

21、mp code的值。icmp_id - 检查ICMP ECHO ID的值。icmp_seq - 检查ICMP ECHO 顺序号的值。content - 在包的净荷中搜索指定的样式。content-list 在数据包载荷中搜索一个模式集合。offset - content选项的修饰符,设定开始搜索的位置 。depth - content选项的修饰符,设定搜索的最大深度。nocase - 指定对content字符串大小写不敏感。session - 记录指定会话的应用层信息的内容。rpc - 监视特定应用/进程调用的RPC服务。resp - 主动反应(切断连接等)。react - 响应动作(阻塞we

22、b站点)。reference - 外部攻击参考ids。sid - snort规则id。rev - 规则版本号。classtype - 规则类别标识。priority - 规则优先级标识号。uricontent - 在数据包的URI部分搜索一个内容。tag - 规则的高级记录行为。ip_proto - IP头的协议字段值。sameip - 判定源IP和目的IP是否相等。stateless - 忽略刘状态的有效性。regex - 通配符模式匹配。 distance - 强迫关系模式匹配所跳过的距离。within - 强迫关系模式匹配所在的范围。byte_test - 数字模式匹配。byte_jump - 数字模式测试和偏移量调整。msgmsg规则选项告诉记录和报警引擎,记录或报警一个包的内容的同时打印的消息。它是一个简单的文本字符串,转义符是msg:logtologto选项告诉snort把触发该规则的所有的包记录到一个指定的输出日志文件中。这在把来自诸如nmap活动,http cgi扫描等等的数据组合到一起时很方便。需要指出的是当snort工作在二进制记录模式下时这个选项不起作用。logto:filename

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1