Attack paths that involve AI agents are uniquely dangerous because prompt
injection can be the initial compromise step. An attacker who can influence
an agent’s input can trigger tool calls that traverse cloud permissions the
agent was never intended to exercise at that level of trust.
The security graph
Trident represents your entire cloud environment as a directed graph. Every resource is a node; every relationship between resources is a typed, directed edge. Node types include: EC2 instances, Lambda functions, S3 buckets, RDS and DynamoDB instances, IAM roles and users, EKS clusters, Kubernetes pods, service accounts, and more. Edge types capture access and trust relationships:| Edge kind | Meaning |
|---|---|
assumes_role | An identity or workload can assume this IAM role |
grants | A role or policy grants permissions to this resource |
reaches | Network reachability between two resources |
stores | A workload writes data to this data store |
mounts | A container mounts this volume or secret |
runs | A compute resource runs as this identity |
The toxic combo engine
The toxic combo engine searches the security graph for paths that combine two or more risk factors that are individually low-severity but together constitute a critical exploit chain. It runs a breadth-first search (BFS) from every agent workload node, following typed edges toward high-sensitivity data stores and privileged identities.Named detection rules
agent_injection_priv_role — AI agent to privileged role to sensitive data
agent_injection_priv_role — AI agent to privileged role to sensitive data
The Trident-defining rule. Fires when a prompt-injectable AI agent
runs as (or can assume) a privileged IAM role that has access to a
sensitive data store. The path: attacker crafts a malicious prompt →
agent executes tool calls under the privileged role → role has
s3:GetObject (or equivalent) on a bucket classified sensitivity:HIGH.This is the attack that makes AI-adjacent cloud security fundamentally
different from traditional CSPM.Over-permissioned identity + public exposure + sensitive data
Over-permissioned identity + public exposure + sensitive data
Fires when a publicly reachable resource (e.g. an EC2 instance with a
security group open to
0.0.0.0/0) runs as an identity with broad
permissions over sensitive data. Public exposure combined with
over-permission creates a direct exfiltration path requiring no
lateral movement.Leaked secret + reachable service + data exfiltration path
Leaked secret + reachable service + data exfiltration path
Fires when a secret (API key, access token, service account key) that
Trident has flagged as potentially leaked — via TruffleHog, gitleaks,
or your CI scanner — also has a reachable service endpoint and a
permission path to sensitive data. The leaked credential is the
initial foothold; the graph provides the rest of the chain.
Additional rules
Additional rules
Trident ships six named rules in total. Additional patterns cover:
workload identity privilege escalation, Kubernetes RBAC misconfigurations
that expose cloud credentials, and cross-account role assumptions that
bridge security boundaries. New rules are added as the threat landscape
evolves.
Exploitability verification
Before surfacing an attack path to you, Trident confirms that the path is actually exploitable — not just theoretically possible — using a read-only IAM policy simulation. Trident callsiam:SimulatePrincipalPolicy with the source identity and the target resource’s required actions. If the simulation returns allowed, the path is confirmed and ranked accordingly. If the simulation returns denied (e.g. because an SCP blocks the action), Trident lowers the confidence score or suppresses the path entirely.
This step prevents alert fatigue from theoretical paths that your environment’s actual policies already block.
Viewing attack paths
Open Cloud → Attack Paths in the Trident dashboard. Each path card shows:- Involved assets — every node in the chain, with resource type and ARN
- Attack chain steps — the ordered sequence of edges traversed, labeled with edge kind and the predicate that fired (e.g. “agent runs as
arn:aws:iam::…:role/AgentRole”) - Blast radius — the set of data stores or identities reachable if the path is exploited
- Confidence score — a 0–100 score reflecting IAM simulation result, data sensitivity, and path length
Prioritization
Trident ranks attack paths by a combination of exploit reachability and potential impact:- Reachability is determined by the IAM policy simulation result and the number of hops required
- Impact is the product of data sensitivity (LOW / MEDIUM / HIGH) and access breadth (how many sensitive resources are reachable)
Cloud guardrails (PREVENT layer)
For each confirmed attack path, Trident can generate preventive policy code that blocks the path at the infrastructure level — before an attacker ever tries to walk it. Click Generate Guardrail on any attack path. Trident’s Sentinel AI produces policy code in your chosen format:- Kyverno
- Conftest / Rego
- CloudFormation Guard
- Cloud Custodian