Role-Based Access Control (RBAC) is supposed to make access predictable and safe. You define roles, assign permissions, and trust that no one can act outside their role. But the model breaks when roles are too broad, overlap in unsafe ways, or allow indirect paths to higher privileges. This is privilege escalation inside RBAC—leveraging flawed role assignments to gain unauthorized capabilities.
Common causes include:
- Granting roles with more privilege than required.
- Combining roles that, together, unlock protected actions.
- Neglecting to regularly review role definitions and usage.
- Missing checks for indirect privilege chains, like delegated tasks or shared service accounts.
Detection is difficult. RBAC privilege escalation often hides in small inconsistencies across databases, microservices, or APIs. Logs might show allowed actions with no obvious breach, but the "allowed" status comes from a dangerous role combination.