AWS - ECS Post Exploitation
ECS
For more information check:
Host IAM Roles
W ECS rola IAM może być przypisana do zadania działającego w kontenerze. Jeśli zadanie jest uruchamiane w instancji EC2, instancja EC2 będzie miała inną rolę IAM przypisaną do niej. Co oznacza, że jeśli uda ci się skomprymować instancję ECS, możesz potencjalnie uzyskać rolę IAM przypisaną do ECR i do instancji EC2. Aby uzyskać więcej informacji na temat tego, jak zdobyć te dane uwierzytelniające, sprawdź:
Zauważ, że jeśli instancja EC2 wymusza IMDSv2, zgodnie z dokumentacją, odpowiedź na żądanie PUT będzie miała limit skoków równy 1, co uniemożliwia dostęp do metadanych EC2 z kontenera wewnątrz instancji EC2.
Privesc to node to steal other containers creds & secrets
Ale co więcej, EC2 używa dockera do uruchamiania zadań ECs, więc jeśli możesz uciec do węzła lub uzyskać dostęp do gniazda dockera, możesz sprawdzić, które inne kontenery są uruchamiane, a nawet dostać się do nich i ukraść ich przypisane role IAM.
Making containers run in current host
Ponadto, rola instancji EC2 zazwyczaj będzie miała wystarczające uprawnienia do aktualizacji stanu instancji kontenera instancji EC2 używanych jako węzły w klastrze. Atakujący mógłby zmodyfikować stan instancji na DRAINING, wtedy ECS usunie wszystkie zadania z niej, a te uruchamiane jako REPLICA będą uruchamiane w innej instancji, potencjalnie wewnątrz instancji atakującego, aby mógł ukraść ich role IAM i potencjalnie wrażliwe informacje z wnętrza kontenera.
Ta sama technika może być wykonana przez wyrejestrowanie instancji EC2 z klastra. To jest potencjalnie mniej ukryte, ale wymusi uruchomienie zadań na innych instancjach:
Ostatnią techniką wymuszającą ponowne wykonanie zadań jest wskazanie ECS, że zadanie lub kontener został zatrzymany. Istnieją 3 potencjalne interfejsy API, aby to zrobić:
Kradnij wrażliwe informacje z kontenerów ECR
Instancja EC2 prawdopodobnie będzie miała również uprawnienie ecr:GetAuthorizationToken
, co pozwala na pobieranie obrazów (możesz szukać w nich wrażliwych informacji).
Last updated