Odingard/OdinForgeAI

GitHub: Odingard/OdinForgeAI

一个 AI 驱动的对抗性暴露验证(AEV)平台,通过自主智能体执行多步骤攻击链,实现对 Web 应用及云基础设施漏洞的持续验证与证据捕获。

Stars: 0 | Forks: 0

# OdinForge AI — 智能体漏洞验证 **自主渗透测试,确证漏洞真实存在。**
OdinForge 发现攻击向量,将其串联成多步骤渗透路径,
并提供 HTTP 证实的证据 —— 以持续验证取代年度渗透测试。 [![CI](https://static.pigsec.cn/wp-content/uploads/repos/2026/03/3fa9ec0a12210959.svg)](https://github.com/Odingard/OdinForgeAI/actions/workflows/ci.yml) [![Benchmark](https://static.pigsec.cn/wp-content/uploads/repos/2026/03/fefa0b1785211001.svg)](https://github.com/Odingard/OdinForgeAI/actions/workflows/benchmark.yml) [![CodeQL](https://static.pigsec.cn/wp-content/uploads/repos/2026/03/39437087c8211005.svg)](https://github.com/Odingard/OdinForgeAI/actions/workflows/codeql.yml) [![License: BSL 1.1](https://img.shields.io/badge/License-BSL%201.1-blue.svg)](LICENSE) Website Issues Email
## 🎯 什么是 OdinForge? OdinForge 是由 [Six Sense Enterprise Services](https://www.odinforgeai.com) 构建的 **智能体漏洞验证** 平台。它通过结合自主侦察与实时利用,对 Web 应用程序、API 和云基础设施进行黑盒安全测试。 OdinForge 会爬取您的目标,发现端点和参数,然后部署并行的微型智能体(micro-agents),这些智能体会发送真实的 Payload 并为每个发现捕获 HTTP 证据。只有具备可行概念验证 —— 且有实际请求和响应支撑 —— 的漏洞才会进入最终报告。 **OdinForge 存在的意义** 您的团队每天都在发布代码。而您的渗透测试一年才进行一次。在其余的 364 天里,可利用的漏洞在生产环境中处于未验证状态。漏洞赏金平台能发现问题,但无法证明业务影响。传统的扫描器会生成数千条未经验证的警报。 OdinForge 通过在每次部署时运行的持续、自主渗透测试填补了这一空白 —— 证明哪些是真正可利用的,将发现串联成渗透路径,并利用真实的威胁情报进行风险评分。 ## 🎬 OdinForge 实战演示 OdinForge 在多个目标中识别并证实了命令注入、SSRF、JWT 绕过、XSS、路径遍历和 SQL 注入的可利用性 —— 并通过置信度门槛控制,将其串联成多步骤的渗透路径。 ![OdinForge AI — Breach Chain Benchmark Demo](https://raw.githubusercontent.com/Odingard/OdinForgeAI/main/assets/odinforge-demo.gif) ``` ═══════════════════════════════════════════════════════════ OdinForge AI — AEV Breach Chain Benchmark ═══════════════════════════════════════════════════════════ Target: broken-crystals @ http://localhost:3000 Scenarios: 5 ▶ [1/5] Command Injection to RCE via Spawn ✅ completed — 3/3 steps | confidence: 88% | score: 96/100 ▶ [2/5] SSRF to Internal Network Pivot via File Endpoint ✅ partial — 1/2 steps | confidence: 90% | score: 57/100 ▶ [3/5] JWT Bypass to Privilege Escalation ✅ partial — 1/2 steps | confidence: 90% | score: 72/100 ▶ [4/5] Path Traversal File Read via LFI ✅ partial — 2/3 steps | confidence: 90% | score: 85/100 ▶ [5/5] Multi-Vector Attack Chain (SSTI + CMDi + SSRF) ✅ partial — 5/5 steps | confidence: 69% | score: 91/100 Scenarios: 5/5 passed | Avg Score: 80/100 | Avg Confidence: 85% ═══════════════════════════════════════════════════════════ ``` ## ✨ 特性 - **全自主运行**:只需将 OdinForge 指向目标 URL。它会处理侦察、攻击面映射、利用、渗透链构建、评分和报告生成 —— 无需任何人工干预。 - **仅限 HTTP 证实的证据**:每个发现都包含确证可利用性的确切 HTTP 请求和响应。LLM 仅分类真实数据 —— 绝不生成合成发现。 - **多步骤渗透链**:11 个 Playbook 将独立发现串联成攻击序列(SQLi → 数据渗出,CMDi → RCE,认证绕过 → 权限提升),并采用置信度门槛控制推进。 - **50 个并行微型智能体**:扇出架构为每个(端点 × 漏洞类别)分配一个智能体,并配备速率限制和适用性过滤,以避免不必要的探测。 - **确定性威胁评分**:EPSS (45%) + CVSS (35%) + 智能体可利用性 (20%),包含 CISA KEV 覆盖和勒索软件放大因子。评分循环中不涉及 LLM。 - **实时攻击可视化**:WebSocket 驱动的攻击图,随着渗透链在各个阶段的推进实时渲染,并包含每个智能体的分发事件。 - **Go Endpoint Agent**:轻量级 Agent(Linux/macOS/Windows),支持 systemd 集成,拥有 11 个收集器和配置文件扫描功能 —— 为利用阶段提供运行时上下文。 - **企业级治理**:多租户 RBAC(67 种权限,8 种角色),PostgreSQL 行级安全,完整的审计追踪(`aev_runs` / `aev_tool_calls` / `aev_llm_turns`)。 ## 📦 产品对比 OdinForge 与 XBOW、Shannon 及传统渗透测试平台等工具同属智能体漏洞验证领域: | 能力 | OdinForge | Shannon | XBOW | |---|---|---|---| | **多步骤渗透链** | 是 | 部分 | 否 | | **置信度门槛推进** | 是 | 否 | 否 | | **跨漏洞链式攻击** | 是 | 部分 | 否 | | **每个发现的 HTTP 证据** | 是 | 是 | 部分 | | **并行微型智能体分发** | 是 (50 并发) | 否 | 否 | | **基于 Playbook 执行** | 是 (11 个 Playbook) | 否 | 否 | | **凭据提取链** | 是 | 否 | 否 | | **云 IAM 提权** | 是 | 否 | 否 | | **K8s/容器逃逸** | 是 | 否 | 否 | | **横向移动模拟** | 是 | 否 | 否 | | **EPSS/CVSS/KEV 评分** | 是 | 否 | 否 | | **实时攻击可视化** | 是 | 否 | 否 | | **Go endpoint agent** | 是 | 否 | 否 | | **CI 基准回归** | 是 | 部分 | 部分 | | **自动修复 + 验证** | 是 | 否 | 否 | | **执行模式** | 黑盒 | 白盒 | 黑盒 | | **许可证** | BSL 1.1 | AGPL-3.0 | 专有 | ## 📑 目录 - [什么是 OdinForge?](#-what-is-odinforge) - [OdinForge 实战演示](#-odinforge-in-action) - [特性](#-features) - [产品对比](#-product-comparison) - [设置与使用](#-setup--usage) - [基准测试结果](#-benchmark-results) - [架构](#️-architecture) - [平台能力](#-platform-capabilities) - [覆盖范围](#-coverage) - [文档](#-documentation) - [CI/CD](#-cicd) - [免责声明](#️-disclaimers) - [许可证](#-license) - [社区与支持](#-community--support) - [联系方式](#-contact) ## 🚀 设置与使用 ### 前置条件 - **Node.js 20+** 和 **npm** - **PostgreSQL 15+** 及 pgvector 扩展 - **Redis 7+** - **Docker**(用于基准测试目标和生产部署) - **OpenAI API key**(用于智能体漏洞分析) ### 快速开始 ``` # 1. 克隆 OdinForge git clone https://github.com/Odingard/OdinForgeAI.git cd OdinForgeAI # 2. 安装依赖 npm install # 3. 配置环境 cp .env.example .env # Set: DATABASE_URL, OPENAI_API_KEY, JWT_SECRET # 4. 启动基础设施 docker-compose up -d # PostgreSQL + Redis # 5. 初始化数据库 npm run db:push # 6. 启动 OdinForge npm run dev ``` 打开 `http://localhost:5000`。首次登录将触发组织初始化。 ### 运行扫描 ``` # 通过 UI # 导航到 Assets → Add Asset → 输入目标 URL → Run Evaluation # 通过 API curl -X POST http://localhost:5000/api/evaluations \ -H "Authorization: Bearer $TOKEN" \ -H "Content-Type: application/json" \ -d '{"assetId": "...", "mode": "simulation"}' ``` ### 执行模式 | 模式 | 描述 | |------|-------------| | `safe` | 仅被动侦察 —— 不发送任何 Payload | | `simulation` | 使用已知无害标记的安全 Payload(例如,用于 SSTI 的 `7*7`) | | `live` | 完整利用,配备人机交互审批关卡 | ### 生产部署 OdinForge 在生产环境中作为 6 个容器运行:app, worker, postgres, redis, minio, caddy。 ``` # 构建生产镜像 docker build --platform linux/amd64 -t odinforge-app:latest . # 使用 compose 部署 docker compose -f docker-compose.prod.yml up -d ``` 完整说明请参阅 [生产部署指南](docs/server/production.md)。 ## 📊 基准测试结果 基准测试在 CI 中每次推送时运行。如果检测率低于阈值,构建将失败。 ### 漏洞利用智能体基准测试 | 目标 | 场景数 | 通过率 | 检出率 | |--------|-----------|-----------|----------------| | OWASP Juice Shop v17.1.1 | 5 | **5/5 (100%)** | **90%** | | BrokenCrystals (NestJS) | 6 | **6/6 (100%)** | **89%** | ``` BrokenCrystals — Exploit Agent Benchmark Target: BrokenCrystals (latest) Mode: simulation Scenarios: 6 PASS OS Command Injection via Spawn Endpoint (22.2s) PASS SSRF via File Retrieval Endpoint (15.7s) PASS JWT Authentication Bypass (31.5s) PASS Multi-Vector XSS (Reflected + Stored + DOM) (24.7s) PASS Server-Side Template Injection via Render (14.3s) PASS LDAP Injection and Sensitive Data Exposure (29.4s) Scenarios: 6/6 passed (100%) | Detection: 88.9% | 21 tool calls | 137.8s ``` ### 渗透链基准测试 | 目标 | 链条数 | 通过率 | 平均分 | 平均置信度 | |--------|--------|-----------|-----------|----------------| | Juice Shop | 4 | **4/4 (100%)** | **70/100** | **68%** | | BrokenCrystals | 5 | **5/5 (100%)** | **80/100** | **85%** | 评分公式:chainDepth (35%) + confidence (30%) + evidence (20%) + findings (15%) ### XBOW CTF 基准测试 (104 个 Docker 挑战) 与 [XBOW](https://xbow.com/) 和 [Shannon](https://github.com/KeygraphHQ/shannon) 使用的挑战集相同。OdinForge 以 **黑盒模式** 运行 —— 无源代码,仅使用 HTTP 工具。 ``` OdinForge AI — XBOW CTF Benchmark Mode: simulation (black-box) Challenges: 10 (first batch) XBEN-002 Auth IDOR chain (creds from HTML → login → archive) SOLVED (38.7s) XBEN-004 XSS blacklist bypass (onfocus autofocus) SOLVED (43.1s) XBEN-005 Mass assignment (OAuth2 → level escalation) SOLVED (12.9s) XBEN-006 SQLi via JS-extracted API field SOLVED (22.0s) XBEN-007 GraphQL IDOR (hidden flag field, userId IDOR) SOLVED (19.9s) XBEN-008 XSS WAF bypass (onfocus, server-side PhantomJS) SOLVED (63.4s) XBEN-009 SSTI exploitation SOLVED (12.5s) Solved: 7/10 (70%) | Runnable: 7/8 (87.5%) | Avg: 27.2s ``` 对比(黑盒):**OdinForge 70%** vs XBOW 85% vs Shannon 96% (白盒)。 ### 自行运行基准测试 ``` # Exploit benchmark — BrokenCrystals docker compose -f /tmp/brokencrystals/compose.benchmark.yml up -d npx tsx server/benchmark/exploit-benchmark.ts http://localhost:3000 simulation --target broken-crystals # Exploit benchmark — Juice Shop docker run -d --name juice-shop -p 3001:3000 bkimminich/juice-shop:v17.1.1 npx tsx server/benchmark/exploit-benchmark.ts http://localhost:3001 simulation --target juice-shop # Breach chain benchmark npx tsx server/benchmark/breach-chain/breach-chain-benchmark.ts http://localhost:3000 simulation --target broken-crystals # XBOW CTF benchmark (需要 Docker) git clone https://github.com/KeygraphHQ/xbow-validation-benchmarks.git /tmp/xbow scripts/run-xbow-control.sh /tmp/xbow 10 # False positive benchmark (干净目标) npx tsx server/benchmark/false-positive-benchmark.ts http://localhost:8080 live ``` 完整的方法论和复现步骤请参阅 [docs/BENCHMARKS.md](docs/BENCHMARKS.md)。 ## 🏗️ 架构 ``` ┌──────────────────────────────────────────────────────────────────┐ │ Frontend (React) │ │ 26 pages · JWT auth · RBAC · Real-time WebSocket · Attack viz │ │ Agent dispatch progress · Fix proposal management │ ├──────────────────────────────────────────────────────────────────┤ │ API Layer (Express) │ │ 410+ endpoints · Permission-gated · Multi-tenant RLS │ ├────────────┬────────────┬──────────────┬────────────┬───────────┤ │ Recon │ Exploit │ Breach │ Scoring │ Reports │ │ Engine │ Agent │ Chain │ Engine │ + SARIF │ │ 8 modules │ 9 tools │ 11 playbooks│ EPSS/CVSS │ PDF/HTML │ │ 6 agents │ 12 turns │ 17 categories│ KEV │ JSON │ ├────────────┼────────────┼──────────────┼────────────┼───────────┤ │ Parallel │ Runtime │ Auto- │ LLM │ Evidence │ │ MicroAgent│ Context │ Remediation │ Boundary │ Quality │ │ 50 concur.│ Broker │ Loop │ Contract │ Gate │ │ 10 vulns │ Go agent │ Fix+Verify │ CI guard │ 4-tier │ ├────────────┴────────────┴──────────────┴────────────┴───────────┤ │ Data Layer │ │ PostgreSQL (75 tables) · Redis · BullMQ · MinIO · WebSocket │ ├──────────────────────────────────────────────────────────────────┤ │ Go Agent (v1.1.0) · Cloud Tools (AWS) · Entity Graph │ └──────────────────────────────────────────────────────────────────┘ ``` **流水线:** ``` Recon (8 modules) → Attack Graph → Plan Agent (EPSS/KEV intel) → Exploit Agent (9 tools, 12 turns) → Breach Chain Orchestrator (11 playbooks) → Deterministic Scoring → SARIF/PDF/HTML Reports ``` **数据模型:** 75 张表,67 种权限,8 种角色,每租户行级安全。 **实时:** 11 种 WebSocket 事件类型 —— 评估进度、渗透链图谱更新、安全阻断、推理追踪、HITL 审批请求、智能体分发事件。 **基础设施:** Express + React, PostgreSQL (pgvector), Redis, BullMQ (17 种作业类型), MinIO (证据制品), Caddy (反向代理)。生产环境:6 个容器。 ## 🔍 平台能力 ### 侦察引擎 8 个扫描模块 —— DNS 枚举、子域名发现(5 阶段流水线:通配符检测 → 6 个 OSINT 来源 → 10K+ 暴力破解 → 排列引擎 → HTTP 探测)、端口扫描、SSL/TLS 分析、安全头检测、技术指纹识别、WAF 检测、API 端点发现。结果输入到 6 个验证智能体。输出包含 34 个发现到战术映射(对齐 MITRE ATT&CK)的 `AttackGraph`。 ### 漏洞利用智能体 智能体工具调用循环 —— 最多 12 轮,110 秒超时,120 秒熔断器。9 种工具:`validate_vulnerability`、`fuzz_endpoint`、`test_payloads`、`send_http_request`、`test_jwt`(6 种 JWT 攻击)、`http_fingerprint`、`port_scan`、`check_ssl_tls`、`run_protocol_probe`。 ### 验证引擎 7 个专用验证器(SQLi, XSS, auth bypass, CMDi, path traversal, SSRF, BFLA/IDOR),Payload 库覆盖 8 个注入位置。证据捕获包含带有计时的 HTTP 请求/响应对、置信度评分(0-100)和判定分类。 ### 渗透链编排器 11 个 Playbook 通过置信度门槛控制推进,将独立发现串联成攻击序列。17 个漏洞利用类别。CredentialBus 将发现的凭据广播给所有活动的子智能体(<500ms SLA)。实时图谱更新通过 WebSocket 流式传输。 ### 评分引擎 确定性公式:`EPSS (45%) + CVSS (35%) + Agent exploitability (20%)`。来自 FIRST.org 的实时 EPSS,CVSS v2/v3.0/v3.1 解析,CISA KEV 覆盖(底限=85),勒索软件放大(+10),资产关键性乘数(0.7×–1.3×)。 ### 云安全 3 个用于 AWS 的智能体工具:IAM 提权(CreateAccessKey, AttachPolicy, PassRole),S3 暴露(公共访问,ACL 配置错误),云配置错误(Lambda 角色,VPC 安全组)。 ### Go Agent (v1.1.0) 跨平台端点 Agent,支持 systemd 集成。Implant 框架包含 3 个处理程序,11 个收集器模块,防火墙管理器,配置文件扫描器,自更新,BoltDB 队列,TLS 传输。 ### 自动修复 为已证实的漏洞生成修复建议(WAF 规则、IAM 策略、网络控制、代码修复)。通过重新发送原始利用 Payload 来验证修复 —— 验证循环中不涉及 LLM。 ## 📋 覆盖范围 ### 测试的漏洞类型 | 类别 | 技术 | |----------|-----------| | ** Injection** | Union-based, blind boolean, blind time-based, error-based, stacked queries | | **Cross-Site Scripting** | Reflected, stored, DOM-based, WAF bypass, polyglot payloads | | **Command Injection** | OS command injection, time-based detection, error-based detection | | **Server-Side Template Injection** | Jinja2, Twig, Freemarker, doT, EJS, Pug, ERB | | **Path Traversal** | Directory traversal, null byte injection, encoding bypass, LFI | | **SSRF** | Cloud metadata access, internal network pivot, DNS rebinding | | **Auth Bypass** | JWT alg:none, weak secret brute-force, RS256→HS256, KID/JKU injection | | **BFLA / IDOR** | Admin path probing, mass assignment, sequential ID enumeration | | **LDAP Injection** | Filter injection, anonymous bind, wildcard queries | | **Header Injection** | Host header, X-Forwarded-For, CRLF injection | ### 渗透链 Playbook 1. SQLi 数据渗出链(4 步) 2. 路径遍历文件读取证明(3 步) 3. 命令注入至 RCE(3 步) 4. 认证绕过至权限提升(3 步) 5. SSRF 至内部网络 pivoting(3 步) 6. 多向量侦察链(6 步) 7. IDOR 水平 + 垂直提权(3 步) 8. 竞态条件双重支付(2 步) 9. 工作流绕过利用(2 步) 10. IAM 权限提升(3 步, AWS) 11. 云存储暴露证明(3 步) ## 📚 文档 - [API 参考](docs/API_REFERENCE.md) — 407 个 REST 端点 - [评分引擎](docs/SCORING_ENGINE.md) — EPSS + CVSS + KEV 公式 - [基准测试系统](docs/BENCHMARKS.md) — 运行基准测试、添加目标、CI 集成 - [服务器设置](docs/server/installation.md) | [配置](docs/server/configuration.md) | [生产部署](docs/server/production.md) - [Agent 安装](docs/agent/INSTALL.md) — Linux, macOS, Windows 端点 Agent ## 🔄 CI/CD 跨 6 个类别的 20 个 GitHub Actions 工作流: | 类别 | 工作流 | |----------|-----------| | **构建与测试** | CI, test-node, test-python, aev-ci, aev-smoke | | **安全** | CodeQL, Semgrep, gitleaks, ESLint security, Trivy container scan, ZAP DAST | | **依赖** | npm audit, Go audit, Python audit | | **基准测试** | Exploit (3-target matrix), XBOW CTF (10 quick / 104 nightly), breach chains | | **供应链** | SBOM generation (CycloneDX), API fuzzing | | **部署** | CD to production via GHCR + SSH | ## ⚠️ 免责声明 ## 📄 许可证 Business Source License 1.1 — 详见 [LICENSE](LICENSE)。 将于 2030 年 2 月 1 日转换为 Apache 2.0。 (c) 2026 Six Sense Enterprise Services LLC ## 💬 社区与支持 - **问题反馈:** [GitHub Issues](https://github.com/Odingard/OdinForgeAI/issues) — Bug 报告,功能请求 - **安全问题:** 负责任披露请参阅 [SECURITY.md](SECURITY.md) ## 📬 联系方式 - **网站:** [odinforgeai.com](https://www.odinforgeai.com) - **邮箱:** [contact@odingard.com](mailto:contact@odingard.com)
标签:API安全, ASM, BAS, Breach and Attack Simulation, CISA项目, HTTP证据, JSON输出, LNA, MITM代理, Petitpotam, PE 加载器, Web安全, 云基础设施安全, 人工智能安全, 代码生成, 合规性, 安全合规, 对抗性暴露验证, 持续安全验证, 搜索引擎查询, 攻击路径模拟, 日志审计, 测试用例, 渗透测试工具, 漏洞利用验证, 网络代理, 网络安全, 自动化攻击, 自动化渗透测试, 蓝队分析, 请求拦截, 隐私保护, 黑盒测试