
Autonomous red-team engagement platform with MITRE ATT&CK module orchestration, DAG attack-path solving, OPSEC controls, encrypted credential vault, and multi-format reporting.
The open-core platform empowering enterprise red teams, MSSPs, and security operations centers to execute targeted offensive engagements, discover deterministic attack paths, and continuously validate defensive posture with zero collateral risk.
Platform Showcase • Why ARES? • Competitive Matrix • Architecture • MITRE Matrix • Quickstart • Zero-Trust Security • Documentation
Traditional penetration testing is fundamentally flawed: it is expensive, episodic, point-in-time, and leaves organizations blind to newly introduced misconfigurations and emerging adversary tradecraft. Meanwhile, automated vulnerability scanners overwhelm SOC teams with thousands of hypothetical CVEs without demonstrating exploitability or multi-stage lateral attack paths.
ARES bridges this gap. Built from the ground up for modern enterprise infrastructure, ARES delivers an autonomous, goal-directed red team engagement platform that models real-world threat actors. By combining hard kernel-level scope firewalls, adaptive OPSEC noise profiling, an interactive directed acyclic graph (DAG) attack solver, and 60+ weaponized techniques mapped to MITRE ATT&CK, ARES allows security teams to prove vulnerability exploitability, locate shortest compromise paths to Active Directory Crown Jewels, and generate executive-ready deliverables with zero operational downtime.
THE ARES ADVANTAGE
┌─────────────────────────┐ ┌─────────────────────────┐ ┌─────────────────────────┐
│ STRICT SCOPE ENCLAVE │ │ AUTONOMOUS DAG ENGINE │ │ ZERO-TRUST ARCHITECTURE │
│ Hard kernel CIDR egress │ │ Computes shortest paths │ │ Memory-only JWT tokens, │
│ whitelisting prevents │───│ to Domain Admins & Crown│───│ AES-256 encrypted vault,│
│ any collateral impact. │ │ Jewels deterministically│ │ strict HMAC-CSRF checks.│
└─────────────────────────┘ └─────────────────────────┘ └─────────────────────────┘
│
▼
┌─────────────────────────┐
│ INSTANT EXECUTIVE SUITE │
│ Branded PDF, HTML, JSON │
│ deliverables with zero │
│ native GTK dependencies │
└─────────────────────────┘
domain_admin, full_compromise, cloud_audit), and the ARES decision engine autonomously synthesizes multi-stage execution paths using graph heuristics and optional LLM agents (Claude / OpenAI / local Ollama).The ARES Platform features a high-performance, responsive operator dashboard engineered with dark-tech aesthetics, low cognitive load, and audited operational control.
# Launch local development environment
.\.venv\Scripts\ares.exe dashboard dev --no-reload
Autonomous entry barrier designed specifically for authorized offensive operators and security personnel.

ARES Operator Enclave — Sign In button erupts with crimson plasma fire on hover, click, and Enter key. Dynamic Architectural Grid canvas, system environment specifications, and ARES Cyber Dragon mascot on the right panel.
requestAnimationFrame.InResponseTo/nonce), JIT role mapping, and strict local password lockout for federated identities. (See SSO Setup Guide).X-ARES-CSRF).Real-time operational command console providing instant posture visibility across active campaigns.

Executive Command Center displaying real-time telemetry, confirmed findings by severity, and operational health.

Tactical Zero-State Overview — Clean onboarding hero with instant readiness strip and initialization actions when running zero active campaigns.
panel-subtle), dynamic reactive topbar health indicators, and distinct dashed progress tracks for uninitialized metric baselines.Staged, Executing, or Standby) distinguishing scoped targets from executing campaigns.Zero-collateral target governance enforcing hard CIDR whitelist boundaries and encrypted evidence isolation.

Campaign Management interface showing target scopes, CIDR boundaries, noise controls, and encrypted credential vault.
<label> definitions across all campaign pickers and parameter inputs, preventing operator ambiguity during rapid engagements.Stealth, Normal, Aggressive) with randomized delay distributions.Extensive catalog of weaponized adversary techniques aligned with the MITRE ATT&CK enterprise matrix.

Module Catalog with MITRE ATT&CK categorization, dynamic parameter generation, and dry-run safety modes.
ad.kerberoast, ad.adcs, ad.enum_users), Windows (windows.uac_bypass), Linux, Cloud (AWS, Azure, GCP), and Network infrastructure.Interactive directed acyclic graph (DAG) solver visualizing enterprise attack paths and privilege escalation chains.

Multi-Vector Attack Graph with automated luminous white patch cables, left-to-right hierarchy (Domain Controller → Findings → Hosts), and real-time safe metadata inspection.
#ffffff) connecting Domain Controllers, security findings, and discovered hosts without manual dragging.DC01) on the left, through active security findings, to target member hosts.Instant deliverable generation producing branded, audit-ready compliance reports across multiple enterprise formats (Executive PDF, Technical Markdown, Defect CSV).

Report Engine and Artifact Library supporting multi-format exports with synchronized real-time lifecycle management.
<label> elements (Target Campaign, Export Format) and clean inline validation error feedback.Goal-directed autonomous engine that plans, prioritizes, and executes complex attack chains while respecting OPSEC limits.

Autonomous Strategy Console for goal-based campaign planning and adaptive containment governance.
GET /api/tags) with sub-second timeouts and TTL caching, paired with dynamic server-side cloud key verification (Claude, OpenAI).Target Campaign, Strategic Objective, AI Planning Engine, Explicit Authorizations), human-readable goal descriptions, and complete elimination of server environment variable leakage in UI labels.In-depth Active Directory entity telemetry, relationship inspection, and real-time safe detail auditing directly inside the canvas.

Interactive Safe Detail Drawer displaying Domain Controller (DC01 10.10.10.2) telemetry, active compromise levels, open attack surface ports (53, 88, 135, 139, 389, 445, 636, 3268, 3389), and asset ownership states.
is_dc) upon selecting any graph node.53, Kerberos 88, RPC 135, NetBIOS 139, LDAP 389, SMB 445, LDAPS 636, Global Catalog 3268, RDP 3389).Deterministic, multi-step kill chains orchestrating reconnaissance, credential harvesting, and lateral movement in sequence.

Automated execution chains including AD Kerberos Exposure Chain and AD Domain Enumeration Chain.
asreproast -> kerberoast -> hashcat), domain enumeration, and cloud privilege escalation.Empirical tracking of evasion efficacy across enterprise endpoint detection and response (EDR) platforms.

Bypass Knowledge Base tracking technique success rates across CrowdStrike Falcon, SentinelOne, and Microsoft Defender.
Audited multi-role access control, cryptographic API key lifecycle, and continuous platform integrity verification.

Operator profile management, scoped API key provisioning, and automated system security audits.
Team Lead, Operator, Recon, Reporter) governing module execution and evidence viewing.High-frequency WebSocket event bus streaming operational telemetry, module output, and pipeline status.

Live operational event console with buffered telemetry and high-throughput WebSocket streaming.
Standardized engagement architectures for recurring red team exercises, compliance audits, and purple team drills.

Built-in engagement templates including Internal Pentest, AD Full Compromise, Cloud Assessment, and Assumed Breach.
Fully documented, interactive REST API surface for custom tooling, SOC orchestration, and CI/CD pipeline integration.

Interactive Swagger UI documentation exposing 70+ operational endpoints for enterprise automation.
ARES follows a strict defense-in-depth architecture separating presentation, execution orchestration, security governance, and persistent cryptographic storage:
flowchart TB
subgraph Client["Presentation Layer (Operator Enclave)"]
UI["React 19 Dashboard<br>(Vite + TypeScript)"]
Mesh["Dynamic Architectural Grid<br>(Canvas 2D Engine)"]
WSClient["WebSocket Client<br>(Real-Time Telemetry Stream)"]
end
subgraph Gateway["Zero-Trust Security Gateway"]
FastAPI["FastAPI Async Engine<br>(Uvicorn Backend)"]
AuthGuard["Auth & Session Guard<br>(Memory-Only JWT + HttpOnly Refresh)"]
CSRF["HMAC Double-Submit CSRF<br>(X-ARES-CSRF Validation)"]
RateLimit["Rate Limiting & Brute-Force Shield"]
end
subgraph Core["ARES Core Engine & Governance"]
ScopeFirewall["Scope Egress Firewall<br>(Strict CIDR & IP Whitelist)"]
Governor["OPSEC Noise Governor<br>(Adaptive Jitter & Throttling)"]
Orchestrator["Module Execution Orchestrator<br>(Worker Thread Pool)"]
AutoPlanner["Autonomous Strategy Engine<br>(DAG Heuristics / AI Planner)"]
end
subgraph Storage["Cryptographic Persistence Layer"]
DB[(SQLite / PostgreSQL<br>Alembic Versioned)]
Vault[(AES-256-GCM Vault<br>Encrypted Credentials & Hashes)]
GraphEngine["Attack Graph DAG Engine<br>(BloodHound Ingest & Shortest Path)"]
end
subgraph Deliverables["Reporting Pipeline"]
PDFGen["Headless Chromium / Edge Engine<br>(Automated PDF Generation)"]
Artifacts["Evidence Library<br>(HTML, Markdown, JSON)"]
end
UI -->|HTTPS / REST| AuthGuard
WSClient -->|WSS / Ticket Barrier| AuthGuard
AuthGuard --> CSRF --> RateLimit --> FastAPI
FastAPI --> ScopeFirewall
ScopeFirewall --> Orchestrator
Orchestrator --> Governor
Orchestrator --> AutoPlanner
Orchestrator --> Storage
Storage --> GraphEngine
FastAPI --> DeliverablesARES implements 60+ modular adversary techniques natively mapped to the MITRE ATT&CK Enterprise Framework:
┌──────────────────────────────────────────────────────────────────────────────────────────────────────────────────┐
│ MITRE ATT&CK MATRIX COVERAGE │
├─────────────────────┬─────────────────────┬─────────────────────┬─────────────────────┬──────────────────────────┤
│ DISCOVERY │ CREDENTIAL ACCESS │ LATERAL MOVEMENT │ PRIVILEGE ESCALATION│ DEFENSE EVASION / CLOUD │
├─────────────────────┼─────────────────────┼─────────────────────┼─────────────────────┼──────────────────────────┤
│ • T1087 User Enum │ • T1558.003 Kerberoast│ • T1021.002 SMB/RPC │ • T1548.002 UAC Byps│ • T1070 Indicator Removal│
│ • T1069 Group Enum │ • T1558.004 AS-REP │ • T1021.006 WinRM │ • T1068 Token Privs │ • T1562 Impair Defenses │
│ • T1046 Port/Net │ • T1003 LSASS Dump │ • T1550 Use Ticket │ • T1053 Scheduled │ • T1078 Cloud IAM Enum │
│ • T1018 Host Disc │ • T1649 ADCS ESC1-8 │ • T1071 App Layer │ • T1055 Injection │ • T1580 Cloud Discovery │
│ • T1082 System Info │ • T1110 Pass Spray │ • T1021.001 RDP │ • T1134 Access Token│ • T1526 Cloud Hierarchy │
└─────────────────────┴─────────────────────┴─────────────────────┴─────────────────────┴──────────────────────────┘
ad.kerberoast), AS-REP Roasting, ADCS Certificate Template abuse (ESC1 through ESC8), DCSync account replication, and BloodHound data generation.# 1. Clone the repository
git clone https://github.com/Mafifrizi/ARES.git
Set-Location .\ARES
# 2. Setup isolated Python virtual environment
py -3.12 -m venv .venv
.\.venv\Scripts\python.exe -m pip install -U pip
.\.venv\Scripts\python.exe -m pip install -e ".[dev,pdf]"
# 3. Install frontend dependencies
Set-Location frontend
& "C:\Program Files\nodejs\npm.cmd" ci
Set-Location ..
# 4. Configure local Edge PDF rendering engine & verify doctor status
$env:ARES_PDF_BROWSER = "C:\Program Files (x86)\Microsoft\Edge\Application\msedge.exe"
.\.venv\Scripts\ares.exe doctor --pdf-smoke
# 5. Launch development server (Frontend + Backend proxy)
.\.venv\Scripts\ares.exe dashboard dev --no-reload
Open your browser to http://127.0.0.1:5173/dashboard/.
adminARES_DEFAULT_ADMIN_PASSWORD in .env (default: Admin123456!)ARES was designed for environments with the most stringent compliance and confidentiality requirements:
localStorage or sessionStorage.ares_refresh) with one-time rotation and automatic reuse revocation.X-ARES-CSRF headers matched against cryptographically secure cookie tokens.ARES enforces strict RBAC permissions across all API endpoints, background jobs, and UI surfaces:
row = await db.resolve_access_token_principal(...)). Tampered JWT claims are mathematically discarded.team_lead via POST /auth/register (guarded by require_team_lead()) or automatically mapped from enterprise Identity Providers during SP-initiated SAML/OIDC SSO.PUT /users/{id} does not exist), eliminating horizontal and vertical privilege escalation vectors (e.g., recon escalating to team_lead or reporter running offensive modules).Security console provides a transparent inventory of all registered identities and active sessions for engagement accountability.ARES provides a production-grade Model Context Protocol (MCP) Gateway that enables modern AI coding assistants (Cursor IDE, Claude Desktop, Windsurf, VS Code Cline, Zed, Open-WebUI, LibreChat) to interact with the ARES purple-team offensive platform safely and under strict governance.

ARES MCP Two-Pane Split Terminal Monitor (OpenClaw style) with real-time tool telemetry, live scope inspection, and 1-key token authorization.
Unlike basic MCP servers that expose raw endpoints to LLMs without guardrails, ARES enforces strict Pre-Flight Scope Invariance (ScopeGuard), Anti-Prompt-Injection Taint Isolation, and Single-Use 60-second HMAC Confirmation Tokens before any live offensive action can execute.
For operators or developers connecting Cursor, Claude Desktop, or Windsurf to ARES:
Verify Subsystem Readiness (doctor):
Ensure all core subsystems (Protocol Engine, 9 Tools, 3 Resources, 3 Prompts, 62 Modules, Security Gates) report PASS:
.\mcp.bat doctor
1-Click AI Client Setup (No Manual JSON Editing): Automatically configure your preferred IDE with a single command:
# For Cursor IDE:
.\mcp.bat setup --client cursor
# For Claude Desktop:
.\mcp.bat setup --client claude
# For Windsurf:
.\mcp.bat setup --client windsurf
# For VS Code (Cline):
.\mcp.bat setup --client cline
This writes your active Python virtual environment path directly into the client config file (e.g. .cursor/mcp.json).
Reload Window in Cursor IDE:
Ctrl + Shift + P.Developer: Reload Window.Ctrl + ,) → Features → MCP Servers. The ares server will show a green dot ().For in-depth architecture, the 7 security invariants, CLI scriptability (--json), POSIX exit codes, and operational tool schemas, see ARES MCP Gateway & Product-Grade CLI Specification.
ARES provides a first-class, type-safe Python SDK (ares.sdk) to build custom adversary modules, simulate techniques in isolated test harnesses, and automate engagements programmatically:
BaseModule[P, R] & @ares_module)Declare validated parameter schemas with Pydantic v2 and write modules with full IDE autocomplete:
from ares.sdk import (
BaseModule, ExecutionContext, ModuleResult,
ModuleParams, param, SecretParam,
OpsecLevel, Severity, ares_module,
)
class KerberoastParams(ModuleParams):
dc: str = param("Target Domain Controller IP or FQDN", min_length=3)
domain: str = param("AD DNS domain name, e.g. CORP.LOCAL", min_length=3)
password: SecretParam = param("Domain user password", secret=True, required=False)
class CustomKerberoastModule(BaseModule[KerberoastParams, ModuleResult]):
MODULE_ID = "custom.ad.kerberoast"
MODULE_NAME = "Custom Kerberoasting"
MODULE_CATEGORY = "ad"
OPSEC_LEVEL = OpsecLevel.LOW
MITRE_TECHNIQUES = ["T1558.003"]
PARAMS_MODEL = KerberoastParams
async def execute(self, ctx: ExecutionContext[KerberoastParams]) -> ModuleResult:
# ctx.params provides full static typing and runtime validation
await self.before_request(ctx.params.dc)
# Emit findings using fluent context helpers
finding = ctx.emit_finding(
title=f"Kerberoastable SPN Captured on {ctx.params.dc}",
severity=Severity.HIGH,
mitre_technique="T1558.003",
)
return ModuleResult(status="success", findings=[finding], module_id=self.MODULE_ID)
ModuleTestHarness)Unit test custom techniques locally with mock scope guards, synthetic credential vaults, and fluent assertion matchers:
from ares.sdk import ModuleTestHarness, Severity
async def test_module():
harness = ModuleTestHarness(CustomKerberoastModule)
result = await harness.simulate(params={"dc": "10.0.0.10", "domain": "LAB.LOCAL"})
result.assert_success()
result.assert_finding(severity=Severity.HIGH, mitre="T1558.003")
AresClient)Automate engagements, dispatch modules, and stream real-time WebSocket telemetry via Python scripts or CI/CD pipelines:
from ares.sdk import AresClient
async with AresClient(base_url="http://127.0.0.1:8000", api_key="ares_key_...") as ares:
campaign = await ares.campaigns.create(name="Op-Titan", scope=["10.0.0.0/24"])
job = await ares.modules.run("ad.kerberoast", target="dc01.corp.local", campaign_id=campaign["id"])
findings = await ares.campaigns.findings(campaign["id"])
See docs/module_sdk.md and docs/module-development.md for full developer documentation, architecture specifications, and examples.
Comprehensive documentation is available in the docs/ directory:
[!IMPORTANT] ARES is a dual-use software framework designed exclusively for authorized cybersecurity research, internal enterprise resilience validation, and professional red-team engagements with explicit written permission.
To report security vulnerabilities in ARES, please follow our Security Policy.
ARES is distributed under the open-source MIT License.
ARES — Enterprise-Grade Autonomous Red Team Engagement System.
Continuous Security Validation. Zero Collateral Risk.
| Operational Capability | Traditional Manual Pentest | Legacy Vulnerability Scanners | ARES Autonomous Platform |
|---|
| Testing Frequency | Annual / Semi-Annual | Scheduled Daily / Weekly | Continuous / On-Demand |
| Exploitability Validation | Manual & Labor Intensive | ❌ Theoretical CVE Matching | Deterministic Multi-Stage Proof |
| Multi-Hop Attack Paths | Manual Drawing | ❌ None | Real-Time Interactive DAG |
| Scope Enclave & Egress Firewall | Operator Discipline Only | Network Firewalls Only | Hard Socket-Level CIDR Enforcement |
| Active Directory Lateral Paths | Slow Script Execution | ❌ No Active Paths | Native BloodHound & Kerberos Suite |
| Credential Security & Storage | Loose Flat Files / Cleartext | Vulnerability Logs | AES-256-GCM Encrypted Vault |
| OPSEC & Telemetry Throttling | Manual Jitter Scripts | High Network Noise | Adaptive Noise Profiles & Governor |
| Delivery Time for Reports | 1–2 Weeks Post-Engagement | Raw Data Dumps | Instant Multi-Format Artifacts |
| Deployment Footprint | External Consultants | Bulky Cloud Agents | Air-Gapped Local / Self-Hosted |
| Surface | Core Responsibility | Available Sub-Tabs | Primary Operators |
|---|
| Overview | Executive health, telemetry counters, finding severity metrics. | Single Pane | All Stakeholders |
| Campaigns | Scope whitelisting, noise profiles, encrypted credential vault. | List, Scope, Findings | Team Lead, Operator |
| Modules | 60+ module catalog, parameter input forms, execution console. | Catalog, Run Panel, Results | Operator |
| Reports | Deliverable builder, evidence packages, Report Library lifecycle. | Generate, Library | Operator, Reporter |
| Graph | DAG entity exploration, shortest attack paths, BloodHound ingest. | Entities, Attack Paths, Ingest | Operator, Recon |
| Templates | Repeatable engagement playbooks and multi-stage workflow plans. | Templates, Plan Builder | Team Lead, Operator |
| Strategy | Goal-directed autonomous engine, AI planner integration. | Objective, Active, Result | Team Lead, Operator |
| Security | Operator credentials, API key lifecycle, dependency audit checks. | Account, API Keys, Audit | Team Lead |
| EDR/OPSEC | Defensive telemetry, bypass tracking, detection evasion rules. | Knowledge Base, Report Outcome | Operator |
| Live | Real-time WebSocket event streams and buffered telemetry logs. | Stream, Buffer | Operator |
| Role | API Value | Operational Scope | Administrative Authority |
|---|
| Team Lead | team_lead | Complete platform authority: campaign creation/deletion, user provisioning, security audits, high-noise module overrides. | Full System Admin |
| Operator | operator | Day-to-day operations: execute authorized modules, review findings, explore attack graph, generate reports. Cannot register users. | Operational Tier |
| Recon | recon | Read-heavy reconnaissance: execute safe discovery and network fingerprinting modules. Execution of disruptive modules is blocked. | Read-Heavy |
| Reporter | reporter | Stakeholder review: read-only access to campaign analytics, findings, attack graphs, and generated deliverables. No execution rights. | Read-Only Audit |
ConnectedLaunch the Live Two-Pane Monitor (Optional Companion Window): In a dedicated terminal window, run the OpenClaw-style two-pane monitor to watch real-time AI tool invocations, scope checks, and approve tokens:
.\mcp.bat monitor
ares_scope_check, ares_dry_run_module, ares_run_tool).A to approve a pending execution token, R to reject, C to clear stream, Q to quit.Issue Your First Command to the AI Agent:
Open Cursor Composer / Chat (Ctrl + I or Ctrl + L), and try this prompt:
"Check active campaign status, verify scope for target 10.0.1.50, and stage a dry-run of module ad_kerberoast."