【发布时间】:2013-12-31 01:13:30
【问题描述】:
在解析 Snort 正则表达式集时,我发现了一个非常奇怪的字符类语法,例如 [\x80-t] 或 [\x01-t\x0B\x0C\x0E-t\x80-t],我无法弄清楚(真的不知道)什么 -t 的意思。我什至不知道它是标准 PCRE 还是某种 Snort 扩展。
下面是一些包含这些字符类的正则表达式:
/\x3d\x00\x12\x00..........(.[\x80-t]|...[\x80-t])/smiR
/^To\x3A[^\r\n]+[\x01-t\x0B\x0C\x0E-t\x80-t]/smi
PS:请注意,\x80-t 甚至不是标准方式中的有效范围,因为字符 t 是 \x74。
【问题讨论】:
-
@polkadotcadaver 当然。我正在调查一些项目,一个是netbench。它包含几个来自 L7、Bro 和 Snort 的正则表达式,位于 pattern_match/rules 目录下。其中一些字符类在 Snort/voip.rules.pcre 中,另一些在 Snort/exploit.rules.pcre 中。
-
来自的代码是否编译?
-
另外,您是否复制/粘贴了正则表达式? (只是为了确保它是
t而不是τ或其他看起来接近t的字母) -
@Hamza 我还查看了 pcre 手册,我也想到了一个错误。但是有两个以上的正则表达式,发现这么多类似的错误很奇怪。关于编码/字符表我一无所获,但这并不意味着它不可能。
-
@AngeloNeuschitzer 我已经从上述文件中复制/粘贴了正则表达式。