2 Service Accounts
1 Workloads
57 Bindings
5 Critical
16 High
7 Medium
29 Low
Description
Helm chart for istio control plane
Overview
| Identity | Namespace | Automount | Secrets | Permissions | Workloads | Risk |
|---|---|---|---|---|---|---|
istiod | istio-system | ❌ | — | 37 | 1 | Critical |
Numbers in the last two columns indicate how many bindings or workloads involve each ServiceAccount.
Identities
🤖 istiod
Namespace: istio-system | Automount: ❌
🔑 Permissions (37)
| Role | Resource | Verbs | Risk | Tags |
|---|---|---|---|---|
ClusterRole istiod-gateway-controller-default | apps/deployments | create · delete · get · list · patch · update · watch | Critical | Persistence PotentialPrivilegeEscalation PrivilegeEscalation Tampering WorkloadLifecycle |
ClusterRole istiod-clusterrole-default | core/secrets | get · list · watch | Critical | ClusterWideSecretAccess CredentialAccess DataExposure InformationDisclosure SecretAccess |
Role istiod | core/secrets | create · delete · get · list · update · watch | Critical | CredentialAccess DataExposure InformationDisclosure SecretAccess |
ClusterRole istiod-gateway-controller-default | core/services | create · delete · get · list · patch · update · watch | Critical | DenialOfService NetworkManipulation ServiceExposure Tampering |
ClusterRole istiod-clusterrole-default | authentication.istio.io/* | get · list · watch | High | ClusterWideAccess |
ClusterRole istiod-clusterrole-default | config.istio.io/* | get · list · watch | High | ClusterWideAccess |
ClusterRole istiod-clusterrole-default | extensions.istio.io/* | get · list · watch | High | ClusterWideAccess |
ClusterRole istiod-clusterrole-default | gateway.networking.k8s.io/* | get · list · patch · update · watch | High | ClusterWideAccess |
ClusterRole istiod-clusterrole-default | networking.istio.io/* | get · list · watch | High | ClusterWideAccess |
ClusterRole istiod-clusterrole-default | networking.x-k8s.io/* | get · list · patch · update · watch | High | ClusterWideAccess |
ClusterRole istiod-clusterrole-default | rbac.istio.io/* | get · list · watch | High | ClusterWideAccess |
ClusterRole istiod-clusterrole-default | security.istio.io/* | get · list · watch | High | ClusterWideAccess |
ClusterRole istiod-clusterrole-default | telemetry.istio.io/* | get · list · watch | High | ClusterWideAccess |
ClusterRole istiod-clusterrole-default | core/configmaps | create · get · list · update · watch | High | ConfigMapAccess DataExposure InformationDisclosure |
ClusterRole istiod-clusterrole-default | networking.k8s.io/ingresses/status | * | High | ClusterWideAccess |
ClusterRole istiod-clusterrole-default | certificates.k8s.io/certificatesigningrequests | create · delete · get · update · watch | Medium | CSRCreation PotentialPrivilegeEscalation Spoofing |
ClusterRole istiod-clusterrole-default | admissionregistration.k8s.io/mutatingwebhookconfigurations | get · list · patch · update · watch | Medium | InformationDisclosure Reconnaissance WebhookReconnaissance |
ClusterRole istiod-clusterrole-default | authorization.k8s.io/subjectaccessreviews | create | Medium | InformationDisclosure RBACQuery |
ClusterRole istiod-clusterrole-default | authentication.k8s.io/tokenreviews | create | Medium | CredentialAccess InformationDisclosure RBACQuery |
ClusterRole istiod-clusterrole-default | admissionregistration.k8s.io/validatingwebhookconfigurations | get · list · update · watch | Medium | InformationDisclosure Reconnaissance WebhookReconnaissance |
ClusterRole istiod-clusterrole-default | certificates.k8s.io/certificatesigningrequests/approval | create · delete · get · update · watch | Low | |
ClusterRole istiod-clusterrole-default | certificates.k8s.io/certificatesigningrequests/status | create · delete · get · update · watch | Low | |
ClusterRole istiod-clusterrole-default | apiextensions.k8s.io/customresourcedefinitions | get · list · watch | Low | |
ClusterRole istiod-clusterrole-default | core/endpoints | get · list · watch | Low | |
ClusterRole istiod-clusterrole-default | discovery.k8s.io/endpointslices | get · list · watch | Low | |
Role istiod | networking.istio.io/gateways | create | Low | |
ClusterRole istiod-clusterrole-default | networking.k8s.io/ingressclasses | get · list · watch | Low | |
ClusterRole istiod-clusterrole-default | networking.k8s.io/ingresses | get · list · watch | Low | |
ClusterRole istiod-clusterrole-default | core/namespaces | get · list · watch | Low | ClusterStructure InformationDisclosure Reconnaissance |
ClusterRole istiod-clusterrole-default | core/nodes | get · list · watch | Low | |
ClusterRole istiod-clusterrole-default | core/pods | get · list · watch | Low | |
ClusterRole istiod-clusterrole-default | multicluster.x-k8s.io/serviceexports | create · delete · get · list · watch | Low | |
ClusterRole istiod-clusterrole-default | multicluster.x-k8s.io/serviceimports | get · list · watch | Low | |
ClusterRole istiod-clusterrole-default | core/services | get · list · watch | Low | |
ClusterRole istiod-clusterrole-default | networking.istio.io/workloadentries | create · delete · get · list · patch · update · watch | Low | |
ClusterRole istiod-clusterrole-default | networking.istio.io/workloadentries/status | create · delete · get · list · patch · update · watch | Low | |
ClusterRole istiod-clusterrole-default | certificates.k8s.io/signers (restricted to: kubernetes.io/legacy-unknown) | approve | Low | ResourceNameRestricted |
⚠️ Potential Abuse (16)
The following security risks were found based on the above permissions:
- Read secrets cluster-wide
- Read secrets in a namespace
- Read ConfigMaps cluster-wide
- Read ConfigMaps in a namespace
- Manage Deployments cluster-wide (potential for privileged pod execution)
- Manage Deployments in a namespace (potential for privileged pod execution)
- Create TokenReviews (validate arbitrary tokens)
- Create SubjectAccessReviews (check arbitrary permissions)
- Create CertificateSigningRequests
- Manage Services cluster-wide
- Manage Services in a namespace
- List Namespaces (Cluster Reconnaissance)
- List ValidatingWebhookConfigurations (Reconnaissance)
- List MutatingWebhookConfigurations (Reconnaissance)
📦 Workloads (1)
| Kind | Name | Container | Image |
|---|---|---|---|
| Deployment | istiod | discovery | docker.io/istio/pilot:1.13.4 |