Ryan-Applied/HVCK-CTwo

GitHub: Ryan-Applied/HVCK-CTwo

一款模块化、多传输通道的红蓝队一体化 C2 框架,涵盖攻击性部署、通信中继与防御检测工程。

Stars: 6 | Forks: 2

# C2 工作区 该工作区分为三个工作区域: - `red/` - C2 Composer 运行时、implant、transports、攻击性部署辅助工具、配置以及红队循环原型。 - `blue/` - 检测工程、遥测数据捕获、防御性研究笔记以及技术参考。 - `tools/` - 设置辅助工具、演示、手动集成测试、生成的包元数据以及长篇参考笔记。 仅在实验室环境、授权研究或您已获得明确许可的测试任务中使用此代码库。 ## Python 设置 创建一个虚拟环境,以可编辑模式安装该包,如果您需要测试依赖项,请包含开发扩展组件: ``` python -m venv .venv source .venv/bin/activate python -m pip install --upgrade pip python -m pip install -e ".[dev]" ``` 如果仅在运行时使用,执行 `python -m pip install -r requirements.txt` 就足够了,但以可编辑模式安装是最方便的方式,因为它会安装 `setup.py` 中的命令启动器。 ## `setup.py` 根目录下的 `setup.py` 将该代码库打包为 `c2_composer` 版本 `1.0.0`。它包含了 `red`、`blue` 和 `tools` 包,要求 Python 版本 `>=3.9`。 运行时依赖项包括项目使用的传输和云库: - `requests`, `pyyaml`, `python-dateutil`, `urllib3`, `pyOpenSSL`, 和 `dnspython` - `msal`, `PyGithub`, `boto3`, `openai`, 和 `slack-sdk` - `cryptography` - 用于交互式 multitool UI 的 `colorama` 和 `pyfiglet` 开发扩展组件通过 `.[dev]` 暴露,目前会安装 `pytest` 和 `pytest-asyncio`。 该包会从 `bin/` 目录安装这些基于 shell 的命令启动器。它们避免了生成的 Python shebang,这在当前工作区路径包含空格时非常重要。 - `c2-implant` -> `python -m red.implant.implant` - `c2-controller` -> `python -m red.src.controller_adaptive` - `c2-multitool` -> `python -m tools.multitool` ## 交互式 Multitool `c2-multitool` 命令会打开 `HVCK Ctwo`,这是一个带有彩色、基于菜单的启动器,用于常见的红队、蓝队和供应商设置任务。它使用 `colorama` 提供终端颜色,并使用 `pyfiglet` 生成横幅。 ``` c2-multitool ``` 实用的非交互模式: ``` c2-multitool --list-actions c2-multitool --dry-run --run vendor.health c2-multitool --dry-run --run red.lambda python -m tools.multitool --list-actions ``` 如果某个命令因为旧的生成包装器而报出 `bad interpreter` 错误,请重新安装该包,以便 `bin/` 中的 shell 启动器将其替换: ``` python -m pip install -e . --no-deps --no-build-isolation ``` 直接使用模块形式始终可以避免生成的脚本 shebang 问题: ``` python -m tools.multitool ``` 该菜单将操作分组为: - **红队资产**:初始化任务、生成 implant 配置、运行 implants/controllers、部署 AWS Lambda 中继、配置 DoH rendezvous TXT 记录、启动 Cloudflare 隧道,以及运行 Slack/OpenAI 设置辅助工具。 - **蓝队资产**:启动遥测数据捕获、运行检测脚本、执行研究场景、运行所有场景、导出检测规则以及启动演示。 - **供应商账户**:检查所需的 CLI,并运行针对 `aws`、`az`、`openai`、`gh` 和 `cloudflared` 的账户/引导命令。 云和供应商操作会在执行前预览命令并要求确认。请使用 `--dry-run` 在不更改任何内容的情况下检查命令。 供应商 CLI 操作假定已安装相关工具并完成了身份验证: - AWS:`aws configure`、`aws configure sso`、IAM 用户创建、调用者身份检查 - Azure:`az login`、`az account show`、服务主体创建 - OpenAI:CLI 和 `OPENAI_API_KEY` 健康检查,以及位于 `tools/setup/` 下的现有 Assistant 设置辅助工具 - GitHub:`gh auth login` 和仓库创建 - Cloudflare:`cloudflared tunnel login`、命名隧道创建以及临时隧道启动 主要的可运行入口点: ``` python red/implant/implant.py red/config/implant_configs/combo10_adaptive.yaml python red/src/controller_adaptive.py python tools/demo/visual_demo.py python blue/detections/detection.py --no-network ``` 在以可编辑模式安装后,前两个命令也可以通过以下方式运行: ``` c2-implant red/config/implant_configs/combo10_adaptive.yaml c2-controller ``` 原始的 C2 Composer 文档现在位于 `red/README.md`。
标签:C2框架, IP 地址批量处理, Python开发, 命令控制, 安全学习资源, 安全攻防, 数据采集, 网络信息收集, 逆向工具