RedGuard初探
简介
前几天发现自己的服务器被 fofa 和微步情报标记为了 cobaltstrike 服务器,由于以前使用的版本没有对相应的特征做修改,导致被空间搜索引擎标记,刚好看到风起在朋友圈发布了 RedGuard,于是赶紧试试鲜。
RedGuard 由风起大佬编写的一款 c2 前置流量控制工具,可以帮助红队更好的隐藏 c2 基础设施,且目前还在更新和完善之中,在写这篇文章之后又进行了 2 次更新,优化和增加了一些新功能。
github 地址
使用
第一次运行会在用户目录生成 **.RedGuard_CobaltStrike.ini 文件,编辑此文件对其进行配置,当然也支持参数进行热配置。
重点关注 3 个配置
1.PORT_HTTPS
2.PORT_HTTP
3.HostTarget
如上图,当前配置的意思是将 Port_http 的 80 端口绑定到本机 127.0.0.1 的 8080 端口,当有请求访问服务器的 80 端口,RedGuard 会对请求特征做判断,当请求不符合规则 (及 host 头不是 360.net,这个可以随意设置),请求会被重定向到 https://360.net,否则请求会被转发到 cs 的监听端口 8080 端口。请求会不会被重定向取决于 DROP 参数,如 DORP 参数设置为 true 将直接丢弃请求包。
同理 ,443 端口被绑定到本机 127.0.0.1 的 8443 端口,当请求不符合规则时将请求重定向到 https://360.net,当 host 头为 360.com 时将请求转发到 cs 的 8443 监听端口,主要取决于你 cs 的监听器是 http 还是 https。
更多设置,如过滤上线 ip、上线时间、上线省份请参考作者官方文档 RedGuard 文档
当然,这种场景适合将反代和 cs 服务器建在同一台机器上,比较节省资源,配合 iptables 可防止网络空间搜索引擎将你的服务器标记。
CS
启动 RedGuard
cs 新建监听,c2 端口设置为 RedGaurd 的反代端口,bind 设置为 cs 的监听端口,注意 host header 可以随意设置,但一定要和配置文件里的一致。
再配置 IPtables,只允许 127.0.0.1 访问本机的 8443 端口
这样就可以正常上线了
还有一种就是拿一台单独的服务器做反代服务器,另一台服务器做真正的 cs 服务器,只需简单修改配置文件即可
这里将 192.168.1.8 用作反代服务器,192.168.1.7 作为真正的 cs 服务器,HosTtarget 填写 cs 服务器的地址 192.168.1.7
新建 cs 监听,填写相应端口。

在 cs 服务器配置防火墙,只允许反向代理服务器来访问 cs 的监听端口
MSF
最简单的直接生成载荷
建立监听和设置参数,这里反代端口为 80 端口,80 端口收到请求且符合规则后将其转发到本地的 8080 端口
配置防火墙
在能执行命令的情况下,想方便点使用无文件落地的方式
防火墙
成功上线