Size: Small
Difficulty: Easy
Command: $ ./cloudgoat.py create iam_privesc_by_rollback
- 1 IAM User
- 5 policy versions
- IAM User "Raynor"
Acquire full admin privileges.
Starting with a highly-limited IAM user, the attacker is able to review previous IAM policy versions and restore one which allows full admin privileges, resulting in a privilege escalation exploit.
- Starting as the IAM user "Raynor," the attacker has only a few limited - seemingly harmless - privileges available to them.
- The attacker analyzes Raynor's privileges and notices the SetDefaultPolicyVersion permission - allowing access to 4 other versions of the policy via setting an old version as the default.
- After reviewing the old policy versions, the attacker finds that one version in particular offers a full set of admin rights.
- Attacker restores the full-admin policy version, gaining full admin privileges and the ability to carry out any malicious actions they wish.
- As a final step, the attacker may choose to revert Raynor's policy version back to the original one, thereby concealing their actions and the true capabilities of the IAM user.
A cheat sheet for this route is available here.