Derivation rules

2,433 declarative match → where → emit rules (1,787 derived, 646 explicit). Filter by cloud, emitted edge, node type, or text.

2,433 rule(s) · page 8 of 49

Reading snapshot data (CanReadData) that contains secrets (ContainsSecret) lets the principal extract and authenticate as the identity those secrets belong to - shorthand for the CanReadData → ContainsSecret → CredentialsFor chain into the CanReadSecret pivot. This rule feeds credential-chains.yaml: read-secret-yields-identity.
aws CanReadSecret derived
A volume is attached to an EC2 instance via ec2:DescribeVolumes.
aws AttachedTo explicit
Detaching a volume from a victim instance, attaching it to an attacker-controlled instance, modifying the filesystem (cron, SSH keys, startup scripts), and re-attaching enables both data write and indirect CanModifyConfiguration on the victim instance. This is the inverse of aws-ebs-volume-mount-read.
CreateVolume from an existing snapshot + AttachVolume to an attacker- controlled instance yields full filesystem read of the snapshot's data. This rule matches on direct IAM capability evaluation for both volume creation and attachment.
aws CanReadData derived
Attach an instance profile (role) to an instance the attacker can run code on.
aws CanAttachIdentity derived
CreateImage from a compromised instance bakes attacker-controlled disk contents into an AMI consumed by future launches (supply chain).
aws CanModifyCode derived
Run code on an instance that ExecutesAs a role -> execute as that role.
aws CanExecuteAs derived
The instance itself exposes its role's credentials via IMDS.
aws ExposesCredential derived
Code running on an instance can read the instance-profile role token from IMDS.
aws CanRetrieveToken derived
Snapshot a peer instance's volume, create a volume from it, attach to an attacker instance and mount -> read on-disk secrets/keys without running code on the victim.
aws CanReadData derived
The mounted peer volume leaks any on-disk credentials/keys to the attacker who mounted it.
aws ExposesCredential derived
Swap the role an existing instance runs as.
aws CanAttachIdentity derived
RunInstances + PassRole -> launch an instance running as a chosen role, then read IMDS.
aws CanCreateWorkloadAs derived
A repository resource policy grants ecr:PutImage to a principal in another AWS account, creating a cross-account supply-chain push trust.
aws CrossAccountTrust derived
An external principal granted ecr:PutImage via the repository's resource policy can push images (cross-account supply-chain attack).
aws CanModifyCode derived
A principal with ecr:DeleteRepositoryPolicy can delete the repository resource policy, removing all access controls and cross-account restrictions - policy-mutation escalation.
aws CanModifyPolicy derived
A principal with ecr:PutImageTagMutability can change an IMMUTABLE repository to MUTABLE, unblocking push overwrites on protected tags (prerequisite removal for CanModifyCode).
A public ECR repository is pull-accessible to any user on the internet without authentication, enabling supply-chain poisoning by external/anonymous attackers.
aws ExposedToInternet derived
A principal with effective ecr:BatchGetImage + ecr:GetDownloadUrlForLayer can pull image layers, reading embedded secrets or proprietary code contained in the repository's images. For KMS-encrypted repositories, the principal must also hold kms:Decrypt on the repository's CMK.
aws CanReadData derived
An IAM principal with effective ecr:PutImage (+ layer-upload actions) on a repository can push/overwrite a mutable-tag image, injecting attacker code into every consumer that re-pulls that tag.
aws CanModifyCode derived
An image push to ECR emits EventBridge events (ecr:PutImage action emits ECR Image Action event) that can trigger downstream Compute workloads (Lambda, CodePipeline, deploy workers), enabling trigger-based code execution.
aws CanTrigger derived
A principal with ecr:PutReplicationConfiguration can change the registry's replication destination settings, enabling supply-chain image interception and poisoning across all repositories in the account.
A registry-level replication policy allows an external account's repository to replicate images into the victim's registry, enabling cross-account supply-chain poisoning via the replication mechanism.
aws CrossAccountTrust derived
A principal with ecr:SetRepositoryPolicy can rewrite the repository resource policy to grant itself or any other principal push or pull access - policy-mutation escalation prerequisite.
aws CanModifyPolicy derived
Create a new ECS workload (task/service) bound to a passable task role.
aws CanCreateWorkloadAs derived
EC2-launch container reaches host IMDS and reads the container-instance role.
aws ExposesCredential derived
ECS Exec runs OS commands inside a running container.
aws CanExecuteCommand derived
ECS Exec into a task -> execute as its task role.
aws CanExecuteAs derived
Register + run an attacker container as a passable task role.
aws CanExecuteAs derived
Redeploy an existing service onto an attacker task definition revision.
aws CanExecuteAs derived
Task execution role reads Secrets Manager / SSM secrets referenced in the task definition.
aws CanReadSecret derived
Principal can pass a role to ECS tasks (iam:PassRole scoped to ecs-tasks).
aws CanPassIdentity derived
RegisterTaskDefinition lets attacker author image/command/env and choose the task role.
RegisterTaskDefinition authors the image/command/entryPoint a task runs = ECS-native code-authoring primitive.
aws CanModifyCode derived
Create an EventBridge/Scheduler target that runs an ECS task as a passable role.
aws CanSchedule derived
Code in an ECS task reads the task role's temp credentials from the metadata endpoint.
aws CanRetrieveToken derived
The ECS agent for a task executes as the task execution role (executionRoleArn).
aws ExecutesAs derived
A running ECS task executes as its configured task role (taskRoleArn).
aws ExecutesAs derived
A principal with elasticfilesystem:CreateMountTarget can place a new mount target in a subnet they control, gaining network access to the EFS file system.
aws CanNetworkReach explicit
move · open · esc close