1 Service Accounts
1 Workloads
39 Bindings
10 Critical
1 High
3 Medium
25 Low
Description
A Helm chart for deploying the Elastic Cloud on Kubernetes (ECK) operator: the official Kubernetes operator for orchestrating Elasticsearch, Kibana, APM Server, Enterprise Search, and Beats.
Overview
| Identity | Namespace | Automount | Secrets | Permissions | Workloads | Risk |
|---|---|---|---|---|---|---|
elastic-operator | default | ❌ | — | 39 | 1 | Critical |
Numbers in the last two columns indicate how many bindings or workloads involve each ServiceAccount.
Identities
🤖 elastic-operator
Namespace: default | Automount: ❌
🔑 Permissions (39)
| Role | Resource | Verbs | Risk | Tags |
|---|---|---|---|---|
ClusterRole elastic-operator | core/configmaps | create · delete · get · list · patch · update · watch | Critical | ConfigMapAccess DataExposure InformationDisclosure PotentialPrivilegeEscalation Tampering |
ClusterRole elastic-operator | apps/daemonsets | create · delete · get · list · patch · update · watch | Critical | NodeAccess Persistence PrivilegeEscalation Tampering WorkloadLifecycle |
ClusterRole elastic-operator | apps/deployments | create · delete · get · list · patch · update · watch | Critical | Persistence PotentialPrivilegeEscalation PrivilegeEscalation Tampering WorkloadLifecycle |
ClusterRole elastic-operator | core/endpoints | create · delete · get · list · patch · update · watch | Critical | DenialOfService ManInTheMiddle NetworkManipulation Tampering TrafficRedirection |
ClusterRole elastic-operator | admissionregistration.k8s.io/mutatingwebhookconfigurations | create · delete · get · list · patch · update · watch | Critical | DenialOfService InformationDisclosure PrivilegeEscalation Reconnaissance Tampering (+2 more) |
ClusterRole elastic-operator | core/pods | create · delete · get · list · patch · update · watch | Critical | LateralMovement Persistence PotentialPrivilegeEscalation PrivilegeEscalation Tampering (+1 more) |
ClusterRole elastic-operator | core/secrets | create · delete · get · list · patch · update · watch | Critical | ClusterWideSecretAccess CredentialAccess DataExposure InformationDisclosure Persistence (+4 more) |
ClusterRole elastic-operator | core/services | create · delete · get · list · patch · update · watch | Critical | DenialOfService NetworkManipulation ServiceExposure Tampering |
ClusterRole elastic-operator | apps/statefulsets | create · delete · get · list · patch · update · watch | Critical | Persistence PotentialPrivilegeEscalation PrivilegeEscalation Tampering WorkloadLifecycle |
ClusterRole elastic-operator | admissionregistration.k8s.io/validatingwebhookconfigurations | create · delete · get · list · patch · update · watch | Critical | DenialOfService InformationDisclosure Reconnaissance Tampering WebhookManipulation (+1 more) |
ClusterRole elastic-operator | core/serviceaccounts | create · delete · get · list · patch · update · watch | High | IdentityManagement PotentialPrivilegeEscalation Tampering |
ClusterRole elastic-operator | core/events | create · delete · get · list · patch · update · watch | Medium | InformationDisclosure OperationalData Reconnaissance |
ClusterRole elastic-operator | policy/poddisruptionbudgets | create · delete · get · list · patch · update · watch | Medium | AvailabilityImpact DenialOfService Tampering |
ClusterRole elastic-operator | authorization.k8s.io/subjectaccessreviews | create | Medium | InformationDisclosure RBACQuery |
ClusterRole elastic-operator | agent.k8s.elastic.co/agents | create · delete · get · list · patch · update · watch | Low | |
ClusterRole elastic-operator | agent.k8s.elastic.co/agents/finalizers | create · delete · get · list · patch · update · watch | Low | |
ClusterRole elastic-operator | agent.k8s.elastic.co/agents/status | create · delete · get · list · patch · update · watch | Low | |
ClusterRole elastic-operator | apm.k8s.elastic.co/apmservers | create · delete · get · list · patch · update · watch | Low | |
ClusterRole elastic-operator | apm.k8s.elastic.co/apmservers/finalizers | create · delete · get · list · patch · update · watch | Low | |
ClusterRole elastic-operator | apm.k8s.elastic.co/apmservers/status | create · delete · get · list · patch · update · watch | Low | |
ClusterRole elastic-operator | beat.k8s.elastic.co/beats | create · delete · get · list · patch · update · watch | Low | |
ClusterRole elastic-operator | beat.k8s.elastic.co/beats/finalizers | create · delete · get · list · patch · update · watch | Low | |
ClusterRole elastic-operator | beat.k8s.elastic.co/beats/status | create · delete · get · list · patch · update · watch | Low | |
ClusterRole elastic-operator | maps.k8s.elastic.co/elasticmapsservers | create · delete · get · list · patch · update · watch | Low | |
ClusterRole elastic-operator | maps.k8s.elastic.co/elasticmapsservers/finalizers | create · delete · get · list · patch · update · watch | Low | |
ClusterRole elastic-operator | maps.k8s.elastic.co/elasticmapsservers/status | create · delete · get · list · patch · update · watch | Low | |
ClusterRole elastic-operator | elasticsearch.k8s.elastic.co/elasticsearches | create · delete · get · list · patch · update · watch | Low | |
ClusterRole elastic-operator | elasticsearch.k8s.elastic.co/elasticsearches/finalizers | create · delete · get · list · patch · update · watch | Low | |
ClusterRole elastic-operator | elasticsearch.k8s.elastic.co/elasticsearches/status | create · delete · get · list · patch · update · watch | Low | |
ClusterRole elastic-operator | elasticsearch.k8s.elastic.co/enterpriselicenses | create · delete · get · list · patch · update · watch | Low | |
ClusterRole elastic-operator | elasticsearch.k8s.elastic.co/enterpriselicenses/status | create · delete · get · list · patch · update · watch | Low | |
ClusterRole elastic-operator | enterprisesearch.k8s.elastic.co/enterprisesearches | create · delete · get · list · patch · update · watch | Low | |
ClusterRole elastic-operator | enterprisesearch.k8s.elastic.co/enterprisesearches/finalizers | create · delete · get · list · patch · update · watch | Low | |
ClusterRole elastic-operator | enterprisesearch.k8s.elastic.co/enterprisesearches/status | create · delete · get · list · patch · update · watch | Low | |
ClusterRole elastic-operator | kibana.k8s.elastic.co/kibanas | create · delete · get · list · patch · update · watch | Low | |
ClusterRole elastic-operator | kibana.k8s.elastic.co/kibanas/finalizers | create · delete · get · list · patch · update · watch | Low | |
ClusterRole elastic-operator | kibana.k8s.elastic.co/kibanas/status | create · delete · get · list · patch · update · watch | Low | |
ClusterRole elastic-operator | core/persistentvolumeclaims | create · delete · get · list · patch · update · watch | Low | |
ClusterRole elastic-operator | storage.k8s.io/storageclasses | get · list · watch | Low |
⚠️ Potential Abuse (32)
The following security risks were found based on the above permissions:
- Create pods cluster-wide
- Create pods in a namespace
- Update/Patch pods cluster-wide
- Update/Patch pods in a namespace
- Read secrets cluster-wide
- Read secrets in a namespace
- Modify secrets cluster-wide
- Modify secrets in a namespace
- Read ConfigMaps cluster-wide
- Read ConfigMaps in a namespace
- Modify ConfigMaps cluster-wide
- Modify ConfigMaps in a namespace
- Manage Deployments cluster-wide (potential for privileged pod execution)
- Manage Deployments in a namespace (potential for privileged pod execution)
- Manage DaemonSets cluster-wide (runs on all nodes, high impact)
- Manage DaemonSets in a namespace (runs on nodes, high impact)
- Manage StatefulSets cluster-wide
- Manage StatefulSets in a namespace
- Manage MutatingWebhookConfigurations
- Manage ValidatingWebhookConfigurations
- Create SubjectAccessReviews (check arbitrary permissions)
- Manage ServiceAccounts cluster-wide
- Manage ServiceAccounts in a namespace
- Read events cluster-wide
- Manage Endpoints or EndpointSlices cluster-wide
- Manage Endpoints or EndpointSlices in a namespace
- Manage Services cluster-wide
- Manage Services in a namespace
- Manage PodDisruptionBudgets cluster-wide
- List ValidatingWebhookConfigurations (Reconnaissance)
- List MutatingWebhookConfigurations (Reconnaissance)
📦 Workloads (1)
| Kind | Name | Container | Image |
|---|---|---|---|
| StatefulSet | elastic-operator | manager | docker.elastic.co/eck/eck-operator:1.8.0 |