Skip to content

AdversaryGraph v7.0.0

Latest

Choose a tag to compare

@github-actions github-actions released this 12 Aug 18:31
· 3 commits to main since this release
2a9a7be

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-root scanner-mcp service.
  • 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 stdio MCP 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 nanoid and PostCSS to
    remediated versions. The platform frontend also pins patched nanoid,
    brace-expansion, and DOMPurify releases while keeping
    npm audit --audit-level=high as 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 bundled ip-address 10.2.0 copy with 10.3.1 after the image scanner
    identified the fixed SSRF parsing advisory.
  • The backend pins aiohttp 3.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-git to
    5.19.2 and x/text to 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 to adversarygraph-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

  1. Back up PostgreSQL and record the current release tag, image digests, and
    deployment configuration.
  2. Review .env.example for the dedicated scanner MCP token, private network,
    RAG, provider, and egress settings.
  3. Run ./scripts/release-readiness.sh --full against the exact source commit.
  4. For a prebuilt deployment, use only the eight immutable image references in
    the successful v7.0.0 release's adversarygraph-images.env attachment.
  5. Deploy the source build or verified artifacts and confirm scanner MCP is
    healthy but not exposed to the host.
  6. Run ./scripts/selftest.sh; review RAG readiness, data inventory, taxonomy,
    scanner readiness, and every non-ok result.
  7. Perform one authorized assessment against a synthetic inventory target and
    verify the exact target, tool trace, audit record, and controlled merge
    behavior.
  8. Reconcile the RAG corpus and verify exact/full-text readiness plus semantic
    readiness only when the approved embedding service is enabled.
  9. 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 --full

The 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.

Documentation