Contact Open demo
Solutions / Get started

What is an attack path?

An attack path is the chain of access that lets one identity reach data it was never meant to touch. Watch one form, then watch it break.

Attack path · partner-syncScanning
holdscan assumecan read
partner-syncAI agent
OAuth tokenHeld by the agent
partner-integration-roleCloud role
prod/payments/stripe-keyCrown-jewel data
A path is a chain. Start with an agent that already exists.The agent holds an OAuth token.The token can assume a cloud role.The role can read crown-jewel data. Nobody asked for this path, and it is live.Cut one hand-over: remove the grant on the role. That is the breakpoint.The next scan finds no path from partner-sync to the payments key.
The short version

A path is access, chained. An agent holds a token. The token can assume a role. The role can read a data store. No single step is wrong on its own. Together they are a route to your most sensitive data, and it exists whether or not anyone has used it.

Five kinds of hand-over

Every attack path is made of the same few hops. Learn to spot them and any path becomes readable.

See the terms in the Academy
The AWS root access key can perform any action on any resource in the account
Recommended action: Delete the root account access key · Remove access
RemediateAssignCreate a ticket⛓⤓⋮

Detected: The AWS account has a root access key. The root user holds an access key; the root user is not bound by IAM policies and holds every action on every resource. Source: scan e07c354c-4aaa-4e30-b18f-8a1468449688 observed 2026-11-09T06:00:00Z, aws coverage complete.

SeverityCritical
Impact4 crown jewels ·not measurable
Authority paths14 authority paths
EvidenceProvenEvery step is an observed relationship: configured authority. Observed use is reported separately. 2 scans · reproduced
Platforms1 platform
Observed useNo use observedin 30 days of CloudTrail · verify before removing

From a graph to one issue

nerl0 does not hand you a graph and wish you luck. Every path that reaches crown-jewel data becomes a single issue that says what can reach what, who owns it and which hand-over to cut.

  1. 1
    nerl0 reads the platformsRead-only connectors pull roles, keys, grants and bots. Nothing is installed on your hosts.
  2. 2
    It connects the hand-oversEach relationship becomes an edge: this token can assume that role, that role can read this store.
  3. 3
    It finds the end of the chainA path that ends at crown-jewel data becomes an issue with an owner and one recommended breakpoint.

Four low alerts. One critical path.

Scanners judge each finding alone. An attacker, and an agent that was tricked, use them in a row.

As alerts
  • LowToken has no expiry date
  • LowRole trusts a second account
  • LowSecret stored in a shared vault
  • LowAgent holds a broad OAuth grant

Each one is easy to defer. None says what it connects to.

As a path
  • partner-syncholds a token with no expiry
  • partner-integration-roletrusted by a second account
  • prod/payments/stripe-keyreadable from that role
CriticalAn agent can reach the payments key.

Find it. Rank it. Cut it.

The same three steps for every path, and the next scan tells you whether the cut held.

01FindConnectors read roles, keys, grants and MCP servers. nerl0 chains them into every route from an identity to your data.
02RankPaths that end at crown-jewel data come first. Distance to production and evidence decide the order.
03CutOne breakpoint closes a path. Send it as a ticket, then let the next scan confirm.

Questions to ask your own environment

Start with one of these in the Question Library. Each one is a check you can activate and measure again.

Browse all questions

More solutions

Other ways into the same map of authority.

Browse the Academy

See the paths in your own environment.