内容
<div align="center">

**开源 AI 驱动的自主渗透测试平台**
[](https://www.gnu.org/licenses/gpl-3.0)
[](https://github.com/ASCIT31/Dark-Moon)
[完整文档](docs/full.md) · [贡献指南](CONTRIBUTING.md) · [许可证](LICENSE)
</div>
---
## 什么是 DarkMoon?
DarkMoon 是一款**自动化渗透测试工具**,利用**人工智能安全**代理执行完整的安全评估。作为一款开源的**网络安全工具**,它使组织能够在无需人工干预的情况下运行专业的**漏洞评估**。
DarkMoon 不是取代渗透测试人员,而是作为一个**自主安全测试系统** —— 它推理、计划和协调专门的代理,通过受控的执行层执行真正的安全操作。
<div>
<a href="https://youtu.be/1bFRVuMkZzY?si=peKxwuxzbXBnb2zO">
<img src="docs/pics/darkmoon-youtube.png" />
</a>
<p><strong>观看 DarkMoon 实战演示 - 完整自主渗透测试</strong></p>
</div>
---
## 为什么选择 DarkMoon?
传统的**渗透测试**存在以下问题:
- ⏱️ **耗时** - 手动测试需要数周
- 💰 **昂贵** - 专家顾问每天花费数千美元
- 🔄 **不一致** - 结果因测试人员专业知识而异
- 📊 **难以扩展** - 受限于人力资源
DarkMoon 通过**AI 渗透测试**解决了这些问题:
- 🤖 **AI 驱动的渗透测试** - 自主代理端到端执行完整的安全评估
- 🛡️ **安全设计** - AI 从不直接执行工具;所有操作都通过受控的 MCP 接口
- 🕶️ **隐私网关(可逆本地令牌化)** - AI **从未看到您真实的敏感值**。IP、主机名、域名、URL、电子邮件、凭证和内部路径被替换为确定性占位符(`IP_PRIVATE_001`,...);真实值在本地注入,并在工具运行时屏蔽 **不会将敏感数据发送到 LLM 提供商** - 在严格的数据主权约束下使用 Claude 的能力。阻止外泄尝试。
- ♾️ **CI/CD 渗透测试自动化** - 在构建后运行**自动化安全测试**,以捕获关键漏洞
- 🔧 **50+ 集成工具** - 全面的**渗透测试工具套件**(Nuclei、NetExec、BloodHound、sqlmap、Naabu、httpx、ffuf 等)
- 📈 **自适应多代理方法论** - 针对 Web、Active Directory、Kubernetes、Network、CMS 等的专用代理
- 📝 **漏洞报告自动化** - 自动生成结构化、基于证据的报告
适用于**安全团队**、**DevSecOps 工程师**、**道德黑客**专业人员和各类规模的组织。
---
## 快速入门
### 先决条件
- Docker 和 Docker Compose
- LLM API 密钥(OpenRouter、Anthropic、OpenAI 或本地模型)
> **注意:** GPU 配置、NVIDIA 驱动程序故障排除和高级环境设置在 [完整文档 - GPU 故障排除](docs/full.md#ii2--darkmoon--gpu-troubleshooting-guide-official) 中涵盖。
### 安装
**1. 克隆仓库**
```bash
git clone https://github.com/ASCIT31/Dark-Moon.git
cd Dark-Moon
```
**2. 配置 LLM 提供商**
`install.sh` 交互式处理提供商配置 - 无需编辑 `docker-compose.yml`:
```bash
./install.sh # 跳过表单如果 .opencode.env 已配置
./install.sh --init # 强制重新配置(云或本地模型)
./install.sh --help # 显示用法
```
支持**云提供商**(Anthropic、OpenAI、OpenRouter...)和**本地模型**(Ollama、llama.cpp)。
> **注意:** 有关环境变量和本地模型设置的完整详细信息,请参阅 [完整文档 - 环境变量](docs/full.md#ii3-configuration-of-environment-variables)。
**3. 构建和启动**
```bash
./install.sh # 干净的安装与完整的堆栈重置
```
**4. 运行您的第一个评估**
```bash
./darkmoon.sh "TARGET: example.com"
```
**5. 实时监控**
```bash
./darkmoon.sh --log <session_id>
```
> **注意:** 实时会话日志显示 MCP 服务器执行的每个命令。有关详细信息,请参阅 [完整文档 - 会话日志](docs/full.md#ii7e-step-1--start-an-assessment)。
---
## 工作原理
DarkMoon 作为一个战略性**AI 安全代理**编排器,符合 ISO 27001、NIST SP 800-115 和 MITRE ATT&CK 方法论。
当您提供目标时,平台会自动:
1. 🔍 **发现** 目标环境(端口、服务、协议)
2. 🧠 **指纹识别** 技术栈(框架、CMS、API)
3. 🎯 **建模** 攻击面
4. 🚀 **部署** 基于检测到的技术的专用子代理
5. 🔬 **执行** 智能漏洞扫描循环,具有反应性适应
6. ✅ **验证** 发现结果并提供证据(请求、有效载荷、响应)
7. 📝 **生成** 结构化审计报告
### 子代理编排
DarkMoon 根据发现的技术动态选择和调度专用代理:
| 检测到的技术 | 触发的代理 |
|---|---|
| WordPress、Drupal、Joomla、Magento、PrestaShop、Moodle | CMS 特定代理 |
| PHP、Node.js、Flask、ASP.NET、Spring Boot、Ruby on Rails | 栈特定代理 |
| GraphQL | GraphQL 代理 |
| Active Directory | AD 代理 |
| Kubernetes | Kubernetes 代理 |
| 需要无头浏览器 | 无头浏览器代理 |
多个代理可以**并行**执行跨混合架构。
> **注意:** 有关代理的完整列表、结构、生命周期以及如何创建自定义代理,请参阅 [完整文档 - AI 代理](docs/full.md#v-ai-agents)。
### 架构概述
```
用户 ──> DarkmoonCLI ──> OpenCode(AI 大脑) ──> MCP(安全守门员) ──> Docker 工具箱(真实工具)
```
```mermaid
sequenceDiagram
participant U as 用户
participant O as OpenCode
participant A as AI 代理
participant M as MCP Darkmoon
participant T as Docker 工具箱
U->>O: 用户提示
O->>A: 委托任务
A->>M: MCP 函数调用
M->>T: 执行真实工具
T-->>M: 结果
M-->>A: 结构化输出
A-->>O: 下一个决策
O-->>U: 摘要/结果
```
AI 推理和计划。MCP 控制可以执行的内容。工具箱在 Docker 中运行隔离的工具。 **AI 从不直接接触系统** - 这是**安全设计**。
> **注意:** 有关架构的完整分解(部署图、网络流、安全边界),请参阅 [完整文档 - 架构](docs/full.md#iv-architecture)。
---
## 范围定义
DarkMoon 支持从命令行直接定义灵活的范围。
**快速渗透测试(零配置):**
```bash
./darkmoon.sh "TARGET: http://172.19.0.3:3000"
```
**漏洞悬赏模式(自动激活标志):**
```bash
./darkmoon.sh "TARGET: http://172.19.0.3:3000 PROGRAM=\"Juice Shop\" FOCUS=sqli,xss,idor NOISE=moderate FORMAT=h1"
```
关键标志包括 `FOCUS`、`EXCLUDE`、`CREDS`、`TOKEN`、`NOISE`、`SEVERITY`、`FORMAT` 等 - 所有标志均由 AI 自然解释。
> **注意:** 有关标志的完整参考、资产类型、EXCLUDE/FOCUS 自定义语法和高级多目标范围,请参阅 [完整文档 - 范围定义](docs/full.md#ii7c-launch-darkmoon-with-tui-console)。
---
## 集成工具箱
DarkMoon 配备了一个定制化的 Docker 镜像,其中包含 **50+ 安全工具**,在多阶段构建中编译和优化:
| 类别 | 工具(示例) |
|---|---|
| 端口扫描 | Naabu、Masscan |
| Web 扫描 | Nuclei、ffuf、dirb、sqlmap、Arjun、wafw00f |
| 侦察和爬取 | Subfinder、Katana、Waybackurls、httpx |
| CMS | WPScan、CMSeeK、WhatWeb |
| Active Directory | NetExec、BloodHound、Impacket(30+ 脚本) |
| Kubernetes | kubectl、Kubescape、Kubeletctl |
| 网络 | Hydra、curl、dig、SNMP 工具 |
| 浏览器 | Lightpanda(无头) |
所有工具均可直接访问 - 无需路径配置。
> **注意:** 有关工具的完整列表、安装详细信息以及如何添加新工具,请参阅 [完整文档 - 工具箱](docs/full.md#vi-toolbox)。
---
## 📖 文档指南
DarkMoon 的 [完整文档](docs/full.md) 涵盖了您需要了解的所有内容。以下是重要章节的快速参考:
| 主题 | 您将找到的内容 | 链接 |
|---|---|---|
| **GPU 和驱动程序设置** | NVIDIA Docker、WSL 和原生 Linux 的故障排除 | [GPU 指南](docs/full.md#ii2--darkmoon--gpu-troubleshooting-guide-official) |
| **环境变量** | LLM 提供商配置、API 密钥、模型选择 | [环境配置](docs/full.md#ii3-configuration-of-environment-variables-in-docker-compose) |
| **启动和构建** | install.sh 行为、docker compose 构建、堆栈管理 | [构建和启动](docs/full.md#ii6-build-and-launch-darkmoon) |
| **范围和标志** | TARGET 语法、漏洞悬赏模式、FOCUS/EXCLUDE、凭证 | [范围定义](docs/full.md#ii7c-launch-darkmoon-with-tui-console) |
| **评估工作流** | 分步:发现、指纹识别、代理、报告 | [评估引擎](docs/full.md#ii7d-how-to-use-the-darkmoon-assessment-engine) |
| **实时会话日志** | 实时监控 MCP 服务器执行的命令 | [会话日志](docs/full.md#ii7e-step-1--start-an-assessment) |
| **AI 代理** | 代理结构、生命周期、如何创建或修改代理 | [AI 代理](docs/full.md#v-ai-agents) |
| **架构** | 部署图、安全边界、执行流程 | [架构](docs/full.md#iv-architecture) |
| **工具箱** | 完整的工具列表、添加工具、Docker 镜像内部 | [工具箱](docs/full.md#vi-toolbox) |
| **MCP 工作流** | 工作流结构、创建自定义工作流的最佳实践 | [MCP 工作流](docs/full.md#vii-mcp-workflows) |
| **可用工具列表** | 50+ 工具的完整表格,路径和来源 | [工具列表](docs/full.md#vi10-toolbox-list) |
| **培训实验室** | 推荐的易受攻击的实验室来训练 DarkMoon | [渗透测试实验室](docs/full.md#vi11-bonus-pentester-lab-to-train-darkmoon) |
---
## 用例
DarkMoon 设计为一个多功能的**安全测试平台**,适用于:
- 🔒 **安全团队** - 在您的基础设施上运行连续的**自动化渗透测试**
- ⚙️ **DevSecOps 管道** - 将 **AI 驱动的安全研究** 集成到 CI/CD 工作流中
- 🎯 **漏洞悬赏猎人** - 使用自主目标分析加速**道德黑客**
- 🔬 **安全研究人员** - 使用 **AI 网络安全平台** 探索攻击面
- 🎓 **培训和教育** - 使用引导式、可复制的评估学习进攻性安全
---
## 示例提示
```bash
# Web 应用程序渗透测试
./darkmoon.sh "TARGET: http://172.19.0.3:3000"
# Active Directory 评估
./darkmoon.sh "TARGET: 192.168.1.10"
# 漏洞悬赏,关注特定内容
./darkmoon.sh "TARGET: https://app.example.com PROGRAM=\"Example BB\" FOCUS=sqli,rce,ssrf EXCLUDE=H1 FORMAT=h1"
```
> **注意:** 有关更多提示示例,包括 DVGA、Juice Shop 和无头浏览器场景,请参阅 [完整文档 - 提示示例](docs/full.md#iii-uses)。
---
## 贡献
DarkMoon 是开源的,欢迎贡献。无论您想添加新代理、集成工具、创建工作流还是改进文档 - 请参阅 [CONTRIBUTING.md](CONTRIBUTING.md) 获取指南。
---
## 许可证
该项目根据 **GNU 通用公共许可证 v3.0** 许可。有关详细信息,请参阅 [LICENSE](LICENSE)。
---
<div align="center">
**由 ASC-IT 为全球安全社区构建 💚**
🔒 开源 🤖 AI 驱动 🇫🇷 法国制造
[在 GitHub 上给我们点赞 ⭐](https://github.com/ASCIT31/darkmoon) · [📖 完整文档](docs/full.md) · [▶️ 观看演示](https://youtu.be/1bFRVuMkZzY?si=peKxwuxzbXBnb2zO)
</div>
连接信息
猜你喜欢
暂无推荐服务器