dharineeshj/Revenant
GitHub: dharineeshj/Revenant
一个基于 C++ 的轻量级开源 C2 服务器,通过自动创建 Cloudflared 隧道实现零配置反向 Shell 部署与多会话管理。
Stars: 1 | Forks: 1
### 📖 **Project Revenant**
**Project Revenant** 是一个开源的命令与控制 (C2) 服务器,使用 **C++** 编写,旨在以最少的用户干预自动化整个反向 Shell 生命周期——从**隧道创建**到**连接处理**。
Revenant 的与众不同之处在于它能够**自动创建 Cloudflared 隧道**,并**将实时隧道 URL 嵌入到生成的 payload 中**,从而无需手动配置或设置静态 IP。这使得它即使在目标受害者位于 NAT 或防火墙之后的环境中也非常有效。
除了生成 payload 外,Revenant 还提供了一个**交互式终端界面**,用于管理受害者、下发命令和监控实时连接。它提供了一种清晰的、基于会话的机制,通过唯一标识符与多个受害者进行交互——使远程命令执行变得直观且高效。
### 🔍 核心差异化特性
## 功能特性
* 完全使用现代 C++ 编写,采用 Socket 编程和多线程。
* 为 **Windows** 和 **Linux** 生成反向 Shell payload。
* 自动创建 Cloudflared 隧道,将 C2 服务器暴露在互联网上。
* 使用动态 Victim ID 的受害者识别系统。
* 用于实时命令执行的持久化交互式 Shell 会话。
* 基于 URL 编码 HTTP 的命令与响应通信机制。
* 捕获来自受害者的命令输出并将其记录回传给攻击者。
## 环境要求
要运行 Project Revenant,请确保您的系统具备以下条件:
### 依赖项
* `g++` — C++ 编译器
* `cloudflared` — 来自 Cloudflare 的二进制文件,用于创建安全隧道
您可以使用包含的安装脚本安装所需的依赖项:
```
sudo sh requirments.sh
```
## 构建 C2 服务器
使用带有 pthread 支持的 GNU C++ 编译器编译服务器:
```
g++ c2_server.cpp -o c2
```
如果在编译过程中遇到问题,请确保已安装所有依赖项并重试。
## 运行服务器
编译完成后,使用 root 权限启动服务器:
```
sudo ./c2
or
sudo ./c2 -p 3456
```
服务器在启动时会执行以下操作:
1. 选择一个可用的本地端口或使用用户指定的端口。
2. 启动一个 Cloudflared 隧道暴露该端口。
3. 开始监听受害者的连接。
4. 打开一个用于管理连接的交互式终端。
## 服务器界面及可用命令
启动服务器后,您将进入一个名为 **MainShell** 的交互式命令行界面 (CLI)。以下命令可用:
| 命令 | 描述 |
| --------------------- | ------------------------------------------------------------- |
| `help` | 显示可用命令列表。 |
| `banner` | 显示项目的横幅/标志。 |
| `generate os=windows` | 为 Windows 系统生成反向 Shell payload。 |
| `generate os=linux` | 为 Linux 系统生成反向 Shell payload。 |
| `show shell` | 列出所有当前已连接的受害者会话。 |
| `shell ` | 与选定的受害者启动交互式 Shell 会话。 |
| `quit` | 优雅地停止服务器并关闭隧道。 |
每个受害者在连接时都会被分配一个唯一的 `Victim_id`,用于管理各自的会话。
## Payload 功能概述
生成的 payload(无论是针对 Linux 还是 Windows)是一个轻量级脚本,旨在受害者机器的后台运行。它通过 Cloudflared 隧道与攻击者的服务器建立反向连接,并持续轮询命令。当收到命令时,它会在本地执行,并将输出发送回服务器。Linux 版本使用 Bash,而 Windows 版本利用 PowerShell,但两者都遵循相同的通信逻辑进行命令执行和结果交付。
## 道德使用与免责声明
本项目严格仅限于**教育**和**道德研究**目的。
在您不拥有或未获得明确书面授权进行测试的系统上使用此工具是非法且不道德的。它可能违反您所在国家或地区的计算机滥用法律。
**本项目的作者不对本代码的任何滥用或未经授权的使用承担责任。** 其唯一目的是帮助安全研究人员、学生和道德黑客深入了解反向 Shell 和 C2 基础设施的内部运作方式。
请负责任地使用,并始终在法律和知情同意的范围内行事。
标签:AI合规, C++, C2服务器, Cloudflare Tunnel, IP 地址批量处理, Linux Payload, NAT穿透, Windows Payload, 中高交互蜜罐, 反向Shell, 命令与控制, 应用安全, 恶意软件开发, 攻击路径可视化, 数据擦除, 网络信息收集, 网络安全, 网络渗透测试, 网络隧道, 自动化渗透, 远程控制, 隐私保护, 黑客工具