| ID | Name |
|---|---|
| T1543.001 | Launch Agent |
| T1543.002 | Systemd Service |
| T1543.003 | Windows Service |
| T1543.004 | Launch Daemon |
| 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.[1] A user with access to the (rootful) docker command may also be able to escalate their privileges on the host.[2]
In Kubernetes environments, DaemonSets allow an adversary to persistently Deploy Containers on all nodes, including ones added later to the cluster.[3][4] Pods can also be deployed to specific nodes using the nodeSelector or nodeName fields in the pod spec.[5][6]
Note that containers can also be configured to run as Systemd Services.[7][8]
| 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. |
| ID | Name | Analytic ID | Analytic Description |
|---|---|---|---|
| DET0473 | Detect persistent or elevated container services via container runtime or cluster manipulation | AN1304 |
Correlate the creation or modification of containers using restart policies (e.g., 'always') or DaemonSets with elevated host access, service account misuse, or privileged container contexts. Watch for manipulation of systemd units involving containers or pod scheduling targeting specific nodes or namespaces. |