Sid*_*h S 2 ssh alert rules snort suricata
我正在使用 Suricata 设置入侵检测系统 (IDS)。我想编写一个自定义规则,每当我的虚拟机尝试登录失败时都会生成警报。
例子:
alert tcp any any -> $HOME_NET 22 (msg:"SSH Brute Force Attempt";flow:established,to_server;content:"SSH";nocase;offset:0;depth:4;detection_filter:track by_src, count 2, seconds 2;sid:2005; rev:1;)
我尝试了 SSH 规则的各种组合,但无法在 Suricata 警报部分看到任何警报,多次尝试 SSH 失败。(错误尝试 => 使用无效密码生成警报)
请让我知道如何解决这个问题。
由于您确实是在尝试查看加密内容(这是身份验证和后续失败消息所在的位置),因此 Snort/suricata 不是以您描述的方式使用的理想工具。相反,日志监控将是更好的方法。
但是,还有其他选择。您可能会研究Fail2Ban以在 IPTables 级别自动阻止。
如果您真的想使用 Snort/Suricata,您可以使用警报阈值。例如:
alert tcp $EXTERNAL_NET any -> $HOME_NET 22 (msg:"Possible SSH brute forcing!"; flags: S+; threshold: type both, track by_src, count 5, seconds 30; sid:10000001; rev: 1;)
Run Code Online (Sandbox Code Playgroud)
这告诉 Snort/Suricata 当在 30 秒内从单个源看到 5 个连接的阈值时,对入站连接(设置了 SYN 的入站数据包)生成警报。阈值“两者”表示在超过此阈值之前不会发出警报,并且只会生成一个警报来通知您,而不是开始向您发出警报。
请注意,我已将其标记flags为S+. 不要只使用 SYN。请记住,ECN 已经成为一个真正的“东西”,并且您可能会发现 Snort/Suricata 仍然称为“保留”的两个位是作为 ECN 协商的结果设置的。
| 归档时间: |
|
| 查看次数: |
10351 次 |
| 最近记录: |