用于检测 Meterpreter 会话的 Snort 规则

信息安全 身份证 元数据 打喷嚏 计程器
2021-08-28 12:42:00

我在配置 Snort 时正在学习,我的设置包括攻击者 (Linux)、受害者 (Android 智能手机) 和一个检测系统 (IDS)。到目前为止,我已经能够记录攻击者和受害者之间的所有数据包,包括 Meterpreter 会话。如果我想检测 Meterpreter 会话,我应该做什么/研究什么?一点数据包分析给了我stager的十六进制值。使用的有效载荷是android/meterpreter/reverse_tcp.

我想制作一个规则文件来检测这两个设备之间的 Meterpreter 会话。我应该如何进行?如果有人指出我正确的方向,那真的很有帮助。谢谢!

2个回答

我知道这是一个老问题,但搜索我发现了这个有趣的帖子有你需要的提示。从那里提取

您可以按照 Snort 规则来检测 Meterpreter 会话以进行外部连接。我的意思是,反向 Meterpreter shell 试图连接到外部。这样做:

alert tcp $HOME_NET any -> $EXTERNAL_NET $HTTP_PORTS (msg:"Metasploit Meterpreter"; flow:to_server,established; content:"RECV"; http_client_body; depth:4; fast_pattern; isdataat:!0,relative; urilen:23<>24,norm; content:"POST"; pcre:"/^\/[a-z0-9]{4,5}_[a-z0-9]{16}\/$/Ui"; classtype:trojan-activity; reference:url,blog.didierstevens.com/2015/05/11/detecting-network-traffic-from-metasploits-meterpreter-reverse-http-module/; sid:1618008; rev:1;)

对于其他类型的场景更改应该在规则上进行,但这只是一个开始。

我会检查新兴威胁的规则。

https://rules.emergingthreats.net/open/snort-2.9.0/emerging-all.rules

搜索 Meterpreter,您可以看到至少 50 个不同的 sig 示例,这些示例可以在不同的攻击阶段和变体中检测 Meterpreter。