Enumerate AWS IAM policies, detect privilege escalation paths per Rhino Security Labs canonical 21 primitives.
59
70%
Does it follow best practices?
Run evals on this skill
Adds up to 20 points to the overall score
View guide
Critical
Do not install without reviewing
Fix and improve this skill with Tessl
tessl review fix ./packages/decepticon/decepticon/skills/standard/cloud/aws-iam-enum/SKILL.mdaws sts get-caller-identity
aws iam get-account-summaryaws iam list-attached-user-policies --user-name ME --output json > /tmp/attached.json
aws iam list-user-policies --user-name ME --output json > /tmp/inline.json
aws iam list-groups-for-user --user-name ME --output json > /tmp/groups.jsonFor each attached policy ARN:
aws iam get-policy --policy-arn ARN --query 'Policy.DefaultVersionId'
aws iam get-policy-version --policy-arn ARN --version-id VID > /tmp/policy.jsonThen:
iam_policy_audit(open("/tmp/policy.json").read())Rhino Security's canonical 21 paths — any Allow on these is a chain step:
kg_add_node(kind="vulnerability", label="IAM:CreateAccessKey → account takeover", props={"severity":"critical","source":"aws-iam"})
kg_add_node(kind="crown_jewel", label="AWS Account 1234")
kg_add_edge(src=<vuln>, dst=<crown_jewel>, kind="grants", weight=0.3)iam:PassRole + lambda:CreateFunction + a Lambda role
with admin → create malicious Lambda → assume adminiam:UpdateLoginProfile + sts:GetFederationToken → temporary
console access as another usere34afba
If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.