tue3306/EIGAN
GitHub: tue3306/EIGAN
EIGAN 是一个以 AI 为核心引擎的自主渗透测试与安全运营平台,通过智能化编排安全工具链实现从扫描规划到报告生成的端到端自动化安全评估。
Stars: 0 | Forks: 0
增强型自主评估智能卫士
由 AI 驱动的自主安全代理 (红队 · 蓝队 · 紫队):AI
负责规划、选择工具、进行自适应级联编排,对
发现做出反应并关联所有内容 —— 基于专有的 Core Engine、插件
架构以及供应商无关性 (Claude · GPT · Gemini · Groq · … · 本地 Ollama)。
快速开始 · 安装说明 · 示例 · 架构设计 · 参与贡献 · ADR
## 目录 - [关于](#-sobre) - [核心功能](#-principais-recursos) - [演示](#-demonstração) - [架构](#-arquitetura) - [安装](#-instalação) - [快速开始](#-quick-start) - [使用示例](#-exemplos-de-uso) - [项目结构](#-estrutura-do-projeto) - [路线图](#-roadmap) - [贡献](#-contribuição) - [常见问题](#-faq) - [开源许可](#-licença) - [鸣谢](#-créditos) ## 🛡️ 关于 EIGAN **不仅是“一款扫描器”**:它是一个**安全运营平台**,拥有专有的 Core Engine 来编排工具,将结果**标准化**为统一的 schema, **关联**多源数据,**评估风险优先级** (CVSS · EPSS · CISA KEV) 并**生成 报告** —— 可通过**插件**扩展,旨在无需重写核心即可扩展至 100 多个模块。 它是 **AI 原生且强制依赖 AI 的**:AI 就是核心工具。运行扫描需要配置 AI 供应商 (**云端或本地 Ollama**);如果没有供应商,扫描将被**拒绝**并 给出可执行的提示信息。AI 的所有自主行为都发生**在确定性包络内** — 授权、范围和基准约束 — 它绝不会绕过这些限制。 一切都围绕着两个问题: | | 视角 | 问题 | |---|---|---| | 🌐 | **Outside-In** (`external`) | 攻击者从组织**外部**入侵时会发现什么? | | 🏠 | **Inside-Out** (`internal`) | 分析师在网络**内部**能识别出什么? | ## ✨ 核心功能 - 🤖 **控制扫描的 AI 代理** — 规划策略 (目标 → *能力* → 顺序),以**自适应波**的形式对发现做出反应,决定何时停止并撰写 叙述分析。每一步都显示在**推理时间轴**上,并有理有据 — 拒绝黑盒。 - 🔌 **供应商无关性** — **Anthropic (Claude) · OpenAI (GPT) · Google Gemini · OpenRouter · Groq · Together AI · Azure OpenAI · Ollama (本地)**。添加供应商只需 注册一个 `ProviderSpec` — 核心保持不变 ([ADR-0010](docs/adr/0010-ai-provider-registry.md))。 - 🧩 **插件/能力架构** — 关注*能力*,而不是具体的工具; 替换工具不会破坏上层逻辑。添加能力 = 创建一个文件夹 (通过 `metadata.yaml` 自动发现;Core 完好无损)。 - 🔗 **自适应级联** — 每一个发现都会触发下一步操作 (端口 445 → 枚举 SMB;发现 WordPress → 扫描 WP),并带有**确定性底线**,确保不会遗漏 任何关键内容。 - 🧭 **一等公民视角** — Outside-In/Inside-Out 通过**配置**驱动护栏、工具和 rate limit,而不是散落各处的 `if`。 - 🎯 **诚实的 Risk Engine** — CVSS v3.1/v4、EPSS (FIRST.org) 和来自**官方数据源**的 CISA KEV; 未确认的信号标记为 `UNVERIFIED`,**绝不捏造**。 - 🔐 **产品自身的安全性** — subprocess 始终使用参数列表 (绝不使用 `shell=True`),默认锁定范围,内置同意确认机制,在任何外部供应商处理前对机密/PII 进行 *redaction* (脱敏),并针对 *argument injection* 验证目标。 - 📊 **关联 · 资产盘点 · MITRE ATT&CK** — 按资产对工具间的数据进行去重,映射 技术并进行差距分析 — 绝不盲目混淆视角。 - 📄 **企业级报告** 包含技术版和执行版,格式支持 **HTML · PDF · JSON · CSV · SARIF** — 封面带有**唯一 ID**、**信息分类** (公开 → 限制)、**安全态势 评分**、图表、**默认掩盖机密信息**、保密声明、 完整性哈希以及方法论 (PTES / NIST 800-115)。叙述由 AI 生成;导出结果 是确定性的且可复现的,可直接用于 SIEM/CI。 - 🖥️ **SOC 风格仪表盘** — **浅色/深色**主题,图表 (环形图 + 评分仪表盘),通过 WebSocket **实时**扫描 (已用时间 · ETA · 当前工具 · 推理时间轴 · 发现反馈) 以及带有**搜索/过滤/排序/分页和下钻功能**的发现结果表。 - 🚀 **开箱即用** — 一条命令从解压到启动菜单;带有向导引导,`doctor` (包含 `--probe-ai` 以**验证 AI 是否响应**,包括本地 Ollama),默认零配置。 当前包含的工具 (真实的红队 / 侦察):b> nmap · naabu · nuclei · subfinder · dnsx · httpx · enum4linux · nmap-nse。其他几十种工具 (whatweb, wpscan, sqlmap, testssl, AD, cloud, Blue 和 Purple) 已经作为可靠的脚手架b>存在:它们会显示在doctorcode> 中,
仅作为建议 — 不会被执行i> — 直到被完全实现。sub>
## 🎬 演示
**交互式菜单** (`python3 eigan.py` 或 `eigan`):
```
╔══════════════════════════════════════════════════════════╗
║ EIGAN · Plataforma de Operações de Segurança ║
╚══════════════════════════════════════════════════════════╝
1) Novo Scan 2) Dashboard 3) Histórico 4) Configuração
5) Doctor 6) Atualizar Ferramentas 7) Sair
```
**代理的推理时间轴** (AI 实时做出的决策 — CLI 和仪表盘):
```
#0 [planned] plano por IA: subdomain-enum, http-probe, port-scan ← estratégia de «attack-surface»
#0 [stop-hint] IA sugere encerrar quando: cobertura de portas e web esgotada
#1 [selected] port-scan · agente=network · nmap ← naabu indisponível; nmap cobre serviço+versão
#1 [executed] port-scan · nmap · 4 finding(s)
#1 [replan:cascade] +smb-enumeration ← cascata: porta 445/Samba (via enum4linux)
#2 [executed] smb-enumeration · enum4linux · 2 finding(s)
#2 [replan:ai] +web-vuln-scan ← IA (adaptativo): HTTP 200 + tech WordPress observado
#3 [stop] no_new_evidence
```
**Web 仪表盘 (SOC)** (`eigan serve` → `http://127.0.0.1:8000`):浅色/深色主题,图表
(严重程度环形图 + 评分仪表盘),通过 WebSocket **实时**扫描 (已用时间 · ETA ·
当前工具 · 推理时间轴 · 发现反馈) 以及带有
搜索/过滤/排序/分页/下钻功能的发现结果表 — 支持选择分类的导出报告。