T1543.005 Container Service
Adversaries may create or modify container or container cluster management tools that run as daemons, agents, or services on individual hosts. These include software for creating and managing individual containers, such as Docker and Podman, as well as container cluster node-level agents such as kubelet. By modifying these services, an adversary may be able to achieve persistence or escalate their privileges on a host.
For example, by using the docker run or podman run command with the restart=always directive, a container can be configured to persistently restart on the host.7 A user with access to the (rootful) docker command may also be able to escalate their privileges on the host.3
In Kubernetes environments, DaemonSets allow an adversary to persistently Deploy Containers on all nodes, including ones added later to the cluster.65 Pods can also be deployed to specific nodes using the nodeSelector or nodeName fields in the pod spec.41
Note that containers can also be configured to run as Systemd Services.82
| Item | Value |
|---|---|
| ID | T1543.005 |
| Sub-techniques | T1543.001, T1543.002, T1543.003, T1543.004, T1543.005 |
| Tactics | TA0003, TA0004 |
| Platforms | Containers |
| Version | 1.0 |
| Created | 15 February 2024 |
| Last Modified | 15 April 2025 |
Mitigations
| ID | Mitigation | Description |
|---|---|---|
| M1054 | Software Configuration | Where possible, consider enforcing the use of container services in rootless mode to limit the possibility of privilege escalation or malicious effects on the host running the container. |
| M1018 | User Account Management | Limit access to utilities such as docker to only users who have a legitimate need, especially if using docker in rootful mode. In Kubernetes environments, only grant privileges to deploy pods to users that require it. |
References
-
Abhisek Datta. (2020, March 18). Kubernetes Namespace Breakout using Insecure Host Path Volume — Part 1. Retrieved January 16, 2024. ↩
-
Docker. (n.d.). Start containers automatically. Retrieved February 15, 2024. ↩
-
Kubernetes. (n.d.). Assigning Pods to Nodes. Retrieved February 15, 2024. ↩
-
Kubernetes. (n.d.). DaemonSet. Retrieved February 15, 2024. ↩
-
Michael Katchinskiy, Assaf Morag. (2023, April 21). First-Ever Attack Leveraging Kubernetes RBAC to Backdoor Clusters. Retrieved July 14, 2023. ↩
-
Ofek Itach and Assaf Morag. (2023, July 13). TeamTNT Reemerged with New Aggressive Cloud Campaign. Retrieved February 15, 2024. ↩
-
Valentin Rothberg. (2022, March 16). How to run pods as systemd services with Podman. Retrieved February 15, 2024. ↩