AWS - ECS Enum
Tip
AWS 해킹 학습 및 실습:
HackTricks Training AWS Red Team Expert (ARTE)
GCP 해킹 학습 및 실습:HackTricks Training GCP Red Team Expert (GRTE)
Az 해킹 학습 및 실습:HackTricks Training Azure Red Team Expert (AzRTE)
HackTricks 지원하기
- 구독 플랜을 확인하세요!
- 참여하세요 💬 Discord group 또는 telegram group에 참여하거나 Twitter 🐦 @hacktricks_live를 팔로우하세요.
- PR을 제출하여 해킹 트릭을 공유하세요: HackTricks 및 HackTricks Cloud github repos.
ECS
기본 정보
Amazon Elastic Container Services 또는 ECS는 클라우드에서 컨테이너화된 애플리케이션을 호스팅하는 플랫폼을 제공합니다. ECS에는 EC2 인스턴스 유형과 서버리스 옵션인 Fargate의 두 가지 배포 방법이 있습니다. 이 서비스는 클라우드에서 컨테이너를 실행하는 것을 매우 쉽고 간편하게 만듭니다.
ECS는 다음 세 가지 구성 요소를 사용하여 운영됩니다: 클러스터, 서비스, 및 작업 정의.
- 클러스터는 클라우드에서 실행 중인 컨테이너 그룹입니다. 앞서 언급했듯이, 컨테이너에는 EC2와 Fargate의 두 가지 시작 유형이 있습니다. AWS는 EC2 시작 유형을 고객이 “[그들의] 컨테이너화된 애플리케이션을 Amazon EC2 인스턴스 클러스터에서 [그들이] 관리할 수 있도록 하는 것”으로 정의합니다. Fargate는 유사하며 “[당신이] 백엔드 인프라를 프로비저닝하고 관리할 필요 없이 컨테이너화된 애플리케이션을 실행할 수 있도록 하는 것”으로 정의됩니다.
- 서비스는 클러스터 내에서 생성되며 작업을 실행하는 역할을 합니다. 서비스 정의 내에서 실행할 작업 수, 자동 확장, 용량 제공자(Fargate/EC2/External), 네트워킹 정보(예: VPC, 서브넷, 보안 그룹)를 정의합니다.
- 애플리케이션 유형은 2가지입니다:
- 서비스: 중단 및 재시작할 수 있는 장기 실행 컴퓨팅 작업을 처리하는 작업 그룹입니다. 예를 들어, 웹 애플리케이션입니다.
- 작업: 실행되고 종료되는 독립형 작업입니다. 예를 들어, 배치 작업입니다.
- 서비스 애플리케이션 중에는 2가지 유형의 서비스 스케줄러가 있습니다:
- REPLICA: 복제 스케줄링 전략은 클러스터 전반에 걸쳐 원하는 수의 작업을 배치하고 유지합니다. 어떤 이유로 작업이 종료되면, 동일한 또는 다른 노드에서 새로운 작업이 시작됩니다.
- DAEMON: 필요한 요구 사항이 있는 각 활성 컨테이너 인스턴스에 정확히 하나의 작업을 배포합니다. 원하는 작업 수, 작업 배치 전략 또는 서비스 자동 확장 정책을 지정할 필요가 없습니다.
- 작업 정의는 실행될 컨테이너를 정의하는 역할을 하며, 호스트와의 포트 매핑, 환경 변수, Docker entrypoint와 같은 다양한 매개변수를 구성합니다.
- 민감한 정보에 대한 env 변수를 확인하세요!
작업 정의의 민감한 데이터
작업 정의는 ECS에서 실행될 실제 컨테이너를 구성하는 역할을 합니다. 작업 정의는 컨테이너가 어떻게 실행될지를 정의하므로, 그 안에는 많은 정보가 포함될 수 있습니다.
Pacu는 ECS를 열거할 수 있습니다(리스트 클러스터, 리스트 컨테이너 인스턴스, 리스트 서비스, 리스트 작업 정의), 또한 작업 정의를 덤프할 수 있습니다.
열거
# Clusters info
aws ecs list-clusters
aws ecs describe-clusters --clusters <cluster>
# Container instances
## An Amazon ECS container instance is an Amazon EC2 instance that is running the Amazon ECS container agent and has been registered into an Amazon ECS cluster.
aws ecs list-container-instances --cluster <cluster>
aws ecs describe-container-instances --cluster <cluster> --container-instances <container_instance_arn>
# Services info
aws ecs list-services --cluster <cluster>
aws ecs describe-services --cluster <cluster> --services <services>
aws ecs describe-task-sets --cluster <cluster> --service <service>
# Task definitions
aws ecs list-task-definition-families
aws ecs list-task-definitions
aws ecs list-tasks --cluster <cluster>
aws ecs describe-tasks --cluster <cluster> --tasks <tasks>
## Look for env vars and secrets used from the task definition
aws ecs describe-task-definition --task-definition <TASK_NAME>:<VERSION>
인증되지 않은 접근
AWS - ECS Unauthenticated Enum
권한 상승
다음 페이지에서 ECS 권한을 악용하여 권한을 상승시키는 방법을 확인할 수 있습니다:
포스트 익스플로잇
지속성
Tip
AWS 해킹 학습 및 실습:
HackTricks Training AWS Red Team Expert (ARTE)
GCP 해킹 학습 및 실습:HackTricks Training GCP Red Team Expert (GRTE)
Az 해킹 학습 및 실습:HackTricks Training Azure Red Team Expert (AzRTE)
HackTricks 지원하기
- 구독 플랜을 확인하세요!
- 참여하세요 💬 Discord group 또는 telegram group에 참여하거나 Twitter 🐦 @hacktricks_live를 팔로우하세요.
- PR을 제출하여 해킹 트릭을 공유하세요: HackTricks 및 HackTricks Cloud github repos.
HackTricks Cloud

