Quickstart
Your first scan
sxaiam will:
- Collect all IAM users, roles, groups and policies from your account
- Resolve effective permissions for each identity
- Build an attack graph and find escalation paths
- Export results to
findings.json
Output formats
JSON — machine-readable, full evidence included:
Markdown — for pentest reports:
GraphML — for Gephi, Neo4j or other graph visualization tools:
Compare against AWS Security Hub
This shows which paths sxaiam found that Security Hub missed, and vice versa.
Use as a Python library
import boto3
from sxaiam.ingestion.client import IngestionClient
from sxaiam.resolver.engine import PolicyResolver
from sxaiam.graph.builder import AttackGraph
from sxaiam.graph.pathfinder import PathFinder
session = boto3.Session(profile_name="my-profile")
client = IngestionClient(session=session)
snapshot = client.collect()
resolver = PolicyResolver(snapshot)
resolved = resolver.resolve_all()
graph = AttackGraph()
G = graph.build(snapshot, list(resolved.values()))
finder = PathFinder(G)
paths = finder.find_all_paths()
for path in paths:
print(path.summary())
Understanding the output
Each escalation path includes:
- Origin — the identity that can escalate
- Severity — CRITICAL, HIGH, MEDIUM, or LOW
- Techniques — which IAM techniques are used
- Steps — the exact API calls an attacker would make
- Evidence — the specific IAM permissions that justify each step