AWS - IAM Privesc
IAM
Za više informacija o IAM-u pogledajte:
AWS - IAM, Identity Center & SSO Enumiam:CreatePolicyVersion
iam:CreatePolicyVersion
Dodeljuje mogućnost kreiranja nove verzije IAM politike, zaobilazeći potrebu za iam:SetDefaultPolicyVersion
dozvolom korišćenjem --set-as-default
zastavice. Ovo omogućava definisanje prilagođenih dozvola.
Exploit Komanda:
Utjecaj: Izravno povećava privilegije omogućavajući bilo koju radnju na bilo kojem resursu.
iam:SetDefaultPolicyVersion
iam:SetDefaultPolicyVersion
Omogućava promjenu zadane verzije IAM politike na drugu postojeću verziju, potencijalno povećavajući privilegije ako nova verzija ima više dozvola.
Bash naredba:
Uticaj: Indirektno eskaliranje privilegija omogućavanjem dodatnih dozvola.
iam:CreateAccessKey
iam:CreateAccessKey
Omogućava kreiranje ID-a pristupnog ključa i tajnog pristupnog ključa za drugog korisnika, što može dovesti do potencijalnog eskaliranja privilegija.
Eksploatacija:
Uticaj: Direktno povećanje privilegija preuzimanjem proširenih dozvola drugog korisnika.
iam:CreateLoginProfile
| iam:UpdateLoginProfile
iam:CreateLoginProfile
| iam:UpdateLoginProfile
Omogućava kreiranje ili ažuriranje profila za prijavljivanje, uključujući postavljanje lozinki za AWS konzolno prijavljivanje, što dovodi do direktnog povećanja privilegija.
Eksploatacija za kreiranje:
Eksploatacija za ažuriranje:
Uticaj: Direktno eskaliranje privilegija putem prijavljivanja kao "bilo koji" korisnik.
iam:UpdateAccessKey
iam:UpdateAccessKey
Omogućava omogućavanje onemogućenog pristupnog ključa, što potencijalno može dovesti do neovlašćenog pristupa ako napadač poseduje onemogućeni ključ.
Eksploatacija:
Utjecaj: Direktno povećanje privilegija ponovnim aktiviranjem pristupnih ključeva.
iam:CreateServiceSpecificCredential
| iam:ResetServiceSpecificCredential
iam:CreateServiceSpecificCredential
| iam:ResetServiceSpecificCredential
Omogućava generiranje ili resetiranje vjerodajnica za određene AWS usluge (npr. CodeCommit, Amazon Keyspaces), nasljeđujući ovlasti povezanih korisnika.
Iskorištavanje za stvaranje:
Eksploatacija za Resetovanje:
Utjecaj: Izravno povećanje privilegija unutar korisnikovih dozvola usluge.
iam:AttachUserPolicy
|| iam:AttachGroupPolicy
iam:AttachUserPolicy
|| iam:AttachGroupPolicy
Omogućuje povezivanje politika s korisnicima ili grupama, izravno povećavajući privilegije nasljeđivanjem dozvola povezane politike.
Iskorištavanje za korisnika:
Eksploatacija za grupu:
Utjecaj: Izravno povećanje privilegija za sve što politika omogućuje.
iam:AttachRolePolicy
, ( sts:AssumeRole
|iam:createrole
) | iam:PutUserPolicy
| iam:PutGroupPolicy
| iam:PutRolePolicy
iam:AttachRolePolicy
, ( sts:AssumeRole
|iam:createrole
) | iam:PutUserPolicy
| iam:PutGroupPolicy
| iam:PutRolePolicy
Omogućuje povezivanje ili postavljanje politika za uloge, korisnike ili grupe, omogućavajući izravno povećanje privilegija dodjeljivanjem dodatnih dozvola.
Iskorištavanje za ulogu:
Eksploatacija za Inline politike:
Možete koristiti politiku poput:
Uticaj: Direktno eskaliranje privilegija dodavanjem dozvola putem politika.
iam:AddUserToGroup
iam:AddUserToGroup
Omogućava dodavanje sebe u IAM grupu, eskaliranje privilegija nasleđivanjem dozvola grupe.
Eksploatacija:
Utjecaj: Izravno povećanje privilegija na razinu dozvola grupe.
iam:UpdateAssumeRolePolicy
iam:UpdateAssumeRolePolicy
Omogućuje izmjenu dokumenta politike pretpostavljanja uloge, omogućujući pretpostavljanje uloge i povezane dozvole.
Iskorištavanje:
Gde politika izgleda kao što je prikazano ispod, koja korisniku daje dozvolu da pretpostavi ulogu:
Utjecaj: Izravno povećanje privilegija preuzimanjem dozvola bilo koje uloge.
iam:UploadSSHPublicKey
|| iam:DeactivateMFADevice
iam:UploadSSHPublicKey
|| iam:DeactivateMFADevice
Omogućava preuzimanje SSH javnog ključa za autentifikaciju na CodeCommit i deaktiviranje uređaja za višestruku autentifikaciju (MFA), što može dovesti do potencijalnog neizravnog povećanja privilegija.
Iskorištavanje za preuzimanje SSH ključa:
Eksploatacija za deaktivaciju MFA:
aws iam deactivate-mfa-device --user-name <IAM_USER_NAME> --serial-number <MFA_SERIAL_NUMBER>
Utjecaj: Indirektno povećanje privilegija omogućavanjem pristupa CodeCommit-u ili onemogućavanjem MFA zaštite.
iam:ResyncMFADevice
iam:ResyncMFADevice
Omogućava resinkronizaciju MFA uređaja, što potencijalno može dovesti do indirektnog povećanja privilegija manipulacijom MFA zaštite.
Bash naredba:
Uticaj: Indirektno eskaliranje privilegija dodavanjem ili manipulacijom MFA uređaja.
iam:UpdateSAMLProvider
, iam:ListSAMLProviders
, (iam:GetSAMLProvider
)
iam:UpdateSAMLProvider
, iam:ListSAMLProviders
, (iam:GetSAMLProvider
)Sa ovim dozvolama možete promeniti XML metapodatke SAML konekcije. Zatim, možete zloupotrebiti SAML federaciju da se prijavite sa bilo kojom ulogom koja mu veruje.
Imajte na umu da legitimni korisnici neće moći da se prijave. Međutim, možete dobiti XML, tako da možete postaviti svoj, prijaviti se i konfigurisati prethodno stanje.
TODO: Alat koji može generisati SAML metapodatke i prijaviti se sa određenom ulogom
iam:UpdateOpenIDConnectProviderThumbprint
, iam:ListOpenIDConnectProviders
, (iam:
GetOpenIDConnectProvider
)
iam:UpdateOpenIDConnectProviderThumbprint
, iam:ListOpenIDConnectProviders
, (iam:
GetOpenIDConnectProvider
)(Nesiguran u vezi ovoga) Ako napadač ima ove dozvole, može dodati novi Thumbprint kako bi uspeo da se prijavi u sve uloge koje veruju provajderu.
Reference
Last updated