5 Service Accounts
5 Workloads
36 Bindings
8 Critical
2 Medium
26 Low
Description
Grafana Tempo in MicroService mode
Overview
| Identity | Namespace | Automount | Secrets | Permissions | Workloads | Risk |
|---|---|---|---|---|---|---|
grafana-agent-test-sa | default | ❌ | — | 7 | 0 | Critical |
tempo-distributed-grafana-agent-operator | default | ❌ | — | 25 | 1 | Critical |
tempo-distributed-rollout-operator | default | ❌ | — | 4 | 1 | Medium |
minio-sa | default | ❌ | — | 0 | 3 | — |
tempo-distributed | default | ❌ | — | 0 | 6 | — |
Numbers in the last two columns indicate how many bindings or workloads involve each ServiceAccount.
Identities
🤖 tempo-distributed-grafana-agent-operator
Namespace: default | Automount: ❌
🔑 Permissions (25)
| Role | Resource | Verbs | Risk | Tags |
|---|---|---|---|---|
ClusterRole tempo-distributed-grafana-agent-operator | core/configmaps | create · delete · get · list · patch · update · watch | Critical | ConfigMapAccess DataExposure InformationDisclosure PotentialPrivilegeEscalation Tampering |
ClusterRole tempo-distributed-grafana-agent-operator | apps/daemonsets | create · delete · get · list · patch · update · watch | Critical | NodeAccess Persistence PrivilegeEscalation Tampering WorkloadLifecycle |
ClusterRole tempo-distributed-grafana-agent-operator | apps/deployments | create · delete · get · list · patch · update · watch | Critical | Persistence PotentialPrivilegeEscalation PrivilegeEscalation Tampering WorkloadLifecycle |
ClusterRole tempo-distributed-grafana-agent-operator | core/endpoints | create · delete · get · list · patch · update · watch | Critical | DenialOfService ManInTheMiddle NetworkManipulation Tampering TrafficRedirection |
ClusterRole tempo-distributed-grafana-agent-operator | core/secrets | create · delete · get · list · patch · update · watch | Critical | ClusterWideSecretAccess CredentialAccess DataExposure InformationDisclosure Persistence (+4 more) |
ClusterRole tempo-distributed-grafana-agent-operator | core/services | create · delete · get · list · patch · update · watch | Critical | DenialOfService NetworkManipulation ServiceExposure Tampering |
ClusterRole tempo-distributed-grafana-agent-operator | apps/statefulsets | create · delete · get · list · patch · update · watch | Critical | Persistence PotentialPrivilegeEscalation PrivilegeEscalation Tampering WorkloadLifecycle |
ClusterRole tempo-distributed-grafana-agent-operator | monitoring.grafana.com/grafanaagents | get · list · watch | Low | |
ClusterRole tempo-distributed-grafana-agent-operator | monitoring.grafana.com/grafanaagents/finalizers | get · list · update · watch | Low | |
ClusterRole tempo-distributed-grafana-agent-operator | monitoring.grafana.com/integrations | get · list · watch | Low | |
ClusterRole tempo-distributed-grafana-agent-operator | monitoring.grafana.com/integrations/finalizers | get · list · update · watch | Low | |
ClusterRole tempo-distributed-grafana-agent-operator | monitoring.grafana.com/logsinstances | get · list · watch | Low | |
ClusterRole tempo-distributed-grafana-agent-operator | monitoring.grafana.com/logsinstances/finalizers | get · list · update · watch | Low | |
ClusterRole tempo-distributed-grafana-agent-operator | monitoring.grafana.com/metricsinstances | get · list · watch | Low | |
ClusterRole tempo-distributed-grafana-agent-operator | monitoring.grafana.com/metricsinstances/finalizers | get · list · update · watch | Low | |
ClusterRole tempo-distributed-grafana-agent-operator | core/namespaces | get · list · watch | Low | ClusterStructure InformationDisclosure Reconnaissance |
ClusterRole tempo-distributed-grafana-agent-operator | core/nodes | get · list · watch | Low | |
ClusterRole tempo-distributed-grafana-agent-operator | monitoring.grafana.com/podlogs | get · list · watch | Low | |
ClusterRole tempo-distributed-grafana-agent-operator | monitoring.grafana.com/podlogs/finalizers | get · list · update · watch | Low | |
ClusterRole tempo-distributed-grafana-agent-operator | monitoring.coreos.com/podmonitors | get · list · watch | Low | |
ClusterRole tempo-distributed-grafana-agent-operator | monitoring.coreos.com/podmonitors/finalizers | get · list · update · watch | Low | |
ClusterRole tempo-distributed-grafana-agent-operator | monitoring.coreos.com/probes | get · list · watch | Low | |
ClusterRole tempo-distributed-grafana-agent-operator | monitoring.coreos.com/probes/finalizers | get · list · update · watch | Low | |
ClusterRole tempo-distributed-grafana-agent-operator | monitoring.coreos.com/servicemonitors | get · list · watch | Low | |
ClusterRole tempo-distributed-grafana-agent-operator | monitoring.coreos.com/servicemonitors/finalizers | get · list · update · watch | Low |
⚠️ Potential Abuse (20)
The following security risks were found based on the above permissions:
- 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 Endpoints or EndpointSlices cluster-wide
- Manage Endpoints or EndpointSlices in a namespace
- Manage Services cluster-wide
- Manage Services in a namespace
- List Namespaces (Cluster Reconnaissance)
📦 Workloads (1)
| Kind | Name | Container | Image |
|---|---|---|---|
| Deployment | tempo-distributed-grafana-agent-operator | grafana-agent-operator | docker.io/grafana/agent-operator:v0.44.2 |
🤖 grafana-agent-test-sa
Namespace: default | Automount: ❌
🔑 Permissions (7)
| Role | Resource | Verbs | Risk | Tags |
|---|---|---|---|---|
ClusterRole grafana-agent-test-cr | core/nodes/proxy | get · list · watch | Critical | ClusterAdminAccess CodeExecution ElevationOfPrivilege LateralMovement (+1 more) |
ClusterRole grafana-agent-test-cr | core/endpoints | get · list · watch | Low | |
ClusterRole grafana-agent-test-cr | networking.k8s.io/ingresses | get · list · watch | Low | |
ClusterRole grafana-agent-test-cr | core/nodes | get · list · watch | Low | |
ClusterRole grafana-agent-test-cr | core/nodes/metrics | get · list · watch | Low | |
ClusterRole grafana-agent-test-cr | core/pods | get · list · watch | Low | |
ClusterRole grafana-agent-test-cr | core/services | get · list · watch | Low |
⚠️ Potential Abuse (2)
The following security risks were found based on the above permissions:
📦 Workloads (0)
No workloads use this ServiceAccount.
🤖 tempo-distributed-rollout-operator
Namespace: default | Automount: ❌
🔑 Permissions (4)
| Role | Resource | Verbs | Risk | Tags |
|---|---|---|---|---|
ClusterRole tempo-distributed-rollout-operator-webhook-clusterrole | admissionregistration.k8s.io/mutatingwebhookconfigurations | list · patch · watch | Medium | InformationDisclosure Reconnaissance WebhookReconnaissance |
ClusterRole tempo-distributed-rollout-operator-webhook-clusterrole | admissionregistration.k8s.io/validatingwebhookconfigurations | list · patch · watch | Medium | InformationDisclosure Reconnaissance WebhookReconnaissance |
Role tempo-distributed-rollout-operator-webhook-role | core/secrets | create | Low | |
Role tempo-distributed-rollout-operator-webhook-role | core/secrets (restricted to: certificate) | get · update | Low | ResourceNameRestricted |
⚠️ Potential Abuse (3)
The following security risks were found based on the above permissions:
- List ValidatingWebhookConfigurations (Reconnaissance)
- List MutatingWebhookConfigurations (Reconnaissance)
📦 Workloads (1)
| Kind | Name | Container | Image |
|---|---|---|---|
| Deployment | tempo-distributed-rollout-operator | rollout-operator | docker.io/grafana/rollout-operator:v0.33.0 |
🤖 minio-sa
Namespace: default | Automount: ❌
🔑 Permissions (0)
No explicit RBAC bindings.
📦 Workloads (3)
| Kind | Name | Container | Image |
|---|---|---|---|
| Deployment | tempo-distributed-minio | minio | quay.io/minio/minio:RELEASE.2022-10-24T18-35-07Z |
| Job | tempo-distributed-minio-make-bucket-job | minio-mc | quay.io/minio/mc:RELEASE.2022-10-20T23-26-33Z |
| Job | tempo-distributed-minio-make-user-job | minio-mc | quay.io/minio/mc:RELEASE.2022-10-20T23-26-33Z |
🤖 tempo-distributed
Namespace: default | Automount: ❌
🔑 Permissions (0)
No explicit RBAC bindings.
📦 Workloads (6)
| Kind | Name | Container | Image |
|---|---|---|---|
| Deployment | tempo-distributed-compactor | compactor | docker.io/grafana/tempo:2.9.0 |
| Deployment | tempo-distributed-distributor | distributor | docker.io/grafana/tempo:2.9.0 |
| Deployment | tempo-distributed-querier | querier | docker.io/grafana/tempo:2.9.0 |
| Deployment | tempo-distributed-query-frontend | query-frontend | docker.io/grafana/tempo:2.9.0 |
| StatefulSet | tempo-distributed-ingester | ingester | docker.io/grafana/tempo:2.9.0 |
| StatefulSet | tempo-distributed-memcached | memcached | docker.io/memcached:1.6.39-alpine |