Account Manipulation: Additional Container Cluster Roles T1098.006

Tactics: Persistence, Privilege Escalation

An adversary may add additional roles or permissions to an adversary-controlled user or service account to maintain persistent access to a container orchestration system. For example, an adversary with sufficient permissions may create a RoleBinding or a ClusterRoleBinding to bind a Role or ClusterRole to a Kubernetes account. Where attribute-based access control (ABAC) is in use, an adversary with sufficient permissions may modify a Kubernetes ABAC policy to give the target account additional permissions. This account modification may immediately follow Create Account or other malicious account activity. Adversaries may also modify existing Valid Accounts that they have compromised.

Authoring guide

These 24 rules share fields, values, and exclusions.

Fields filtered most (42 distinct)

These fields appear most often in rule filters.

FieldRulesHowSample values
data_stream.dataset22eq 22gcp.audit, kubernetes.audit_logs, aws.cloudtrail, azure.activitylogs
event.outcome15eq 15success
EventType14in 10, eq 4io.k8s.certificates.v1.certificatesigningrequests.create, io.k8s.authorization.rbac.v1.clusterrolebindings.create, associateaccesspolicy, io.k8s.apps.v1.daemonsets.create, io.k8s.apps.v1.daemonsets.patch
ServiceName11eq 11k8s.io
kubernetes.audit.annotations.authorization_k8s_io/decision9eq 9allow
kubernetes.audit.objectRef.resource9in 7, eq 2clusterroles, clusterrolebindings, rolebindings, cronjobs, daemonsets
kubernetes.audit.verb9in 7, eq 2create, patch, update, delete
client.user.email4is_not_null 3, starts_with 1system:serviceaccount:
Provider_Name3eq 3eks.amazonaws.com
kubernetes.audit.level3eq 3requestresponse
kubernetes.audit.stage3eq 3responsecomplete
src_ip3is_not_null 3
aws::userAgent2is_not_null 2
gcp.audit.request.rules.resources2in 2*, clusterrolebindings, clusterroles
gcp.audit.request.rules.verbs2in 2*, bind, create

Top indicator values (159 distinct)

These values appear most often in rule predicates.

FieldKindValueRules (here)Corpus reach
event.outcomeeq
success
15375
ServiceNameeq
k8s.io
1136
data_stream.dataseteq
gcp.audit
1169
data_stream.dataseteq
kubernetes.audit_logs
734
data_stream.dataseteq
aws.cloudtrail
3173
kubernetes.audit.annotations.authorization_k8s_io/decisioneq
allow
925
kubernetes.audit.verbin
patch
720
kubernetes.audit.verbin
update
619
kubernetes.audit.verbin
create
517
EventTypein
io.k8s.authorization.rbac.v1.clusterroles.patch
44
EventTypein
io.k8s.authorization.rbac.v1.clusterroles.update
44
EventTypein
io.k8s.authorization.rbac.v1.roles.patch
44
EventTypein
io.k8s.authorization.rbac.v1.roles.update
44
EventTypein
io.k8s.authorization.rbac.v1.clusterrolebindings.create
33
EventTypein
io.k8s.authorization.rbac.v1.clusterroles.create
33
EventTypein
io.k8s.authorization.rbac.v1.roles.create
33
EventTypein
io.k8s.apps.v1.daemonsets.create
22
EventTypein
io.k8s.apps.v1.daemonsets.patch
22
EventTypein
io.k8s.apps.v1.deployments.create
22
EventTypein
io.k8s.apps.v1.deployments.patch
22
EventTypein
io.k8s.authorization.rbac.v1.clusterrolebindings.patch
22
EventTypein
io.k8s.authorization.rbac.v1.clusterrolebindings.update
22
kubernetes.audit.objectRef.resourcein
clusterroles
46
kubernetes.audit.objectRef.resourcein
roles
46
kubernetes.audit.objectRef.resourcein
clusterrolebindings
35
kubernetes.audit.objectRef.resourcein
rolebindings
35
Provider_Nameeq
eks.amazonaws.com
34
kubernetes.audit.leveleq
requestresponse
33
kubernetes.audit.stageeq
responsecomplete
36
EventTypeeq
io.k8s.certificates.v1.certificatesigningrequests.create
22

Exclusions (48 distinct)

These values appear most often in top-level exclusions.

FieldKindValueRules excluding
client.user.emailin
system:gcp-controller-manager
3
client.user.emailin
system:kube-controller-manager
3
client.user.emailin
system:serviceaccount:kube-system:certificate-controller
3
client.user.emailin
system:apiserver
2
EventTypein
io.k8s.authorization.rbac.v1.clusterroles.patch
2
EventTypein
io.k8s.authorization.rbac.v1.roles.patch
2
client.user.emaileq
system:addon-manager
2
client.user.emailstarts_with
system:node:
2
kubernetes.audit.sourceIPsin
127.0.0.1
2
kubernetes.audit.sourceIPsin
::1
2
kubernetes.audit.user.groupseq
system:masters
2
src_ipin
127.0.0.1
2
src_ipin
::1
2
usereq
aksservice
2
userstarts_with
eks:
2

Rules under this technique

These vendors publish rules tagged with this technique.

Platform (all)
Domain (all)

Elastic 24 rules