AWS - ECR Enum

AWS - ECR Enum

Support HackTricks

ECR

Grundinformationen

Amazon Elastic Container Registry (Amazon ECR) ist ein verwalteter Container-Image-Registry-Dienst. Er wurde entwickelt, um eine Umgebung bereitzustellen, in der Kunden mit ihren Container-Images über bekannte Schnittstellen interagieren können. Insbesondere wird die Verwendung der Docker-CLI oder eines bevorzugten Clients unterstützt, was Aktivitäten wie das Pushen, Pullen und Verwalten von Container-Images ermöglicht.

ECR besteht aus 2 Arten von Objekten: Registries und Repositories.

Registries

Jedes AWS-Konto hat 2 Registries: Privat & Öffentlich.

  1. Private Registries:

  • Standardmäßig privat: Die in einer Amazon ECR-privaten Registry gespeicherten Container-Images sind nur für autorisierte Benutzer innerhalb Ihres AWS-Kontos oder für diejenigen zugänglich, denen Berechtigungen erteilt wurden.

  • Die URI eines privaten Repositories folgt dem Format <account_id>.dkr.ecr.<region>.amazonaws.com/<repo-name>

  • Zugriffskontrolle: Sie können den Zugriff auf Ihre privaten Container-Images mithilfe von IAM-Richtlinien steuern, und Sie können feingranulare Berechtigungen basierend auf Benutzern oder Rollen konfigurieren.

  • Integration mit AWS-Diensten: Amazon ECR-Private Registries können einfach mit anderen AWS-Diensten wie EKS, ECS... integriert werden.

  • Weitere Optionen für private Registries:

  • Die Spalte zur Tag-Unveränderlichkeit listet ihren Status auf; wenn die Tag-Unveränderlichkeit aktiviert ist, wird sie verhindern, dass Images mit bereits vorhandenen Tags überschrieben werden.

  • Die Spalte Verschlüsselungstyp listet die Verschlüsselungseigenschaften des Repositories auf; sie zeigt die Standardverschlüsselungstypen wie AES-256 oder hat KMS aktivierte Verschlüsselungen.

  • Die Spalte Pull through cache listet ihren Status auf; wenn der Pull through cache-Status aktiv ist, werden Repositories in einem externen öffentlichen Repository in Ihr privates Repository zwischengespeichert.

  • Spezifische IAM-Richtlinien können konfiguriert werden, um unterschiedliche Berechtigungen zu gewähren.

  • Die Scan-Konfiguration ermöglicht das Scannen nach Schwachstellen in den im Repository gespeicherten Images.

  1. Öffentliche Registries:

  • Öffentliche Zugänglichkeit: Container-Images, die in einer ECR-Öffentlichen Registry gespeichert sind, sind für jeden im Internet ohne Authentifizierung zugänglich.

  • Die URI eines öffentlichen Repositories ist wie public.ecr.aws/<random>/<name>. Obwohl der <random>-Teil vom Administrator in eine andere, leichter zu merkende Zeichenfolge geändert werden kann.

Repositories

Dies sind die Images, die in der privaten Registry oder in der öffentlichen gespeichert sind.

Beachten Sie, dass das ECR-Repository denselben Namen wie das Image haben muss, um ein Image in ein Repository hochzuladen.

Registry- & Repository-Richtlinien

Registries & Repositories haben auch Richtlinien, die verwendet werden können, um Berechtigungen an andere Prinzipale/Konten zu gewähren. Zum Beispiel können Sie im folgenden Repository-Richtlinienbild sehen, wie jeder Benutzer aus der gesamten Organisation auf das Image zugreifen kann:

Enumeration

# Get repos
aws ecr describe-repositories
aws ecr describe-registry

# Get image metadata
aws ecr list-images --repository-name <repo_name>
aws ecr describe-images --repository-name <repo_name>
aws ecr describe-image-replication-status --repository-name <repo_name> --image-id <image_id>
aws ecr describe-image-scan-findings --repository-name <repo_name> --image-id <image_id>
aws ecr describe-pull-through-cache-rules --repository-name <repo_name> --image-id <image_id>

# Get public repositories
aws ecr-public describe-repositories

# Get policies
aws ecr get-registry-policy
aws ecr get-repository-policy --repository-name <repo_name>

Unauthenticated Enum

AWS - ECR Unauthenticated Enum

Privesc

Auf der folgenden Seite können Sie überprüfen, wie Sie ECR-Berechtigungen missbrauchen können, um Privilegien zu eskalieren:

AWS - ECR Privesc

Post Exploitation

AWS - ECR Post Exploitation

Persistence

AWS - ECR Persistence

References

Support HackTricks

Last updated