
Dark-Moon v1.4.0
自主AI渗透测试引擎,持续对Web、云、AD及Kubernetes进行主动安全测试。智能体推理+真实漏洞利用执行,交付基于证据的漏洞。隐私网关:LLM永远不会看到你的真实IP、主机、凭据或路径(确定性占位符在本地还原),任何数据都不会离开你的边界。

DarkMoon
开源AI渗透测试平台,可自主运行完整渗透测试,且绝不泄露您的数据
将 DarkMoon 指向一个您已获授权的目标。50 个专业 AI 智能体进行推理,在 Web、云、Active Directory 和 Kubernetes 之间串联真实漏洞利用,并为每项发现提供证据。支持自托管,模型只会看到 IP_PRIVATE_001,绝不会接触您真实的 IP、主机或凭据。
⭐ 为 DarkMoon 加星 · ▶️ 观看 60 秒演示 · 🚀 快速开始 · 📊 57 漏洞基准测试
媒体报道:Help Net Security · Cyber Security News · DevOps.com · SecurityBrief · LinuxLinks · IT Brief · ChannelLife
▶️ 观看 DarkMoon 运行完整的自主渗透测试
什么是 DarkMoon?
DarkMoon 是一个开源 AI 渗透测试平台。将其指向您已获授权测试的目标,它便会自主运行整个评估流程:它进行推理、规划,并调度 50 个专业智能体,通过受控的 MCP 层执行真实的攻击性操作,然后报告每个漏洞,附上确切的命令、原始输出及其背后的证据。
它不会取代渗透测试人员。它用证据清除评估中重复性的部分,让您的专家将时间花在判断上,而非繁琐劳动。
为什么选择 DarkMoon?
- 🌐 超越 Web——一个智能体系统覆盖 Web、API、Active Directory、Kubernetes、云(AWS、Azure、GCP)、CI/CD、数据库和 IoT 固件,端到端串联
- 🕶️ 您的数据永远不会到达 LLM——可逆的本地令牌化将真实的 IP、主机名、URL、凭据和路径转换为确定性的占位符(
IP_PRIVATE_001、...),仅在工具运行的瞬间于本地还原,并在所有结果中重新遮蔽。完全可在本地模型上运行。而且它绝不会让您损失一条命令:当某个值即将被发送到不该去的地方时,命令仍会执行,远端收到的则是占位符。这是任何云竞争对手都不具备的能力。 - 🧾 证据,而非分数——每项发现都附带确切的命令和原始输出,可复现,无需盲目信任任何内容,也几乎无需人工分类
- 🔧 50 个专业智能体,50+ 攻击性工具——Nuclei、NetExec、BloodHound、sqlmap、Impacket、Naabu、httpx、ffuf 等,通过 MCP 编排
- 🛡️ 安全设计——AI 从不直接运行命令;每个操作都流经受控、可记录的 MCP 接口
- ♾️ CI/CD 原生——在流水线中触发渗透测试,并将发现作为工件获取
- 📖 毫无隐藏——GPLv3、自托管,每个智能体的方法论都是纯 Markdown,您可以阅读、diff 和 fork
专为安全团队、DevSecOps 工程师、红队成员和道德黑客专业人士打造。
📊 基准测试:OWASP Juice Shop 上的 57 个真实漏洞
在本地 LLM 上对 OWASP Juice Shop 进行的真实、可复现的黑盒测试(没有任何数据离开您的基础设施):
| 指标 | 结果 |
|---|---|
| 发现的漏洞 | 57(8 个严重 / 24 个高危 / 21 个中危 / 4 个低危) |
| 墙钟时间 | 28.5 分钟 |
| 利用证明 | 每项发现均有 |
| LLM | 本地(Ollama / llama.cpp) |
自行复现并对比工具:ASCIT31/Darkmoon-Benchmarks。
🆚 DarkMoon 对比
| DarkMoon | strix | shannon | PentAGI | |
|---|---|---|---|---|
| 可在本地 LLM 上运行(数据不离开) | ✅ | ❌ 云端 | ❌ 云端 | 部分 |
| 隐私网关(本地令牌化) | ✅ | ❌ | ❌ | ❌ |
| Active Directory + Kubernetes | ✅ | ❌ | ❌ | 部分 |
| 利用证明 | ✅ | ✅ | ✅ | ✅ |
| 开源 | ✅ GPL-3.0 | ✅ | ✅ | ✅ |
根据公开仓库/文档整理(2026-08);欢迎通过 PR 提交更正。
快速开始
前置条件
- Docker 和 Docker Compose
- 一个 LLM API 密钥(OpenRouter、Anthropic、OpenAI 或本地模型)
注意: GPU 配置、NVIDIA 驱动故障排查以及高级环境设置,请参阅完整文档,GPU 故障排查。
安装
1. 克隆仓库
git clone https://github.com/ASCIT31/Dark-Moon.git
cd Dark-Moon
2. 配置您的 LLM 提供商
install.sh 以交互方式处理提供商配置,无需编辑 docker-compose.yml:
./install.sh # 若 .opencode.env 已配置则跳过表单
./install.sh --init # 强制重新配置(云端或本地模型)
./install.sh --help # 显示用法
支持云端提供商(Anthropic、OpenAI、OpenRouter…)和本地模型(Ollama、llama.cpp)。
注意: 有关环境变量和本地模型设置的完整详情,请参阅完整文档,环境变量。
3. 构建并启动
./install.sh # 全新安装,完整栈重置
4. 运行您的第一次评估
./darkmoon.sh "TARGET: example.com"
5. 实时监控
./darkmoon.sh --log <session_id>
注意: 实时会话日志会显示 MCP 服务器执行的每条命令。详情请参阅完整文档,会话日志。
工作原理
DarkMoon 作为一个战略性的 AI 安全智能体编排器运行,遵循 ISO 27001、NIST SP 800-115 和 MITRE ATT&CK 方法论。
当您提供目标时,平台会自动:
- 🔍 发现目标环境(端口、服务、协议)
- 🧠 指纹识别技术栈(框架、CMS、API)
- 🎯 建模攻击面
- 🚀 部署基于检测到的技术的专业子智能体
- 🔬 执行带反应式自适应的智能漏洞扫描循环
- ✅ 验证带证据的发现(请求、载荷、响应)
- 📝 生成结构化审计报告
子智能体编排
DarkMoon 根据发现的技术动态选择并调度专业智能体:
| 检测到的技术 | 触发的智能体 |
|---|---|
| WordPress、Drupal、Joomla、Magento、PrestaShop、Moodle | CMS 专用智能体 |
| PHP、Node.js、Flask、ASP.NET、Spring Boot、Ruby on Rails、Go | 技术栈专用智能体 |
| GraphQL | GraphQL 智能体 |
| LLM / AI 推理端点(OpenAI 兼容、Ollama、vLLM、TGI) | LLM 智能体 |
| Active Directory | AD 智能体 |
| Kubernetes | Kubernetes 智能体 |
| AWS、Azure、GCP | 云提供商智能体 |
| Entra ID(Microsoft 身份) | 身份智能体 |
| GitHub、GitLab、Jenkins | SCM 和 CI/CD 智能体 |
| Terraform、Ansible | 基础设施即代码智能体 |
| Docker、容器仓库 | 容器智能体 |
| HashiCorp Vault | 密钥智能体 |
| PostgreSQL、MySQL、MSSQL、Oracle | 数据库智能体 |
| Redis、RabbitMQ、Kafka、MQTT | 消息与缓存智能体 |
| 固件 / IoT 镜像 | 固件智能体 |
| 需要无头浏览器 | 无头浏览器智能体 |
多个智能体可在混合架构中并行执行。
需要凭据才有意义的领域(云账户、CI/CD、密钥存储、数据库、Active Directory、Kubernetes)绝不会在推断时被调度。它们仅在发现具体工件(密钥、令牌、可达的元数据端点)或您明确授权时才会触发,否则会在报告中标记。
注意: 有关智能体的完整列表、其结构、生命周期以及如何创建自定义智能体,请参阅完整文档,AI 智能体。
架构概览
User ──> DarkmoonCLI ──> OpenCode (AI Brain) ──> MCP (Security Gatekeeper) ──> Docker Toolbox (Real Tools)
sequenceDiagram
participant U as User
participant O as OpenCode
participant A as AI Agent
participant M as MCP Darkmoon
participant T as Docker Toolbox
U->>O: User prompt
O->>A: Delegate task
A->>M: MCP function call
M->>T: Execute real tool
T-->>M: Results
M-->>A: Structured output
A-->>O: Next decision
O-->>U: Summary / result
AI 负责推理和规划。MCP 控制可以执行什么。Toolbox 在 Docker 内运行隔离的工具。AI 从不直接接触系统,这就是安全设计。
注意: 有关完整架构分解(部署图、网络流、安全边界),请参阅完整文档,架构。
范围定义
DarkMoon 支持直接从命令行灵活定义范围。
快速渗透测试(零配置):
./darkmoon.sh "TARGET: http://172.19.0.3:3000"
漏洞赏金模式(标志自动激活):
./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 自由格式语法以及高级多目标范围界定,请参阅完整文档,范围定义。
集成工具箱
DarkMoon 附带一个专门构建的 Docker 镜像,其中包含50+ 安全工具,在多阶段构建中编译并优化:
| 类别 | 工具(示例) |
|---|---|
| 端口扫描 | Naabu(发现)、nmap(定向服务探测) |
| 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、kube-bench、rbac-police |
| 云 CLI | aws、az、gcloud、gsutil、bq |
| 数据库与缓存 | psql、mysql、redis-cli、sqlite3 |
| 固件 / IoT | binwalk、unsquashfs、sasquatch、firmwalker |
| 破解 | hashcat、john、7z2john |
| 网络 | Hydra、curl、dig、SNMP 工具 |
| 浏览器 | Lightpanda(无头) |
所有工具均可直接访问,无需路径配置。
注意: 有关完整工具列表、安装详情以及如何添加新工具,请参阅完整文档,工具箱。
📖 文档指南
DarkMoon 的完整文档涵盖了操作平台所需的一切。以下是重要章节的快速参考:
| 主题 | 您将找到的内容 | 链接 |
|---|---|---|
| GPU 与驱动设置 | Docker、WSL 和原生 Linux 的 NVIDIA 故障排查 | GPU 指南 |
| 环境变量 | LLM 提供商配置、API 密钥、模型选择 | 环境配置 |
| 启动与构建 | install.sh 行为、docker compose build、栈管理 | 构建与启动 |
| 范围与标志 | TARGET 语法、漏洞赏金模式、FOCUS/EXCLUDE、凭据 | 范围定义 |
| 评估工作流 | 分步:发现、指纹识别、智能体、报告 | 评估引擎 |
| 实时会话日志 | 实时监控 MCP 服务器执行的命令 | 会话日志 |
| AI 智能体 | 智能体结构、生命周期、如何创建或修改智能体 | AI 智能体 |
| 架构 | 部署图、安全边界、执行流程 | 架构 |
| 工具箱 | 完整工具列表、添加工具、Docker 镜像内部 | 工具箱 |
| MCP 工作流 | 工作流结构、创建自定义工作流、最佳实践 | MCP 工作流 |
| 可用工具列表 | 50+ 工具的完整表格,含路径和来源 | 工具列表 |
| 训练实验室 | 推荐用于训练 DarkMoon 的易受攻击实验室 | 渗透测试实验室 |
使用场景
DarkMoon 被设计为一个多功能的安全测试平台,适用于:
- 🔒 安全团队,在您的基础设施上运行持续的自动化渗透测试
- ⚙️ DevSecOps 流水线,将AI 驱动的安全研究集成到 CI/CD 工作流中
- 🎯 漏洞赏金猎人,通过自主目标分析加速道德黑客工作
- 🔬 安全研究人员,使用可实时自适应的 AI 网络安全平台探索攻击面
- 🎓 培训与教育,通过引导式、可复现的评估学习攻击性安全
示例提示
# 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 和无头浏览器场景),请参阅完整文档,提示示例。
贡献
DarkMoon 是开源的,欢迎贡献。无论您想添加新智能体、集成工具、创建工作流还是改进文档,请参阅 CONTRIBUTING.md 了解指南。
许可证
本项目采用 GNU General Public License v3.0 许可。详情请参阅 LICENSE。