T1059.013: 容器 CLI/API
摘要
攻击者可能滥用内置 CLI 工具或 API 调用在容器化环境中执行恶意命令。 Docker CLI 用于通过 `dockerd` 守护进程暴露的 API 端点管理容器。Docker CLI 的一些常见示例包括 Docker Desktop CLI 和 Docker Compose,但用户也可以使用 SDK 与 API 交互。例如,Docker SDK for Python 可用于在 Python 应用程序中运行命令。(Citation: Docker Desktop CLI) 攻击者可能利用 Docker CLI、API 或 SDK 来拉取或构建 Docker 镜像(即 [Ingress Tool Transfer](https://attack.mitre.org/techniques/T1105)、[Build Image on Host](https://attack.mitre.org/techniques/T1612))、运行容器(即 [Deploy Container](https://attack.mitre.org/techniques/T1610)),或在正在运行的容器内执行命令(即 [Container Administration Command](https://attack.mitre.org/techniques/T1609))。在某些情况下,威胁行为者可能拉取包含他们可利用的脚本或工具的合法镜像——例如,使用包含 `curl` 命令的镜像来下载载荷。(Citation: Intezer)攻击者还可能利用 `docker inspect` 和 `docker ps` 扫描云环境变量和其他正在运行的容器(即 [Container and Resource Discovery](https://attack.mitre.org/techniques/T1613))。(Citation: Cisco Talos Blog)(Citation: aquasec) Kubernetes 负责跨集群管理和编排容器。Kubernetes 控制平面管理集群状态,负责调度、通信和资源监控,可以直接通过 API 调用,也可以间接通过 `kubectl` 等 CLI 工具调用。它也可以在 Go 或 Python 等客户端库中访问。通过利用 API,管理员可以与集群内的资源交互,例如列出或创建 pod(pod 是一个或多个容器的组)。攻击者通过 `curl` 或其他工具调用 API 服务器,使他们能够获取有关环境的更多信息,例如 pods、deployments、daemonsets、namespaces 或 sysvars。(Citation: aquasec)他们也可能运行有关资源管理的各种命令。
来源归属
来源:MITRE ATT&CK · 置信度:high
平台
- Containers
战术
执行
参考来源
- https://attack.mitre.org/techniques/T1059/013
- https://docs.docker.com/desktop/features/desktop-cli/
- https://blog.talosintelligence.com/teamtnt-targeting-aws-alibaba-2/
- https://intezer.com/blog/watch-your-containers-doki-infecting-docker-servers-in-the-cloud/
- https://www.aquasec.com/blog/teamtnt-reemerged-with-new-aggressive-cloud-campaign/