用于带外发现的漏洞利用服务器。将目标指向你拥有的域名。它发回的每个 HTTP 请求和每封电子邮件都会落入你控制的仪表板中,并且它会得到你选择的任何响应作为回报。
BEAR-C2 是一个对手模拟与仿真框架,围绕受 俄罗斯、中国、朝鲜和伊朗 APT 组织 启发的真实世界 TTP 构建。它为多样化的交战场景提供了灵活的环境,并基于 APT Attack Simulation Repository 中的相关仿真研究,为红队行动和对手仿真提供了逼真的基础。它支持防御规避技术和多种加密选项,以准确呈现真实世界的入侵场景。
[!CAUTION] 必须注意,本项目仅用于教育和研究目的,任何未经授权的使用都可能导致法律后果。
chmod +x Makefile && ./Makefile
./BEAR-C2
⚠️ 注意: 本项目正在积极开发中。功能会持续添加和改进。
| 功能 | 描述 |
|---|---|
| 多协议监听器 | DoH、HTTPS、HTTP、QUIC、Reverse TCP |
| 按监听器加密 | AES、XOR、RC4、DES、ChaCha20、RSA |
| 数据外传配置文件 | Google Drive、OneDrive、Dropbox |
| 集成 C2 通道 | 集成 Telegram、Discord C2 通信通道 |
| 代理支持 | SOCKS4、SOCKS4a 和 SOCKS5 代理及重定向器支持 |
| 动态域名生成算法 | DGA 支持,用于弹性基础设施模拟 |
| JA3S 指纹识别 | 可自定义 JA3S 指纹,用于流量模拟和网络配置文件调优 |
| 可塑 C2 配置文件 | 支持社区 Malleable C2 profiles,用于灵活的网络流量模拟 |
准确复现 APT 技术需要一个能够模拟现代入侵中所使用的连接协议、加密方法、数据外传技术以及 C2 通道/配置文件的灵活环境。然而,达到这种精确度一直是一项挑战。
每当操作人员需要用特定的数据外传配置文件测试某种加密方案时,都必须构建一个单独的 C2 脚本以匹配该攻击场景。例如,一次模拟可能需要AES 加密配合 OneDrive 外传,而另一次则可能需要另一种加密方法配合 Dropbox 外传,以反映真实世界攻击中观察到的技术。这种缺乏灵活性的问题使整个过程效率低下且耗时。
正因如此,BEAR C2 才被开发出来,通过新的监听器为对手模拟提供完全自定义能力,可无缝配置连接协议、加密、数据外传以及自动化加载技术。这确保了模拟能够准确反映真实的 APT 入侵,而无需为每种场景构建自定义脚本。
BEAR-C2 的载荷生成器。它会根据所选的监听器配置自动构建自定义载荷/信标,支持载荷类型(EXE、DLL、BIN、HEX)、网络协议(DoH、HTTPS、HTTP、QUIC、Reverse TCP)以及加密类型(AES、XOR、RC4、DES、ChaCha20、RSA 或无)。Auto Fills 按钮会打开一个监听器选择窗口,列出监听器表中所有先前配置的监听器。选择监听器后,Tactical Load 会自动填充监听器名称、操作员地址 + 端口、网络协议、加密类型 + 密钥、信标认证 ID 以及 URI 路径。这使操作人员能够快速生成匹配的载荷,而无需手动重新输入监听器详细信息。
监听器表提供所有活动及已配置 C2 监听器的集中概览。它显示关键详细信息,例如监听器名称、地址、网络协议、加密方法、数据外传配置文件以及当前状态(活动或已停止/已断开)。通过此界面,操作人员可以轻松启动、停止、重命名或移除监听器。它还提供对加密密钥和认证 ID 的快速访问,用于管理信标通信。此表是编排和监控 C2 基础设施的命令中心。
为受支持的云存储服务提供商(如 Google Drive、OneDrive 和 Dropbox)配置按会话的数据外传设置。数据外传配置界面允许你定义 API 访问令牌和目标文件夹路径,从而为每个会话自定义数据收集工作流。每个会话都可以使用自己的数据外传配置,便于根据具体操作将收集到的数据路由到不同的云存储服务提供商或目标位置。
Telegram 通信层使用 Telegram 机器人作为 C2 服务器与载荷之间的中介。C2 服务器使用配置的 API ID、API Hash 和电话号码向 Telegram 账户进行身份验证,然后通过该账户连接到先前创建的 Telegram 机器人。
此阶段使用 Discord Gateway API 以基于 Discord 的通信层取代传统的命令与控制通信通道。操作人员无需依赖专用服务器、固定 IP 地址或自定义域名,而是通过私有 Discord 频道与模拟植入程序进行通信。
evil agent 是 BEAR-C2 的载荷生成器,可构建通过第三方消息平台通信的自定义代理,支持代理类型(Discord、Telegram)、载荷类型(EXE、DLL、BIN、HEX)以及可配置的最大消息大小。界面会动态显示每种代理类型所需的字段:Discord 需要 Bot Token、Channel ID 和 User ID,Telegram 则仅需 Bot Token,从而通过现有消息平台提供替代通信通道,无需专用监听器或开放端口。
通过专用界面模拟鱼叉式网络钓鱼活动,用于在经授权的对手模拟演练中配置和管理钓鱼场景。该模块提供受害者提交数量限制、可配置的钓鱼参数以及会话管理等控制项,使操作人员能够控制活动行为并评估用户与模拟钓鱼场景的交互情况。它旨在支持受控的钓鱼评估,同时为操作人员提供对活动执行的更高可见性和控制力。
通过专用的托管文件界面托管和分发文件,支持可配置的服务器设置和自动化文件投递。托管文件在被访问时会自动加载,无需用户交互或手动下载提示。该界面为受控的对手模拟和经授权的安全测试工作流提供集中式文件托管与投递管理。
脚本混淆器 提供了一套全面的混淆引擎,支持 PS1、BAT、HTML、VBS、JS 和 PY 载荷,并具备多个可配置的混淆层。它包括 变量和函数重命名、字符串加密、垃圾代码插入、多层混淆、反调试技术以及基于 XOR 的载荷加密。 这些功能增加了分析复杂度,降低了脚本可读性,并使逆向工程变得显著更加困难,同时帮助载荷更好地抵御静态分析。
BEAR-C2 在整个开发过程中模拟的 APT 组织完整列表
| 来源国 家 |
俄罗斯 🇷🇺 | 中国 🇨🇳 | 朝鲜 🇰🇵 | 伊朗 🇮🇷 |
|---|---|---|---|---|
| APT 组织 |
Cozy Bear |