AWS - ECS Post Exploitation

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

Njia nyingine za kusaidia HackTricks:

ECS

Kwa habari zaidi angalia:

pageAWS - ECS Enum

Majukumu ya IAM ya Mwenyeji

Katika ECS jukumu la IAM linaweza kupewa kazi inayotumika ndani ya kontena. Ikiwa kazi inaendeshwa ndani ya kifaa cha EC2, kifaa cha EC2 kitakuwa na jukumu lingine la IAM limeambatanishwa nalo. Hii inamaanisha kwamba ikiwa unafanikiwa kuhatarisha kifaa cha ECS unaweza kwa uwezekano kupata jukumu la IAM lililoambatanishwa na ECR na kifaa cha EC2. Kwa habari zaidi kuhusu jinsi ya kupata sifa hizo angalia:

Tafadhali kumbuka kwamba ikiwa kifaa cha EC2 kinazingatia IMDSv2, kulingana na nyaraka, jibu la ombi la PUT litakuwa na kikomo cha hatua ya 1, ikifanya iwe haiwezekani kupata metadata ya EC2 kutoka kwa kontena ndani ya kifaa cha EC2.

Privesc kwenda nodi kuiba sifa na siri za kontena nyingine

Zaidi ya hayo, EC2 hutumia docker kuendesha kazi za ECS, hivyo ikiwa unaweza kutoroka kwenye nodi au kupata soketi ya docker, unaweza kuangalia ni kontena zipi zingine zinaendeshwa, na hata kuingia ndani yao na kuiba majukumu yao ya IAM yaliyoambatanishwa.

Kufanya kontena ziendeshwe kwenye mwenyeji wa sasa

Zaidi ya hayo, jukumu la kifaa cha EC2 kawaida litakuwa na idhini za kutosha za kuboresha hali ya kifaa cha kontena ya vifaa vya EC2 vinavyotumiwa kama nodi ndani ya kikundi. Mshambuliaji anaweza kubadilisha hali ya kifaa kuwa DRAINING, kisha ECS itaondoa kazi zote kutoka kwake na zile zinazoendeshwa kama REPLICA zitaendeshwa kwenye kifaa tofauti, kwa uwezekano ndani ya kifaa cha mshambuliaji ili aweze kuiba majukumu yao ya IAM na habari nyeti inayowezekana kutoka ndani ya kontena.

aws ecs update-container-instances-state \
--cluster <cluster> --status DRAINING --container-instances <container-instance-id>

Teknolojia hiyo hiyo inaweza kufanywa kwa kufuta usajili wa kifaa cha EC2 kutoka kwenye kikundi. Hii inaweza kuwa sio ya siri sana lakini italazimisha kazi hizo zote zifanyike kwenye vifaa vingine:

aws ecs deregister-container-instance \
--cluster <cluster> --container-instance <container-instance-id> --force

Mbinu ya mwisho ya kulazimisha utekelezaji upya wa kazi ni kwa kueleza ECS kwamba kazi au chombo kilisitishwa. Kuna APIs 3 za uwezekano za kufanya hivi:

# Needs: ecs:SubmitTaskStateChange
aws ecs submit-task-state-change --cluster <value> \
--status STOPPED --reason "anything" --containers [...]

# Needs: ecs:SubmitContainerStateChange
aws ecs submit-container-state-change ...

# Needs: ecs:SubmitAttachmentStateChanges
aws ecs submit-attachment-state-changes ...

Iba taarifa nyeti kutoka kwenye mizigo ya ECR

Kifaa cha EC2 pia kitakuwa na ruhusa ya ecr:GetAuthorizationToken kuruhusu kupakua picha (unaweza kutafuta taarifa nyeti ndani yao).

Last updated