Contact Open demo
Blog

How to read the Security Graph in five minutes

Sascha BuhleFounder & CEO
Guide
Can assumeBreakpoint · Read3partner-syncLambda function3partner-integration-roleIAM role6prod/payments/stripe-keySecrets Manager secret

The Security Graph looks complicated at first. Circles, arrows, small red numbers and a dashed line. Once you know what each of them means, you can read any path in under a minute.

This guide walks through one path from the demo workspace, step by step. All data in the demo is fictitious.

In this piece, we will cover:

  • The parts of a path: nodes, labelled arrows and the crown jewel
  • The example path from agent to secret
  • What the badges and the dashed line mean
  • A five-minute routine for your own graph

The parts of a path

What you seeWhat it is
A circleOne identity or resource: an agent, a token, a role or a data store.
A labelled arrowAn observed relationship between two nodes, such as "holds", "can assume" or "can read".
A red numberHow many findings are attached to that node.
The crown jewelA data store you have classified as one that matters most. Paths end here.
A dashed lineThe breakpoint: the single change that interrupts the route.

Every arrow is something nerl0 observed in the configuration data of a connected platform. Nothing is inferred.

The example: from agent to secret

In the demo workspace, an agent called partner-sync runs as a Lambda function in AWS. Read the path from left to right.

  1. partner-sync holds an OAuth token. The agent has a credential.
  2. The token can assume partner-integration-role. The credential opens a role, which other accounts can also assume.
  3. The role can read prod/payments/stripe-key. The role has read access to a production secret that is classed as a crown jewel.

No single step looks wrong. Together they give an agent in one account a route to a payment secret. That is an authority path, and it exists whether or not anyone has used it. For why that distinction matters, see A route is not proof of use.

What the badges mean

  • Proven. Every step of the route is an observed relationship. It does not say the route was used.
  • Severity. How serious the route is, based on what it reaches and how widely the role can be assumed.
  • Crown jewel count. How many classified data stores the path leads to.

Each path becomes an issue with severity, evidence, an owner and a recommended breakpoint. In the demo, the recommendation reads: remove read access of partner-integration-role to prod/payments/stripe-key.

New3···  +
Updated 09 NovOH

ops-automation-agent can write to production crown-jewel prod/payments/stripe-key

HighReduce scopeAWS
Updated 09 NovOH

anthropics/claude-code-action in northstar-tech/platform can write to repositories

HighReduce scopeGitHub
Open–

Assign an owner to the unowned agent

MediumAssign owner
In progress1···  +
Updated todayMC

The AWS root access key can perform any action on any resource in the account

CriticalRemove accessAWS
Verified1···  +
ClosedMC

Rotated secret no longer reachable from other accounts

ClosedRotate secret
The Issues board in the nerl0 demo workspace. All data shown is fictitious demo data.

Cut the path, then check

The breakpoint is the change that interrupts the most routes with the least effort. nerl0 recommends it. You apply it yourself in the platform. The next scan confirms the route is gone, and the issue closes with that evidence.

A five-minute routine for your own graph

  1. Start at the crown jewels. Look only at paths that end in a store you classified.
  2. Read the shortest path first. Fewer hops usually means easier to exploit and easier to cut.
  3. Check the owner. If the agent at the start has no owner, assign one before anything else.
  4. Open the issue. Read the evidence and the recommended breakpoint.
  5. Apply the change, then wait for the next scan. Do not close the issue by hand.

Summary

A path is a chain of observed relationships from an agent to data that matters. Circles are identities, labelled arrows are relationships, the crown jewel is where the path ends, and the dashed line is the change that cuts it. Read from the shortest path, assign an owner, apply the breakpoint and let the next scan verify it.

Sascha BuhleFounder & CEO, nerl0

Sascha writes about what AI agents and non-human identities can reach, and builds nerl0 to keep that visible.

See it on your own data.