AWS - ECS Enum
Last updated
Last updated
学习与实践 AWS 黑客技术:HackTricks 培训 AWS 红队专家 (ARTE) 学习与实践 GCP 黑客技术:HackTricks 培训 GCP 红队专家 (GRTE)
亚马逊 弹性容器服务(ECS)提供了一个 在云中托管容器化应用程序 的平台。ECS 有两种 部署 方法,EC2 实例类型和 无服务器 选项 Fargate。该服务 使在云中运行容器变得非常简单且无痛。
ECS 使用以下三个构建块进行操作:集群、服务和 任务定义。
集群是 在云中运行的容器组。如前所述,容器有两种启动类型,EC2 和 Fargate。AWS 将 EC2 启动类型定义为允许客户“在他们 管理 的 Amazon EC2 实例集群上运行他们的容器化应用程序”。Fargate 类似,被定义为“[允许] 您在 无需配置和管理 后端基础设施的情况下运行您的容器化应用程序”。
服务是在集群内创建的,负责 运行任务。在服务定义中,您定义要运行的任务数量、自动扩展、容量提供者(Fargate/EC2/External)、 网络 信息,如 VPC、子网和安全组。
有 2 种类型的应用程序:
服务:处理可以停止和重新启动的长期计算工作的任务组。例如,一个 web 应用程序。
任务:运行并终止的独立任务。例如,一个批处理作业。
在服务应用程序中,有 2 种服务调度器:
REPLICA:副本调度策略在您的集群中放置并 维护所需数量 的任务。如果由于某种原因任务关闭,则会在同一节点或不同节点上启动一个新任务。
DAEMON:在每个具有所需要求的活动容器实例上部署一个任务。无需指定所需的任务数量、任务放置策略或使用服务自动扩展策略。
任务定义 负责 定义将运行的容器 以及与容器配置的各种参数,如 与主机的端口映射、环境变量、Docker 入口点...
检查 环境变量以获取敏感信息!
任务定义负责 配置将在 ECS 中运行的实际容器。由于任务定义定义了容器的运行方式,因此可以在其中找到大量信息。
Pacu 可以枚举 ECS(list-clusters、list-container-instances、list-services、list-task-definitions),它还可以转储任务定义。
在以下页面中,您可以查看如何滥用ECS权限以提升权限:
AWS - ECS Privesc学习和实践AWS黑客技术:HackTricks培训AWS红队专家(ARTE) 学习和实践GCP黑客技术:HackTricks培训GCP红队专家(GRTE)