AdversaryGraph v7.0.0 Release Notes
Release date: 2026-08-12
AdversaryGraph v7.0.0 is the isolated assessment, governed intelligence, and
data-quality release. It promotes the completed development work after the
v6.5.0 source boundary and preserves the existing intelligence-to-hunt workflow
while hardening the services, provenance, catalogs, and release artifacts that
support it.
The source tree, backend, frontend, Helm chart, API reference, and documentation
declare v7.0.0. Immutable images, their digest manifest, and the GitHub release
exist only after the protected v7.0.0 tag workflow completes successfully.
Release Highlights
Isolated scanner MCP
- All network-executing asset assessment tools move out of the API and worker
images into a separate authenticated, non-rootscanner-mcpservice. - The API authorizes one exact target already stored in the selected asset
inventory and sends one allowlisted assessment plan over the private control
network. - The service can return bounded passive context, unprivileged Nmap discovery,
safe web posture, verified TLS, read-only DNS posture, signed and rate-limited
Nuclei network-template results, and an auditable tool trace. - The API verifies the returned target and tool trace before persisting evidence
or passing the bounded result to deterministic or governed AI review. - The scanner service is not published to the host and uses a dedicated bearer
capability that is separate from database, Redis, proxy, and analyst MCP
credentials.
Service discovery, response metadata, and local CVE candidates remain review
leads. They are not proof of exposure, exploitability, exploitation, targeting,
or compromise.
Production-ready RAG, MCP, and local AI
- RAG readiness is database-backed and included in Compose readiness rather
than inferred from process startup. - Reconciliation is concurrency-safe, initializes before the readiness gate,
supports incremental maintenance, and retains bounded status and run history. - The normalized intelligence model strengthens provenance-preserving links
across actors, campaigns, malware, IOCs, CVEs, reports, and ATT&CK context. - The analyst-facing
stdioMCP server and Navigator assistant use the same
governed RAG API boundary and stronger production checks. - A governed local OpenAI-compatible adapter is wired through RAG, MCP,
report-analysis, and Threat Hunting assistance without granting models
operational authority.
Exact identifiers, lexical retrieval, optional vector similarity, relationship
expansion, and business-context reranking remain retrieval signals. They do not
establish confidence, attribution, targeting, exploitation, or compromise.
Intelligence taxonomy and catalog quality
- Actor, campaign, malware, tactic, TTP, and IOC records use an enforced closed
namespace vocabulary rather than accumulating incompatible free-form labels. - Existing actor, campaign, and malware records receive a reviewed backfill, and
the ATT&CK group catalog is seeded for consistent search and statistics. - Actor, tactic, and TTP catalogs maintain themselves as authoritative
intelligence changes. - Statistics and self-test surfaces include IOC-type and data-inventory
breakdowns so operators can distinguish an empty, stale, or partially loaded
environment from a ready corpus.
Normalization improves consistency and retrieval. It does not increase source
reliability or turn a weak relationship into a confirmed one.
Dependency and release hardening
- The pinned MalwareGraph UI dependency patch updates
nanoidand PostCSS to
remediated versions. The platform frontend also pins patchednanoid,
brace-expansion, and DOMPurify releases while keeping
npm audit --audit-level=highas a blocking image-build check. - The documentation build replaces the unfixed general-purpose
image-size
parser with a tested local SVG-only boundary. The docs corpus contains only
reviewed SVG assets; ICNS, JXL, HEIF, and all other image formats are rejected
instead of entering the affected parser paths. Its image build also replaces
npm's bundledip-address10.2.0 copy with 10.3.1 after the image scanner
identified the fixed SSRF parsing advisory. - The backend pins
aiohttp3.14.3 to clear the current request-handling and
decompression advisory set reported against 3.14.1. - The checksum-pinned Nuclei source build explicitly upgrades
go-gitto
5.19.2 andx/textto 0.39.0, clearing the two fixed HIGH findings detected
in the scanner binary during the v7 strict image gate. - The release family now contains eight AdversaryGraph images: PostgreSQL,
backend, scanner MCP, frontend, MalwareGraph, web lab, endpoint lab, and
Anomaly/ATLAS documentation. - Local and CI security paths lint, test, build, and scan scanner MCP alongside
the existing services. - Production Compose and Helm require the scanner service's authenticated
configuration and support its immutable digest reference. - The tag workflow builds each versioned image once, scans that exact local
candidate, publishes the same image, verifies anonymous registry readability,
and writes all immutable references toadversarygraph-images.env.
Shared latest tags are not advanced because the eight-image application
family cannot be updated atomically. Deploy only the reviewed digest manifest
from the successful v7.0.0 tag workflow.
Preserved v6.5 Workflows
Version 7 retains the governed capabilities introduced in the v6.5 source:
- hypothesis-driven Threat Hunting and stage-specific AI assistance;
- Query Library and deterministic IOC-to-query generation across ten formats;
- unified RAG, business-context reranking, Navigator proposals, and advisory
analyst MCP; - saved-asset intelligence and evidence-labelled relationships;
- persistent SOC access groups and module-level UI/API authorization;
- Evidence-to-Detection Graph, Attack Simulation, SIEM validation, malware
analysis, Threat Radar, Asset Surface, and the platform's reporting and
observability workspaces.
These remain analyst-assistance and evidence-management workflows. AdversaryGraph
does not execute an external hunt query, auto-confirm a Navigator proposal,
autonomously attribute an actor, or equate synthetic telemetry with real lab
behavior.
Upgrade Procedure
- Back up PostgreSQL and record the current release tag, image digests, and
deployment configuration. - Review
.env.examplefor the dedicated scanner MCP token, private network,
RAG, provider, and egress settings. - Run
./scripts/release-readiness.sh --fullagainst the exact source commit. - For a prebuilt deployment, use only the eight immutable image references in
the successful v7.0.0 release'sadversarygraph-images.envattachment. - Deploy the source build or verified artifacts and confirm scanner MCP is
healthy but not exposed to the host. - Run
./scripts/selftest.sh; review RAG readiness, data inventory, taxonomy,
scanner readiness, and every non-okresult. - Perform one authorized assessment against a synthetic inventory target and
verify the exact target, tool trace, audit record, and controlled merge
behavior. - Reconcile the RAG corpus and verify exact/full-text readiness plus semantic
readiness only when the approved embedding service is enabled. - Verify least-privilege user groups, backup/restore, and rollback before
promoting the deployment.
AdversaryGraph still uses additive startup schema compatibility rather than a
formal Alembic migration chain. A verified backup is mandatory before upgrading
an existing production database.
Validation
The source release must pass:
./scripts/release-readiness.sh --fullThe gate checks release metadata, generated API contracts, governed module
coverage, scanner MCP tests and lint, patch hygiene, tag-ruleset verifier tests,
default/development/local-AI/production Compose rendering, production policy,
frontend lint/build/browser tests, documentation, backend lint/tests,
dependency audits, Bandit, Gitleaks, Helm, and strict container scans.
Record the exact v7 validation counts and residual risks only after the complete
gate finishes. A local source gate does not create immutable release evidence.
Merge CI and the protected v7.0.0 tag workflow must independently build, scan,
publish, and verify the exact release images and digest manifest.
Boundaries
AdversaryGraph is a controlled self-hosted, single-workspace analyst workbench.
It is not a managed SaaS, a hard multi-tenant isolation boundary, an autonomous
vulnerability scanner, an attribution oracle, or a substitute for authorized
testing and analyst validation.
AI output, RAG ranking, relationship expansion, actor overlap, IOC/provider
matches, service discovery, CVE candidates, generated queries, synthetic
telemetry, and detection recommendations are review leads. They are not proof
of compromise, exploitation, applicability, attribution, or detection efficacy.