Attack paths are built from much more than vulnerabilities. Misconfigurations, excessive permissions, cached credentials, trust relationships and, now, AI agent identities all form edges an attacker can walk. This note lays out a five-stage method to find attack paths across every domain of an estate and validate them: build a single graph, generate candidate paths, prune the dead ends, validate each remaining hop with a safe test, and break the paths that prove real. A path that has not been validated is a hypothesis, and a program built on hypotheses fixes the wrong things.
Key findings
Why attack path programs stall
Most teams that try this hit one of four walls.
Single-domain graphs
Path explosion
Inferred hops
Stale graphs
The attack path pipeline
Six data domains feed one graph. Pruning cuts the theoretical paths down, validation proves the rest, and every change event restarts the loop.
The method: five stages from graph to proof
Build one graph
Generate candidate paths
Prune dead ends
Validate each hop
Score and break
Worked example: the pipeline in 40 lines
Let's model the pipeline with Python and the open source networkx library. Real estates have millions of edges, but the logic is exactly the same.
Stages 1 to 3: build, generate and prune
Ranking the choke points
Count how many entry-to-jewel paths run through each node. Betweenness restricted to your entries and jewels gives you the same signal at scale.
Three nodes carry both paths. Of those, svc-deploy is the cheapest to fix, because removing one RBAC verb is a lot easier than rebuilding a jump host.
Stage 4: prove the hops that are left
Every edge above has a src. Edges marked assumed, or inferred from a single data source, go to validation first. Prove them with read-only checks, such as kubectl auth can-i for RBAC edges and aws iam simulate-principal-policy for cloud edges. Then write the result back to the edge:
A path counts as real only when every edge on it is proven.
How to measure the outcome
Five numbers that tell you whether your graph matches reality.
How Hayrok approaches attack path validation
One graph, real edges, proven hops.
Prefer to start from the asset and work backward? Read How to Validate an Attack Path Before It Reaches a Crown Jewel.
FAQ
How do I find attack paths in my environment?
Build a single graph from assets, vulnerabilities, identities, cloud permissions and network reachability, then compute paths from realistic entry points to your critical assets.
What is the difference between attack path analysis and attack path validation?
Analysis infers paths from data. Validation proves each hop with a safe test, so the paths you report are paths an attacker could actually walk.
Do attack paths only involve vulnerabilities?
No. Most edges are misconfigurations, permissions, credentials and trust relationships. CVEs are a small share.
Should AI agents be part of the attack graph?
Yes. Agents hold identities and tool permissions. ATT&CK v20 added prompt injection and AI-enabled exfiltration, so agent edges are now part of the threat model.
How often should attack paths be revalidated?
Continuously for change events that touch a proven path, and on a regular cadence for the full graph.
Find the paths that are real
We will build a graph across your domains, prune it to the paths that matter and prove the top routes hop by hop.
At Hayrok Labs we question everything and Validate what matters.