AWS - STS Enum

Jifunze kuhusu udukuzi wa AWS kutoka sifuri hadi shujaa na htARTE (Mtaalam wa Timu Nyekundu ya AWS ya HackTricks)!

Njia nyingine za kusaidia HackTricks:

STS

Huduma ya Kitambulisho cha Usalama cha AWS (STS) imeundwa kimsingi kutoa vitambulisho vya muda, vya kikomo. Vitambulisho hivi vinaweza kuombwa kwa watumiaji wa Usimamizi wa Kitambulisho na Upatikanaji wa AWS (IAM) au kwa watumiaji waliothibitishwa (watumiaji waliounganishwa).

Kwa kuwa lengo la STS ni kutoa vitambulisho kwa udanganyifu wa kitambulisho, huduma hii ni ya thamani kubwa kwa kuinua mamlaka na kudumisha uthabiti, ingawa inaweza isiwe na chaguzi nyingi.

Udanganyifu wa Kudai Jukumu

Hatua ya AssumeRole inayotolewa na AWS STS ni muhimu kwani inaruhusu mwakilishi kupata vitambulisho kwa mwakilishi mwingine, kimsingi kujifanya kuwa wao. Kwa kuita, inajibu na kitambulisho cha ufikiaji cha ID, kitufe cha siri, na ishara ya kikao inayolingana na ARN iliyospecifikwa.

Kwa Wapenyezaji au wanachama wa Timu Nyekundu, mbinu hii ni muhimu kwa kuinua mamlaka (kama ilivyoelezwa hapa). Walakini, ni muhimu kutambua kuwa mbinu hii inaonekana wazi na inaweza isiweze kumshangaza mshambuliaji.

Mantiki ya Kudai Jukumu

Ili kudai jukumu katika akaunti ile ile ikiwa jukumu la kudai linaruhusu hasa ARN ya jukumu kama vile:

{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"AWS": "arn:aws:iam::<acc_id>:role/priv-role"
},
"Action": "sts:AssumeRole",
"Condition": {}
}
]
}

Jukumu priv-role katika kesi hii, hakuhitaji kuwekewa ruhusa maalum ili kuchukua jukumu hilo (ruhusa hiyo inatosha).

Hata hivyo, ikiwa jukumu linaruhusu akaunti kuchukua jukumu hilo, kama ifuatavyo:

{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"AWS": "arn:aws:iam::<acc_id>:root"
},
"Action": "sts:AssumeRole",
"Condition": {}
}
]
}

Jukumu linalojaribu kuchukua linahitaji ruhusa maalum ya sts:AssumeRole juu ya jukumu hilo ili kulichukua.

Ikiwa unajaribu kuchukua jukumu kutoka kwenye akaunti tofauti, jukumu lililochukuliwa lazima liiruhusu (ikiashiria ARN ya jukumu au akaunti ya nje), na jukumu linalojaribu kuchukua lingine LINATAKIWA kuwa na ruhusa ya kulichukua (katika kesi hii hata kama jukumu lililochukuliwa linabainisha ARN).

# Get basic info of the creds
aws sts get-caller-identity
aws sts get-access-key-info --access-key-id <AccessKeyID>

# Get CLI a session token with current creds
## Using CLI creds
## You cannot get session creds using session creds
aws sts get-session-token
## MFA
aws sts get-session-token --serial-number <arn_device> --token-code <otp_code>

Privesc

Kwenye ukurasa ufuatao unaweza kuangalia jinsi ya kutumia ruhusa za STS kwa kujiongezea mamlaka:

pageAWS - STS Privesc

Baada ya Kudukua

pageAWS - STS Post Exploitation

Uimara

pageAWS - IAM Persistence

Marejeo

Jifunze kuhusu udukuzi wa AWS kutoka sifuri hadi shujaa na htARTE (HackTricks AWS Red Team Expert)!

Njia nyingine za kusaidia HackTricks:

Last updated