rnainiaa/NightOwl
GitHub: rnainiaa/NightOwl
基于 Python 和 Vue.js 的轻量级红队 C2 框架,提供 Agent 管理、远程命令执行和监控功能。
Stars: 0 | Forks: 0
# NightOwl 红队框架
## 🦉 概述
**NightOwl** 是一个现代化、模块化的命令与控制 (C2) 框架,专为 **Red Teaming** 行动和授权的对手模拟而设计。它允许操作人员通过直观且安全的 Web 接口远程管理已部署的 agent、执行命令、传输文件以及监控目标。
该项目旨在为测试基础设施韧性和培训防御团队 提供一个教育性和专业性的工具。
### ✨ 主要特性
* **强大的 C2 Server**: 基于 Python (aiohttp) 的高性能异步架构。
* **现代化 Web 接口**: 响应式 Vue.js dashboard,用于实时监控 agent(状态、日志、警报)。
* **隐蔽 Agent**:
* Shell 命令执行。
* 双向文件传输。
* 监控模块(截屏、摄像头、麦克风)。
* 持久化与规避(可配置)。
* **安全通信**: 端到端加密 (TLS + 应用层加密)。
* **集成构建器**: 自动生成可执行 agent (.exe) 或源脚本。
* **多操作员管理**: JWT 身份验证和角色分配。
## ⚠️ 法律免责声明
**本软件的使用严格限于合法和道德目的。**
NightOwl 是一种攻击性安全工具。它只能用于您拥有 **明确书面授权**(委托)的系统上。
* 任何非法使用(未经授权的访问、未经同意的数据窃取、间谍活动)均被严格禁止。
* 作者对因滥用本工具而造成的损害不承担任何责任。
* 使用本软件即表示您同意对您的行为承担全部责任。
## 🛠️ 环境要求与安装
### 技术要求
* **操作系统**: Windows, Linux, 或 macOS。
* **语言**: Python 3.8 或更高版本。
* **浏览器**: 现代浏览器 以访问 dashboard。
### 安装步骤
1. **克隆仓库**:
git clone https://github.com/your-repo/nightowl.git
cd nightowl
2. **创建虚拟环境 (推荐)**:
python -m venv .venv
# Windows
.venv\Scripts\activate
# Linux/Mac
source .venv/bin/activate
3. **安装依赖**:
pip install -r requirements.txt
4. **生成 SSL 证书** (用于 HTTPS):
python generate_certs.py
*这将在 `certs/` 文件夹中创建 `server.crt` 和 `server.key`。*
## 🚀 使用说明
### 1. 启动 C2 Server
启动主服务器,该服务器将托管 API 和 Web 接口:
```
python run_server.py
```
服务器默认将在 `https://0.0.0.0:8443` 上启动。
### 2. 访问 Dashboard
打开浏览器并访问:
**`https://localhost:8443`**
*(注意:如果您使用的是自签名证书,请接受安全警告)。*
**默认凭据:**
* **用户名**: `admin`
* **密码**: `password123`
* *(请在 `config.yaml` 中更改这些凭据以用于任何实际用途)*
### 3. 部署 Agent
在 dashboard 中,进入 **Builder** 选项卡:
1. 配置您的服务器 IP 地址(例如,您的攻击机 IP)。
2. 选择格式 (Python Source 或 Windows Executable)。
3. 点击 **Generate**。
4. 将 agent 传输并在目标机器上执行(需获得授权)。
或者,要在本地进行测试:
```
python run_agent.py
```
## ⚙️ 配置
根目录下的 `config.yaml` 文件允许自定义框架的行为。
### 重要设置
```
server:
port: 8443 # Server listening port
ssl_enabled: true # Enable HTTPS (recommended)
security:
encryption_key: "..." # Encryption key (must be changed)
operators: # User account management
- username: "admin"
password_hash: "..." # bcrypt password hash
client: # Default agent configuration
beacon_interval_min: 5 # Minimum communication interval (seconds)
beacon_interval_max: 10
```
## 🛡️ 安全与最佳实践
为确保负责任和安全的使用:
1. **密钥轮换**: 立即修改 `config.yaml` 中的 `encryption_key` 和 `jwt_secret`。
2. **密码**: 更改默认密码。使用工具生成新的 bcrypt 哈希值。
3. **证书**: 对于生产环境,请使用由有效证书颁发机构 (CA) 签名的证书,而不是自签名证书。
4. **隔离**: 在隔离环境(VM、专用 VPS)中运行 C2 server,以避免暴露您的个人机器。
5. **日志**: 定期监控日志文件 (`logs/`) 以检测任何异常情况。
## 📂 项目结构
* `server/`: 服务器源代码(API、数据库、会话管理)。
* `agent/`: Agent 源代码(命令执行、监控)。
* `web/`: 用户界面(HTML、CSS、Vue.js)。
* `certs/`: SSL 证书存储。
* `uploads/`: 接收到的窃取文件的存放目录。
* `run_server.py`: 服务器启动脚本。
* `run_agent.py`: Agent 启动脚本(测试用)。
*NightOwl Red Team Framework - 为网络安全研究和教育而开发。*
标签:aiohttp, C2框架, DNS 反向解析, HTTP/HTTPS抓包, HTTP工具, IP 地址批量处理, JWT认证, Microphone, Python, RAT, Screenshot, Vue.js, Webcam, Web界面, 反取证, 命令控制, 嗅探欺骗, 安全学习资源, 安全工具集合, 安全评估, 对手模拟, 异步架构, 态势感知, 恶意软件, 攻击模拟, 数据采集, 文件传输, 无后门, 木马, 权限维持, 私有化部署, 端到端加密, 网络信息收集, 网络安全, 蓝队训练, 远程管理, 逆向工具, 防御规避, 隐私保护, 驱动签名利用