一、Snort规则分为两个部分

二、规则头的基本格式

动作:

动作描述一个数据包的“谁,在何处,什么”的问题,并指明规则被激发后,在事件中应当做什么。在编写规则时,你可以从下面的关键字中选择:

·alert –用选择的警告方法生成一个警告,然后记录这个数据包。

·log -记录这个数据包。

·pass – 忽略此数据包。
协议:

规则的下一部分是协议。一些比较流行的协议包括TCP、UDP、ICMP等,不过Snort支持许多其它的协议,并继续增加新的协议。

源IP

紧跟着协议的部分是IP地址。它定义了数据包来自何处。你可以用“any”这个关键字来定义所有的IP地址。你甚至可以编写一个能够匹配除你指定的IP地址之外任何地址的规则。这是通过使用“!”这个否定操作符实现的。

源端口

它说的是数据包来自哪个端口。端口号也可以使用“any”关键字。你还可以通过使用“:”定义一个范围内的端口。例如,1:1000定义了从1到1000范围内的所有端口。

方向操作符:

方向操作符“->”用于定义规则所适用的通信方向。换句话说,即指明通信进入或出自你计算机的什么地方。

目标IP

下一部分是目标地址。它定义了数据包要到何方。与源地址类似,你也可以使用“any”关键字或定义一个不会引起规则被激发的地址。

目标端口

紧随目标IP地址的部分是目标端口号,即数据包设法连接的端口号。这儿的选项与源端口相同。

三、规则选项的基本格式



规则选项可以分为四类



General:

	msg、reference,gid,sid rev、classtype、priority、metadata;

Payload:

	content,protected_content、byte_[test/jump]、isdata Preprocessor,nocase、rawbytes、depth、
offset、distance、within,http_[cookie/header/method/uri];

non-payload:

	fragoffset,ttl,tos,id,ipopts,fragbits,dsize,flags,flowbits,seq,ack,windows,
itype,icode,icmpid,icmp-seq,rpc,ip_proto,sameip,stream_reassemable,stream_size。

post-detection:

	logto,session,resp,react,tag,activates与activated_by,count,replace,detection_filter。

四、规则范例

示例一:

示例二:

示例三:

示例四:

snort规则的更多相关文章

  1. Snort规则大探秘

    版本联系 Snort规则可以用来检测数据包的不同部分.Snort 1.x可以分析第3层和第4层的信息,但是不能分析应用层协议.Snort v 2.x增加了对应用层头部分析的支持.所有的数据包根据类型的 ...

  2. Snort规则中的逻辑关系

    0x01 看一条规则alert tcp any any -> any any (content:"union";http_uri;nocase;content:"s ...

  3. snort规则中byte_test参数详解

    例子: byte_test:4,>,1000,20 这里是从本规则内前面匹配的位置结尾开始,向后偏移20个字节,再获取后面的4个字节的数据,与十进制数据1000进行比较,如果大于1000,就命中 ...

  4. 实验 snort安装配置与规则编写

    1 实验目的 在linux或windows任意一个平台下完成snort的安装,使snort工作在NIDS模式下,并编写符合相关情景要求的snort规则. 2 实验环境 物理机:windows 8.1 ...

  5. 如何编写snort的检测规则

    如何编写snort的检测规则 2013年09月08日 ⁄ 综合 ⁄ 共 16976字 前言 snort是一个强大的轻量级的网络入侵检测系统.它具有实时数据流量分析和日志IP网络数据包的能力,能够进行协 ...

  6. Snort - 配置文件

    Snort.conf 版本 2.9.8.3 编译可用选项: --enable-gre --enable-mpls --enable-targetbased --enable-ppm --enable- ...

  7. snort使用

    http://jingyan.baidu.com/article/d8072ac45a626fec95cefd85.html 接上篇,如果编译安装snort并指定了prefix,那么须指定一个软链接, ...

  8. 配置snort

    0.如果要输出到mysql,请安装barnyard2 在此之前,请启动并配置mysql git clone https://github.com/firnsy/barnyard2 cd barnyar ...

  9. SNORT入侵检测系统

    SNORT入侵检测系统 YxWa · 2015/10/09 10:38 0x00 一条简单的规则 alert tcp 202.110.8.1 any -> 122.111.90.8 80 (ms ...

随机推荐

  1. [源码解析] NVIDIA HugeCTR,GPU 版本参数服务器 --(1)

    [源码解析] NVIDIA HugeCTR,GPU版本参数服务器 --(1) 目录 [源码解析] NVIDIA HugeCTR,GPU版本参数服务器 --(1) 0x00 摘要 0x01 背景 1.1 ...

  2. 手把手教你使用HarmonyOS本地模拟器

    2021年的华为开发者大会(HDC2021)上,我们随DevEco Studio 3.0 Beta1版本发布首次推出了本地模拟器(也称为Local Emulator),支持模拟手机品类. 我们通过下面 ...

  3. Filter(过滤器)与Listener(监听器)详解

    11.Filter(重点) Filter:过滤器,用来过滤网站的数据: 处理中文乱码 登陆验证... Filter开发步骤: 导包 编写过滤器 导包不要错 实现Filter接口,重写对应的方法即可 p ...

  4. C#使用 WebRequest 异步获取网页并自动忽略SSL证书

    C#使用 WebRequest 模拟浏览器请求访问网页并自动忽略HTTPS安全证书 以下两个C#异步方法,封装了WebRequest请求,支持忽略SSL证书. 作者:张赐荣 1.Get请求      ...

  5. Azure AD(六)添加自定义域名

    一,引言 每当我们在 Azure Portal 上创建新的租户时,都会在设置租户的 "初始域名" 后加上 ".onmicrosoft.com",默认情况下 &q ...

  6. NTFS格式下的Alternate Data Streams

    今天我写点NTFS的交换数据流以及其带来的安全问题(Alternate Data Stream/ADS) =============================================== ...

  7. 请你说说Spring

    一. Spring是什么? 是一个轻量级的开源容器框架,用来装JavaBean,可以把其他的一些框架进行整合使用,使得开发更快,更简洁. 轻量级:占用空间小,非入侵式的(Spring中的对象不依赖于S ...

  8. Centos7.+系统,二进制包脚本安装Mysql

    #!/bin/bash #配置数据库要安装的目录,可以根据自己的安装路径修改PATHDIRPATHDIR="/project"BASEDIR="$PATHDIR/mysq ...

  9. linux服务器登录微信报警通知

    linux服务器ssh登录安全规则中,理论上要做到:防火墙限制,hosts.allow限制,root禁止登录,用户权限分配,ssh端口修改,登录时间限制,堡垒机登录. 这里只讲登录时间限制和登录报警通 ...

  10. jmeter重点(详细)

    之前,写过一篇文章:jmeter,学这些重点就可以了,今天就来把一些重点细节点说一下. 测试计划 可以理解为各种测试元件的容器 其中: 定义整个测试中使用的重复值(全局变量),一般定义服务器的ip.端 ...