Snort的pcre规则选项中的/ R是什么意思?

sk_buff

我正在尝试生成一些可以触发snort警报以测试snort性能的跟踪。但是某些规则中有一些包含/ R的pcre选项,我不理解。

例如,一个snort规则pcre中有一个pcre选项:"/^(\x75|\x2d|\x2f|\x73|\xa2|\x2e|\x24|\x74)/sR",我不知道“ R”在这里的含义。我知道“ s”是可以设置PCRE_DOTALL的pcre修饰符。但是“ R”呢?它也是修饰符还是其他?

我已经搜索了pcre文档,但没有找到“ R”修饰符。因此,我认为这不是修饰符。

这是一个示例示例,其中包含带/ R的pcre选项,我从snort3的社区规则中获得了此规则。

警报udp $ EXTERNAL_NET任意-> $ HOME_NET 138(msg:“ OS-WINDOWS Microsoft Windows SMB unicode andx无效的服务器名称共享访问”;内容:“ | 11 |”,深度1;内容:“ | 00 |”,距离13 ;内容:“ | 00 |”,距离0;内容:“ | FF | SMB”,在4,距离3之内; pcre:“ / ^(\ x75 | \ x2d | \ x2f | \ x73 | \ xa2 | \ x2e | \ x24 | \ x74)/ sR“; byte_test:1,&,128,6,relative;内容:” u“,深度1,偏移量39; byte_jump:2,0,little,relative; byte_jump:2,7 ,little,relative; content:“ | 5C 00 5C 00 |”,距离2,nocase; pcre:!“ / ^([^ \ x5C \ x00]。| [\ x5c \ x00] [^ \ x00])+ \ x5C \ x00 / sR“;元数据:策略max-detect-ips丢弃;参考:cve,2010-0022;参考:url,technet.microsoft.com / zh-cn / security / bulletin / MS10-012;类类型:协议命令解码; sid:16403; rev:12;)

维克多·史翠比维

R修改是不是原生PCRE改性剂,它是一个用于PCRE Snort的具体修改正则表达式,使Snort3武力特定行为模式。

请参阅Snort3“ 3.5.26.1格式”文档

R相对于最后一个模式匹配结束的匹配。(类似于distance:0;)
...
修饰符R(相对)和B(原始字节)不允许与任何HTTP修饰符一起使用,例如U,I,P,H,D,M,C,K,S和Y。

请注意,规则作者介绍了如何编写Snort的规则3

在Snort的2,后重新调节剂(BUPHMCIDKSY),用于将正则表达式集合编译时间标志。例如,用于pcre U的Snort特定修饰符用于匹配解码的URI缓冲区。

在Snort的3,一些后重新修饰的(BUPHMCIDKSY)一直赞成粘缓冲区删除。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章