AWS - KMS Persistence

Tip

Učite i vežbajte AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Učite i vežbajte GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE) Učite i vežbajte Azure Hacking: HackTricks Training Azure Red Team Expert (AzRTE)

Podržite HackTricks

KMS

Za više informacija pogledajte:

AWS - KMS Enum

Grant pristupa putem KMS policies

Napadač može iskoristiti dozvolu kms:PutKeyPolicy da dodeli pristup ključu korisniku pod svojom kontrolom ili čak eksternom nalogu. Pogledajte KMS Privesc page za više informacija.

Eternal Grant

Grants su drugi način da se određenom principalu dodele neke dozvole nad specifičnim ključem. Moguće je dodeliti grant koji omogućava korisniku da kreira grants. Štaviše, korisnik može imati više grants (čak identičnih) nad istim ključem.

Stoga, moguće je da korisnik ima 10 grants sa svim dozvolama. Napadač bi to trebao stalno pratiti. Ako se u jednom trenutku jedan grant ukloni, treba odmah generisati još 10.

(Koristimo 10, a ne 2, kako bismo mogli uočiti da je grant uklonjen dok korisnik još uvek ima neki grant)

# To generate grants, generate 10 like this one
aws kms create-grant \
--key-id <key-id> \
--grantee-principal <user_arn> \
--operations "CreateGrant" "Decrypt"

# To monitor grants
aws kms list-grants --key-id <key-id>

Note

Grant može da dodeli dozvole samo iz ovoga: https://docs.aws.amazon.com/kms/latest/developerguide/grants.html#terms-grant-operations

Tip

Učite i vežbajte AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Učite i vežbajte GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE) Učite i vežbajte Azure Hacking: HackTricks Training Azure Red Team Expert (AzRTE)

Podržite HackTricks