Snort 规则 - HTTP 正文内容

Sam*_*000 1 snort

我正在尝试创建一个简单的规则,当“MZ”是 HTTP 正文中的前两个字符时发出警报。

我目前的规则是:

alert tcp any any -> any any (msg:"Test"; content:"MZ"; depth: 2; http_client_body; sid:51; rev:1;)
Run Code Online (Sandbox Code Playgroud)

但是,尽管“MZ”确实存在于 HTTP 正文中,但仍找不到任何结果。

非常感谢您的帮助。

Sam*_*000 5

在向其他一些来源寻求帮助后,事实证明我要求 snort 看错了地方:

正确的规则如下:

alert tcp any any -> any any (msg:"Test"; file_data; content:"MZ"; depth: 2; sid:51; rev:1;)
Run Code Online (Sandbox Code Playgroud)

规则不需要在内容字符串http_client_body 之后,而是在内容字符串file_data 之前。

http_client_body= 请求正文

file_data= 响应正文*

(*比这更复杂,但这足以解释这种情况。请参阅 Snort 文档以获取更多参考)