AI Skill Hub 强烈推荐:对手图谱 是一款优质的Agent工作流。AI 综合评分 8.5 分,在同类工具中表现稳健。如果你正在寻找可靠的Agent工作流解决方案,这是一个值得深入了解的选择。
AI驱动的MITRE ATT&CK威胁情报平台
对手图谱 是一套完整的 AI Agent 自动化工作流方案。通过可视化的节点编排,将复杂的多步骤任务拆解为清晰的自动化流程,实现全程无人值守的智能处理。支持与数百种外部服务和 API 无缝集成,适合构建数据处理管线、业务自动化和 AI 辅助决策系统。
AI驱动的MITRE ATT&CK威胁情报平台
对手图谱 是一套完整的 AI Agent 自动化工作流方案。通过可视化的节点编排,将复杂的多步骤任务拆解为清晰的自动化流程,实现全程无人值守的智能处理。支持与数百种外部服务和 API 无缝集成,适合构建数据处理管线、业务自动化和 AI 辅助决策系统。
# 克隆仓库 git clone https://github.com/anpa1200/adversarygraph cd adversarygraph # 查看安装说明 cat README.md # 按 README 完成环境依赖安装后即可使用
# 查看帮助 adversarygraph --help # 基本运行 adversarygraph [options] <input> # 详细使用说明请查阅文档 # https://github.com/anpa1200/adversarygraph
# adversarygraph 配置说明 # 查看配置选项 adversarygraph --config-example > config.yml # 常见配置项 # output_dir: ./output # log_level: info # workers: 4 # 环境变量(覆盖配置文件) export ADVERSARYGRAPH_CONFIG="/path/to/config.yml"
AI-assisted CTI-to-detection workbench for MITRE ATT&CK mapping and detection-gap analysis.
Current release: v2.5.0 · Release Summary · Live Intelligence Workspace · Documentation & Usage Guide · Full v2 Guide · 1200km Article · Medium Archive
AdversaryGraph AI is a self-hosted CTI-to-detection workbench for mapping threat reports to MITRE ATT&CK, comparing TTP overlap with known groups and campaigns, identifying detection gaps, and exporting analyst-ready outputs.
Rename note: AdversaryGraph is the canonical product name. Legacy public URLs are preserved as static redirect pages where possible.
Live Web Workspace: https://1200km.com/threat-matrix/
Project Hub: https://1200km.com/adversarygraph/
Documentation: https://1200km.com/adversarygraph-docs/
1200km Article: https://1200km.com/articles/adversarygraph-v2-self-hosted-ai-cti-platform.html
Medium Archive: https://medium.com/@1200km
Validation and attribution limitation: AdversaryGraph assists analysts but does not replace analyst validation. LLM-generated mappings may contain false positives, false negatives, or ambiguous technique assignments. Group/campaign similarity is based on TTP overlap and is an investigation lead, not attribution proof.
| Module | Capability |
|---|---|
| **Navigator** | Full ATT&CK/ATLAS matrix support (Enterprise, Mobile, ICS, ATLAS) with D3.js zoom/pan, sub-technique expansion, dual-layer colouring |
| **Threat Actor Library** | Currently ingested MITRE ATT&CK group profiles, aliases, techniques, and named campaign relationships |
| **AI Analysis** | Upload PDF/DOCX/TXT or paste text → streamed LLM extraction of ATT&CK or ATLAS mapping candidates via Claude, OpenAI, Gemini, or a local OpenAI-compatible LLM; results saved to Reports Library (DB 2) |
| **Compare — Groups** | Jaccard similarity ranking of your TTPs vs currently ingested group profiles; visual matrix diff, tactic breakdown, gap analysis |
| **Compare — Campaigns** | Jaccard similarity ranking of your TTPs vs every named MITRE campaign (e.g. SolarWinds C0024, Operation Ghost C0023) |
| **Compare — Reports** | Browse stored AI analyses (DB 2); re-run group-similarity comparison without re-calling the LLM |
| **Sector Intelligence** | Local actor relevance scoring by client sector, geography, environment keywords, activity window, ATT&CK campaign recency, and MISP Galaxy evidence |
| **IOC Intelligence** | Local source-backed IOC storage with ThreatFox/OTX/Malpedia sync, global IOC Library search, MISP/custom feed connection, actor IOC tabs, IOC-to-TTP mapping, freshness filtering, confidence, source links, VT check, and CSV export |
| **VirusTotal Lookup** | On-demand IOC reputation lookup for IPs, domains, URLs, and hashes with clean verdicts, extracted ATT&CK TTPs, local actor matches, and matrix/My TTP actions |
| **DFIR Examples** | Indexed public DFIR Report examples with TTP/actor metadata and a local PDF workflow for private AI analysis |
| **Export** | ATT&CK Navigator JSON layers, PDF reports, plain JSON, and STIX 2.1 bundles for OpenCTI import |
| **Reference Sync** | Manual and scheduled MITRE ATT&CK and MITRE ATLAS sync for Enterprise, Mobile, ICS, and ATLAS with status reporting and stale-data indicators |
| **Anomaly Detection Reference Book** | Docker-served, autonomously synchronized reference catalogs with exact paragraph-level links from every mapped matrix TTP |
| **Intelligence Pipeline** | Scheduled reviewed RSS intake, STIX/TAXII, MISP and ATLAS imports, normalized observables, public enrichment, team audit trail |
| **Detection Studio** | Versioned Sigma, KQL, SPL and EQL skeleton generation with structural validation and explicit analyst-review placeholders |
| **Operations** | Investigations, evidence graphs, report intake, tracked actor changes, and detection engineering lifecycle |
---
The public Web workspace is intended for exploration. Do not upload confidential, customer-sensitive, classified, or internal reports into public demos or third-party environments. Use the self-hosted Docker deployment for private analysis.
Screenshot evidence is preserved in docs/screenshots/. The set covers the public ATT&CK matrix workspace, group overlay workflows, analysis views, report/evidence review, and ecosystem navigation from the companion walkthrough.
Demo workflow video: DFIR report download to AI analysis and comparison shows the end-to-end flow from indexed public report examples to local PDF upload, streamed ATT&CK extraction, and selected TTP review. A GIF version is also available at docs/demo-videos/dfir-report-ai-analysis-compare.gif.
| Matrix and actor workflow | Analysis and review workflow |
|---|---|
|  |  |
|  |  |
---
git clone https://github.com/anpa1200/adversarygraph.git
cd adversarygraph
cp .env.example .env
Edit .env and add your API keys:
```env
ANTHROPIC_API_KEY=sk-ant-... OPENAI_API_KEY=sk-... OPENAI_MODEL=gpt-4.1 GEMINI_API_KEY=AIza...
LOCAL_LLM_BASE_URL=http://host.docker.internal:11434/v1 LOCAL_LLM_API_KEY=local LOCAL_LLM_MODEL=llama3.1:8b
All configuration is via environment variables in .env.
| Variable | Default | Description |
|---|---|---|
DB_NAME | adversarygraph | PostgreSQL database name. The legacy default is kept so existing deployments continue to start after upgrade. |
DB_USER | ag_user | Database user |
DB_PASS | changeme | Database password — **change this** |
ADVERSARYGRAPH_DB_DIR | ./data/postgres | External persistent Postgres data directory created on first deployment. Keep this folder across rebuilds. |
ANTHROPIC_API_KEY | — | Anthropic / Claude API key |
OPENAI_API_KEY | — | OpenAI API key |
OPENAI_MODEL | gpt-4.1 | OpenAI model used when no request-level model is provided |
GEMINI_API_KEY | — | Google Gemini API key |
LOCAL_LLM_BASE_URL | http://host.docker.internal:11434/v1 | OpenAI-compatible local LLM endpoint |
LOCAL_LLM_API_KEY | local | API key placeholder for local OpenAI-compatible servers |
LOCAL_LLM_MODEL | llama3.1:8b | Local model used when no request-level model is provided |
ATTCK_DOMAINS | enterprise-attack,mobile-attack,ics-attack,atlas | Comma-separated ATT&CK/ATLAS domains to ingest |
DYNAMIC_DB_SYNC_HOUR | 3 | Daily public dynamic DB sync hour in UTC |
DYNAMIC_DB_SYNC_MINUTE | 30 | Daily public dynamic DB sync minute in UTC |
DYNAMIC_DB_IOC_SYNC_DAYS | 7 | ThreatFox/public IOC sync window for daily dynamic DB refresh |
LOG_LEVEL | info | debug / info / warning / error |
To ingest only Enterprise (faster first start):
ATTCK_DOMAINS=enterprise-attack
---
AdversaryGraph integrates the complete Anomaly Detection Atlas as an autonomous Docker service. Click Reference Book in the sidebar to open the full documentation site.
Each matrix technique panel loads ttp-reference-index.json and shows links only to exact matching paragraphs or table rows. A technique can link to multiple relevant activity descriptions, basic detection rules, and statistical-anomaly mappings. The links use stable generated anchors such as:
http://localhost:3001/anomaly-detection-atlas/attack-basic-detection-rule-catalog/#ttp-t1059-001
http://localhost:3001/anomaly-detection-atlas/attack-statistical-anomaly-mapping/#ttp-t1030
The embedded snapshot makes the book usable without a successful remote synchronization. The atlas-builder service checks the standalone atlas repository every hour, regenerates exact TTP anchors and the crosslink index, then atomically publishes the updated Docusaurus build.
Manual local synchronization:
make sync-atlas
docker compose up -d --build atlas-builder atlas-docs frontend
---
curl -X POST http://localhost:8000/api/sync/trigger
Populated from MITRE's official STIX 2.1 bundles on startup and on each sync. Contains:
attributed-to relationships)Built on the currently ingested MITRE ATT&CK and MITRE ATLAS datasets. Counts depend on the selected domain and source release.
| Domain | Groups | Campaigns | Techniques |
|---|---|---|---|
| Enterprise | Dynamic | Dynamic | Dynamic |
| ICS | Dynamic | Dynamic | Dynamic |
| Mobile | Dynamic | Dynamic | Dynamic |
| ATLAS | N/A from upstream | N/A from upstream | Dynamic |
Full interactive documentation at http://localhost:8000/docs.
Registered route groups include:
docker compose exec api pytest tests/ -v
AdversaryGraph Web is the public browser-native workspace for ATT&CK exploration, manual layers, group overlays and comparisons, local workspaces, ecosystem research, coverage-gap analysis, and browser-generated exports. It does not perform LLM report extraction or backend private-report storage.
AdversaryGraph Docker is the full self-hosted platform for provider-configured AI extraction, private PostgreSQL-backed analyses, campaigns, APIs, PDF reports, detection-rule workflows, and scheduled ATT&CK synchronization.
AdversaryGraph is self-hosted. In Docker mode, report content is sent only to the LLM provider configured by the operator. For fully private analysis, use a local or private LLM gateway. The public Web workspace does not perform LLM report extraction or backend report storage.
The Docker deployment gives the operator control over storage, networking, and provider configuration. Trusted-header authentication and roles are available when configured, but internet-facing deployments still require TLS, an authenticating reverse proxy, restricted network exposure, backups, retention controls, and secrets management.
┌──────────────────────────────────────────────────────────────────┐
│ Docker Compose │
├────────────────┬───────────────┬──────────────┬─────────────────┤
│ React / Vite │ FastAPI │ PostgreSQL │ Redis + Celery │
│ (port 3000) │ (port 8000) │ 16 │ worker + beat │
│ │ │ │ │
│ Vite proxy │ SQLAlchemy │ DB 1: ATT&CK│ daily MITRE │
│ /api → :8000 │ async ORM │ DB 2: Reports sync job │
└────────────────┴───────────────┴──────────────┴─────────────────┘
Backend — Python 3.12, FastAPI, SQLAlchemy 2.x (async), Celery Frontend — React 18, TypeScript, Vite, D3.js, Tailwind CSS, Zustand Database — PostgreSQL 16 with JSONB for ATT&CK STIX data Queue — Redis + Celery (daily MITRE sync at 03:00 UTC)
Rank ATT&CK groups and campaigns against your TTPs using Jaccard similarity.
Jaccard similarity = |shared techniques| / |union of all techniques|
Use the mode switcher at the top of the Compare page to choose what to compare against:
Rank every ATT&CK group against your current Navigator selection.
| Detail tab | Content |
|---|---|
| **Overview** | Similarity score, shared techniques (amber chips), your-only techniques |
| **Tactic Breakdown** | Stacked bar per kill-chain phase: shared / user-only / group-profile-only |
| **Visual Diff** | Compact matrix colour-strip showing the full overlap |
| **Gap Analysis** | Every technique in the group's profile not in your layer — your detection backlog |
Actions: - Overlay in Navigator — visualise the overlap on the full matrix - ↓ PDF Report — export a formatted comparison report
Rank named campaigns from the currently ingested ATT&CK release against your current Navigator selection.
The detail panel shows: - Similarity score, shared techniques highlighted in purple - Full campaign technique list with overlap indicators - Attribution (which group conducted this campaign) - Date range of the campaign
Browse your stored AI analysis sessions. Click any report body to see which group and campaign profiles have the strongest TTP overlap with its extracted profile — without re-running the expensive LLM call.
Use cases: - Retrospective TTP-overlap review after a new ATT&CK version is released - Cross-incident correlation across multiple saved reports - Environmental profiling — which groups keep appearing across your incident set
Per-session actions: - ↓ PDF — download the full analysis PDF for that session at any time - ↓ STIX/OpenCTI — download a STIX 2.1 bundle containing the report, ATT&CK attack-patterns, and similarity-lead intrusion sets for OpenCTI import - ✕ Remove — delete the session from DB 2 (browser confirm required; list refreshes automatically)
---
高质量的AI安全工作流平台
该工具使用 NOASSERTION 协议,商用场景请仔细阅读协议条款,必要时咨询法律意见。
AI Skill Hub 为第三方内容聚合平台,本页面信息基于公开数据整理,不对工具功能和质量作任何法律背书。
建议在沙箱或测试环境中充分验证后,再部署至生产环境,并做好必要的安全评估。
📄 NOASSERTION — 请查阅原始协议条款了解具体使用限制。
总体来看,对手图谱 是一款质量优秀的Agent工作流,在同类工具中具备一定竞争力。AI Skill Hub 将持续追踪其更新动态,建议收藏备用,结合自身场景选择合适时机引入使用。
| 原始名称 | adversarygraph |
| Topics | ai-securityatt-ck-navigatorattack-mapping |
| GitHub | https://github.com/anpa1200/adversarygraph |
| License | NOASSERTION |
| 语言 | HTML |
收录时间:2026-06-18 · 更新时间:2026-06-18 · License:NOASSERTION · AI Skill Hub 不对第三方内容的准确性作法律背书。
选择 Agent 类型,复制安装指令后粘贴到对应客户端