- 文档
- 教程
- 网络安全
【免费下载链接】Viper
Adversary simulation and Red teaming platform with AI
Viper 的**回连过滤(Handler Firewall)**是内置在监听器(Handler)入口处的防护机制:每当客户端尝试连接 Viper 的监听端口时,平台会依据客户端网络 IP 地址判断是否允许接入——允许则正常下发载荷(stager),不允许则直接断开连接。本文以官方指南 handler_firewall.md 为主体,完整讲解回连过滤的工作原理、典型使用场景、配置项的检查顺序(决策树)、IP 搜索验证方法以及实战配置要点,帮助你利用该机制屏蔽沙箱、网络测绘服务器与钓鱼攻击场景中的无关区域 IP。
工作原理:连接建立前的第一道门禁
回连过滤的核心逻辑非常简单,却非常有效:判断发生在载荷传输之前。当客户端(受害主机上的木马/stager 请求)连接 Viper 监听时,Viper 会先获取客户端的网络 IP 地址,并将其与当前生效的过滤规则逐一比对:
- 允许→ 正常传输载荷到客户端,会话流程继续;
- 不允许→ 直接断开网络连接,客户端拿不到任何东西。
这一前置拦截的意义在于:让不被允许的 IP 连 stager 都拿不到。由于判断发生在载荷下发之前,被拒的客户端既无法建立有效会话,也无法进一步分析探测 C2 服务器的类型与通信特征,从而从源头保护监听器暴露面。
在 Viper 的防护体系中,回连过滤属于"专业级防护机制"的一员。官方介绍明确将[反溯源、回连过滤、防御规避、多级代理]并列(见 README_ZH.md 与 welcome_to_viper.md),它们从不同维度降低行动暴露风险:
- 反溯源(见 avoid_tracing.md):通过 Nginx 二次认证与伪装,让威胁情报平台无法识别 Viper 标签;
- 回连过滤:从回连源头按 IP 拦截不受信任的访问者。
使用场景:何时需要开启回连过滤
原文档给出了三个典型场景,覆盖了红队行动中"避免被无关方发现监听"的核心诉求:
场景一:鱼叉钓鱼——限定目标地理区域
使用鱼叉钓鱼(Spear Phishing)时,目标通常位于一个固定地理区域(例如某一个省份)。此时开启回连过滤,可以屏蔽其他国家或其他省份的 IP连接监听,确保只有目标区域的回连被放行。好处是双重的:
- 目标区域的回连正常投递载荷,不影响行动;
- 区域外的访问者(可能是无关流量、蓝队蜜罐或安全厂商)被直接断开,无法探测监听。
场景二:红队模拟——屏蔽沙箱与网络测绘服务器
红队模拟演练中,样本经常会流入沙箱(Sandbox)环境,同时公网上存在大量网络测绘服务器(如各类全网扫描器、C2 情报收集节点)。这类节点一旦连接监听,就可能获取 stager、识别 C2 类型并上报威胁情报。利用回连过滤:
- 按 IP 屏蔽已知沙箱厂商;
- 按 IP 屏蔽网络测绘服务器;
- 让真实目标的回连不受影响。
场景三:防止客户端识别 C2 类型
如果 IP 不被允许连接监听,客户端(通常是沙箱或蓝队人员的分析环境)无法获取 stager,也就无法判断 C2 服务器的类型。这意味着即使恶意文件被对方拿到,对方也无法通过 stager 分析反向定位你的 C2 平台,为后续行动保留更大的操作空间。
使用方式:开关、配置与检查顺序
第一步:打开总开关并填写配置
进入回连过滤配置界面,首先打开防火墙总开关,然后根据实际情况填写对应配置项。Viper 的配置界面为每个配置项提供了"?"帮助按钮,点击即可查看对应说明,建议首次配置时逐一确认各字段含义(配置项细节以界面内说明为准)。
第二步:理解 IP 过滤的检查顺序
回连过滤的规则检查严格从左到右、从上到下依次进行,命中即结束,未命中继续下一项。完整的决策流程如下:
- 防火墙总开关关闭→放行
- 防火墙总开关打开→ 下一步检查
- 自定义白名单命中→放行
- 自定义白名单未命中→ 下一步检查
- 自定义黑名单命中→屏蔽
- 自定义黑名单未命中→ 下一步检查
- 屏蔽云厂商命中→屏蔽
- 屏蔽云厂商未命中→ 下一步检查
- 屏蔽沙箱 IP命中→屏蔽
- 屏蔽沙箱 IP未命中→ 下一步检查
- 地理位置黑名单命中→屏蔽
- 地理位置黑名单未命中→放行
可以把上述流程理解为一条规则链,关键性质如下:
- 总开关是唯一的总闸:关闭时所有规则不生效,一律放行;打开后才开始逐项过滤。
- 白名单拥有最高优先级的"放行"权:只要自定义白名单命中,无论后续黑名单、云厂商、沙箱、地理规则如何配置,都直接放行。因此白名单应只放行绝对可信的 IP(如行动使用的固定出口 IP、测试机 IP)。
- 黑名单类规则为"命中即屏蔽":自定义黑名单、屏蔽云厂商、屏蔽沙箱 IP、地理位置黑名单,任一命中即屏蔽;全部未命中才最终放行。
- 规则有先后:同一 IP 同时命中"白名单"与"黑名单"时,以先执行的白名单为准放行;而自定义黑名单排在云厂商、沙箱、地理规则之前,若命中自定义黑名单则直接屏蔽,不再检查后续项。
第三步:搜索确认某个 IP 是否被过滤
配置完成后,如果需要对特定 IP 做验证(例如确认某个疑似沙箱的 IP 是否会被拦截、或者确认自己团队出口 IP 是否在白名单内),可以直接使用界面左侧的搜索功能,输入 IP 地址后系统会给出该 IP 是否被过滤的判定结果。这适合在正式行动前做规则自检,避免出现"误杀目标"或"漏放可疑 IP"的配置失误。
第四步:观察执行效果
当不在允许列表中的 IP 连接 Viper 的监听时,客户端会收到屏蔽提示。也就是说,被拒连接是有明确反馈的(而非静默超时),便于运维人员确认过滤规则确实生效、被拦流量确实来自于不受信任的地址。
实战配置建议
结合上述检查顺序与使用场景,给出以下可直接落地的配置思路:
| 配置项 | 建议取值 | 实践说明 |
|---|---|---|
| 防火墙总开关 | 开 | 行动期间开启;仅在需要临时排查连接问题时关闭 |
| 自定义白名单 | 自己团队固定出口 IP、测试机 IP | 优先级最高,务必收敛到最小集合 |
| 自定义黑名单 | 已知恶意/蓝队/分析环境的 IP 段 | 精确屏蔽已知敌对地址 |
| 屏蔽云厂商 | 按需开启 | 拦截来自云厂商网络扫描节点/沙箱的回连,防止 VPS 探针 |
| 屏蔽沙箱 IP | 按需开启 | 拦截沙箱厂商 IP 段,防止样本被分析时回连被利用 |
| 地理位置黑名单 | 按目标区域取反 | 钓鱼场景中屏蔽目标区域之外的省份/国家 |
组合使用的注意点:回连过滤与反溯源是两个独立但互补的机制。反溯源解决的是"别人访问 60000 端口时识别不出这是 Viper"(见 avoid_tracing.md),而回连过滤解决的是"监听端口对不受信任 IP 直接拒绝投递载荷"。建议两者同时启用,形成纵深防御。
端口层面的前置检查:在使用 VPS 部署 Viper 时,需要确保 VPS 防火墙开放了 60000 平台端口以及后续监听所需的端口(见 getting_start.md),否则回连过滤规则配置得再严密,流量也无法到达监听器。
小结
Viper 回连过滤以"连接监听 → 校验 IP → 决定是否投递载荷"的前置拦截模型,为红队行动提供了一道低成本、高收益的暴露面控制手段。配置时抓住三条主线即可:
- 总开关 + 白名单优先:白名单命中即放行,黑名单类规则命中即屏蔽;
- 规则顺序即优先级:从左到右、从上到下依次检查,命中结束;
- 上线前用搜索功能自检:确认目标区域 IP 放行、沙箱与测绘节点被拦,再观察客户端收到的屏蔽提示验证实际效果。
无论是对抗沙箱、网络测绘服务器,还是限制钓鱼目标的地理范围,回连过滤都能在不影响正常回连的前提下,显著压缩监听器的暴露面,是红队平台部署中值得优先启用的防护项。
- 文档
- 教程
- 网络安全
【免费下载链接】Viper
Adversary simulation and Red teaming platform with AI
相关推荐
Viper 监听防火墙(Handler Firewall)使用指南:基于 IP 的 C2 回连过滤与实战配置
Viper 监听防火墙(Handler Firewall)使用指南:基于 IP 的 C2 回连过滤与实战配置 Viper 是一款集成于 Viper 平台 htt
文档教程网络安全Viper 通用配置指南:回连地址、Session 上线监控与 Nuclei 默认配置实战
Viper 通用配置指南:回连地址、Session 上线监控与 Nuclei 默认配置实战 通用配置是 Viper 平台中一处"一次配置、处处生效"的全局参数中
文档教程网络安全Viper TCPLog Server 使用指南:搭建 TCP 回连日志服务器,实时捕获外带回连
Viper TCPLog Server 使用指南:搭建 TCP 回连日志服务器,实时捕获外带回连 Viper 平台的 ResourceDevelopment (
文档教程网络安全
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考