Account Manipulation: Additional Cloud Roles

An adversary may add additional roles or permissions to an adversary-controlled cloud account to maintain persistent access to a tenant. For example, adversaries may update IAM policies in cloud-based environments or add a new global administrator in Office 365 environments.[1][2][3][4] With sufficient permissions, a compromised account can gain almost unlimited access to data and settings (including the ability to reset the passwords of other admins).[5][4]

This account modification may immediately follow Create Account or other malicious account activity. Adversaries may also modify existing Valid Accounts that they have compromised. This could lead to privilege escalation, particularly if the roles added allow for lateral movement to additional accounts.

For example, in AWS environments, an adversary with appropriate permissions may be able to use the CreatePolicyVersion API to define a new version of an IAM policy or the AttachUserPolicy API to attach an IAM policy with additional or distinct permissions to a compromised user account.[6]

ID: T1098.003
Sub-technique of:  T1098
Platforms: Azure AD, Google Workspace, IaaS, Office 365, SaaS
Contributors: Alex Parsons, Crowdstrike; Alex Soler, AttackIQ; Arad Inbar, Fidelis Security; Chris Romano, Crowdstrike; Clément Notin, Tenable; Microsoft Threat Intelligence Center (MSTIC); Pià Consigny, Tenable; Praetorian; Wojciech Lesicki
Version: 2.3
Created: 19 January 2020
Last Modified: 03 October 2023

Procedure Examples

ID Name Description
C0027 C0027

During C0027, Scattered Spider used IAM manipulation to gain persistence and to assume or elevate privileges.[7]

G1004 LAPSUS$

LAPSUS$ has added the global admin role to accounts they have created in the targeted organization's cloud instances.[8]

C0024 SolarWinds Compromise

During the SolarWinds Compromise, APT29 granted company administrator privileges to a newly created service principle.[9]

Mitigations

ID Mitigation Description
M1032 Multi-factor Authentication

Use multi-factor authentication for user and privileged accounts.

M1026 Privileged Account Management

Ensure that all accounts use the least privileges they require. In Azure AD environments, consider using Privileged Identity Management (PIM) to define roles that require two or more approvals before assignment to users.[10]

M1018 User Account Management

Ensure that low-privileged user accounts do not have permissions to add permissions to accounts or update IAM policies.

Detection

ID Data Source Data Component Detects
DS0002 User Account User Account Modification

Collect usage logs from cloud administrator accounts to identify unusual activity in the assignment of roles to those accounts. Monitor for accounts assigned to admin roles that go over a certain threshold of known admins. Monitor for updates to IAM policies and roles attached to user accounts.

References