Container Administration Command
- ID
- T1609
- Tactics
- TA0002 Execution
- Platforms
- Containers
- Data sources
- Command Execution, Process Creation
- Source
- attack.mitre.org
- MITRE last modified
- 25 Oct 2025
Adversaries may abuse a container administration service to execute commands within a container. A container administration service such as the Docker daemon, the Kubernetes API server, or the kubelet may allow remote management of containers within an environment.[9][10][11]
In Docker, adversaries may specify an entrypoint during container deployment that executes a script or command, or they may use a command such as docker exec to execute a command within a running container.[12][13] In Kubernetes, if an adversary has sufficient permissions, they may gain remote execution in a container in the cluster via interaction with the Kubernetes API server, the kubelet, or by running a command such as kubectl exec.[14]
Detection
- DET0065 Detection Strategy for Container Administration Command Abuse
Data components: Command Execution, Process Creation
Mitigations (5)
- M1018 User Account Management
Enforce authentication and role-based access control on the container service to restrict users to the least privileges required.[1] When using Kubernetes, avoid giving users wildcard permissions or adding users to the
system:mastersgroup, and useRoleBindingsrather thanClusterRoleBindingsto limit user privileges to specific namespaces.[2]- M1026 Privileged Account Management
Ensure containers are not running as root by default. In Kubernetes environments, consider defining Pod Security Standards that prevent pods from running privileged containers and using the
NodeRestrictionadmission controller to deny the kublet access to nodes and pods outside of the node it belongs to.[1] [3]- M1035 Limit Access to Resource Over Network
Limit communications with the container service to managed and secured channels, such as local Unix sockets or remote access via SSH. Require secure port access to communicate with the APIs over TLS by disabling unauthenticated access to the Docker API and Kubernetes API Server.[4][5] In Kubernetes clusters deployed in cloud environments, use native cloud platform features to restrict the IP ranges that are permitted to access to API server.[6] Where possible, consider enabling just-in-time (JIT) access to the Kubernetes API to place additional restrictions on access.[7]
- M1038 Execution Prevention
Use read-only containers, read-only file systems, and minimal images when possible to prevent the execution of commands.[1] Where possible, also consider using application control and software restriction tools (such as those provided by SELinux) to restrict access to files, processes, and system calls in containers.[8]
- M1042 Disable or Remove Feature or Program
Remove unnecessary tools and software from containers.
Groups (1)
Software (8)
- S0599 Kinsing
- S0601 Hildegard
- S0623 Siloscape
- S0683 Peirates
- S9041 TeamPCP Cloud Stealer
- S9042 CanisterWorm
- S9043 Mini Shai-Hulud
- S9045 BACKUPOSINT v9.0 APEX PREDATOR
References
- Kubernetes Hardening Guide
- Kubernetes RBAC
- Kubernetes Admission Controllers
- Docker Daemon Socket Protect
- Kubernetes API Control Access
- Kubernetes Cloud Native Security
- Microsoft AKS Azure AD 2023
- Kubernetes Security Context
- Docker Daemon CLI
- Kubernetes API
- Kubernetes Kubelet
- Docker Entrypoint
- Docker Exec
- Kubectl Exec Get Shell
