AWS - ECS Privesc
ECS
Maelezo zaidi kuhusu ECS inapatikana:
pageAWS - ECS Enumiam:PassRole
, ecs:RegisterTaskDefinition
, ecs:RunTask
iam:PassRole
, ecs:RegisterTaskDefinition
, ecs:RunTask
Mshambuliaji anayetumia ruhusa za iam:PassRole
, ecs:RegisterTaskDefinition
, na ecs:RunTask
katika ECS anaweza kuunda ufafanuzi mpya wa kazi na kontena la hila linaloiba siri za metadata na kulitekeleza.
Athari Inayowezekana: Privesc moja kwa moja kwa jukumu tofauti la ECS.
iam:PassRole
, ecs:RegisterTaskDefinition
, ecs:StartTask
iam:PassRole
, ecs:RegisterTaskDefinition
, ecs:StartTask
Kama ilivyokuwa kwenye mfano uliopita, mshambuliaji anayetumia iam:PassRole
, ecs:RegisterTaskDefinition
, ecs:StartTask
ruhusa katika ECS inaweza kuunda ufafanuzi mpya wa kazi na kontena la madhara ambalo huchukua siri za metadata na kulitekeleza.
Hata hivyo, katika kesi hii, lazima kuwe na kipande cha kontena ili kutekeleza ufafanuzi wa kazi wenye nia mbaya.
Athari Inayowezekana: Privesc moja kwa moja kwa jukumu lolote la ECS.
iam:PassRole
, ecs:RegisterTaskDefinition
, (ecs:UpdateService|ecs:CreateService)
iam:PassRole
, ecs:RegisterTaskDefinition
, (ecs:UpdateService|ecs:CreateService)
Kama ilivyokuwa kwenye mfano uliopita, mshambuliaji anayetumia iam:PassRole
, ecs:RegisterTaskDefinition
, ecs:UpdateService
au ecs:CreateService
ruhusa katika ECS inaweza kuunda ufafanuzi mpya wa kazi na kontena la madhara ambalo linajiweka kama mwenyeji wa siri na kulitekeleza kwa kuunda huduma mpya na angalau kazi 1 ikiendesha.
Matokeo Yanayowezekana: Privesc moja kwa moja kwa jukumu lolote la ECS.
ecs:RegisterTaskDefinition
, (ecs:RunTask|ecs:StartTask|ecs:UpdateService|ecs:CreateService)
ecs:RegisterTaskDefinition
, (ecs:RunTask|ecs:StartTask|ecs:UpdateService|ecs:CreateService)
Hali hii ni kama zile zilizotangulia lakini bila ruhusa ya iam:PassRole
.
Hii bado ni ya kuvutia kwa sababu ikiwa unaweza kuendesha kontena lolote, hata kama ni bila jukumu, unaweza kuendesha kontena lenye mamlaka ya kutoroka kwenye nodi na kuiba jukumu la IAM la EC2 na majukumu mengine ya kontena za ECS zinazoendeshwa kwenye nodi.
Unaweza hata kuwalazimisha majukumu mengine kuendeshwa ndani ya kifaa cha EC2 ulichohatarisha ili kuiba vitambulisho vyao (kama ilivyozungumziwa katika Sehemu ya Privesc kwa nodi).
Shambulio hili linawezekana tu ikiwa kikundi cha ECS kinatumia EC2 na sio Fargate.
ecs:ExecuteCommand
, ecs:DescribeTasks,
(ecs:RunTask|ecs:StartTask|ecs:UpdateService|ecs:CreateService)
ecs:ExecuteCommand
, ecs:DescribeTasks,
(ecs:RunTask|ecs:StartTask|ecs:UpdateService|ecs:CreateService)
Mshambuliaji mwenye ecs:ExecuteCommand
, ecs:DescribeTasks
anaweza kutekeleza amri ndani ya kontena linaloendeshwa na kuchukua jukumu la IAM lililounganishwa nalo (unahitaji ruhusa za maelezo kwa sababu ni muhimu kutekeleza aws ecs execute-command
).
Hata hivyo, ili kufanya hivyo, kifaa cha kontena kinahitaji kuwa kinaendesha mawakala wa ExecuteCommand (ambao kwa chaguo-msingi hawapo).
Kwa hivyo, mshambuliaji anaweza kujaribu:
Jaribu kutekeleza amri katika kila kontena linaloendeshwa
Ikiwa ana
ecs:RunTask
, endesha kazi naaws ecs run-task --enable-execute-command [...]
Ikiwa ana
ecs:StartTask
, endesha kazi naaws ecs start-task --enable-execute-command [...]
Ikiwa ana
ecs:CreateService
, unda huduma naaws ecs create-service --enable-execute-command [...]
Ikiwa ana
ecs:UpdateService
, sasisha huduma naaws ecs update-service --enable-execute-command [...]
Unaweza kupata mifano ya chaguo hizo katika sehemu za awali za ECS privesc.
Athari Inayowezekana: Privesc hadi kwa jukumu tofauti lililofungwa kwa vyombo.
ssm:StartSession
ssm:StartSession
Angalia katika ukurasa wa privesc wa ssm jinsi unavyoweza kutumia idhini hii kwa privesc hadi ECS:
pageAWS - SSM Privesciam:PassRole
, ec2:RunInstances
iam:PassRole
, ec2:RunInstances
Angalia katika ukurasa wa privesc wa ec2 jinsi unavyoweza kutumia idhini hizi kwa privesc hadi ECS:
pageAWS - EC2 Privesc?ecs:RegisterContainerInstance
?ecs:RegisterContainerInstance
TODO: Je, ni posible kusajili kifaa kutoka kwa akaunti tofauti ya AWS ili kazi zitekelezwe chini ya mashine zinazodhibitiwa na mshambuliaji??
ecs:CreateTaskSet
, ecs:UpdateServicePrimaryTaskSet
, ecs:DescribeTaskSets
ecs:CreateTaskSet
, ecs:UpdateServicePrimaryTaskSet
, ecs:DescribeTaskSets
TODO: Jaribu hili
Mshambuliaji mwenye idhini ecs:CreateTaskSet
, ecs:UpdateServicePrimaryTaskSet
, na ecs:DescribeTaskSets
anaweza kuunda seti ya kazi yenye nia mbaya kwa huduma ya ECS iliyopo na kusasisha seti kuu ya kazi. Hii inaruhusu mshambuliaji kutekeleza nambari ya kupendelea ndani ya huduma.
Athari Inayowezekana: Tekeleza nambari za kiholela katika huduma iliyohusika, ikileta athari kwenye utendaji wake au kuvuja kwa data nyeti.
Marejeo
Last updated