Logo The David Page
  • Home
  • About
  • Featured Posts
  • Recent Posts
  • Posts
  • Dark Theme
    Light Theme Dark Theme System Theme
Logo Inverted Logo
  • Tags
  • Amazon Bedrock
  • AWS
  • Azure
  • Azure CLI
  • CDN
  • CloudFront
  • CloudWatch
  • Containers
  • Cost Optimization
  • Databases
  • Docker
  • DynamoDB
  • EC2
  • ECR
  • FinOps
  • Front Door
  • Gemini API
  • Glacier
  • IAM
  • Kubernetes
  • Lambda
  • NAT Gateway
  • Networking
  • Observability
  • Privilege Escalation
  • Rate Limiting
  • RDS
  • RDS Proxy
  • Reliability
  • S3
  • Scalability
  • Security
  • Serverless
  • Storage
  • Troubleshooting
  • VPC
  • WAF
Hero Image
iam:PassRole + Wildcard: The Privilege Escalation Hiding in Plain Sight

A developer account with nothing but lambda:CreateFunction and a wildcard iam:PassRole can walk itself up to full Administrator — no exploit, no misconfigured bucket, just permissions doing exactly what they were asked to do. Hi everyone 👋 This one doesn’t show up as a vulnerability scan finding or a CVE — it’s a permissions grant that looks completely reasonable in a policy review, right up until someone connects the dots. 😱 The convenient habit To make deployments easier, it’s extremely common to grant developer accounts iam:PassRole against * (a wildcard covering every role in the account). The reasoning is simple and, on its own, sounds harmless: developers need to attach an IAM role to whatever they deploy — a Lambda function, an EC2 instance — and wildcarding PassRole means nobody has to update a policy every time a new role gets created.

  • AWS
  • IAM
  • Security
  • Privilege Escalation
Saturday, August 1, 2026 Read
Navigation
  • About
  • Featured Posts
  • Recent Posts
Contact me:
  • hi@thedavidlee.space

© 2026 Copyright.