3 Service Accounts
3 Workloads
108 Bindings
11 Critical
5 High
2 Medium
90 Low
Description
StackGres Operator
Overview
| Identity | Namespace | Automount | Secrets | Permissions | Workloads | Risk |
|---|---|---|---|---|---|---|
stackgres-operator | default | ❌ | — | 103 | 1 | Critical |
stackgres-restapi | default | ❌ | — | 5 | 2 | Critical |
stackgres-operator-init | default | ❌ | — | 0 | 7 | — |
Numbers in the last two columns indicate how many bindings or workloads involve each ServiceAccount.
Identities
🤖 stackgres-operator
Namespace: default | Automount: ❌
🔑 Permissions (103)
| Role | Resource | Verbs | Risk | Tags |
|---|---|---|---|---|
ClusterRole stackgres-operator | core/configmaps | create · delete · get · list · patch · update · watch | Critical | ConfigMapAccess DataExposure InformationDisclosure PotentialPrivilegeEscalation Tampering |
ClusterRole stackgres-operator | batch/cronjobs | create · delete · get · list · patch · update · watch | Critical | Persistence PotentialPrivilegeEscalation PrivilegeEscalation Tampering WorkloadLifecycle |
ClusterRole stackgres-operator | core/endpoints | create · delete · get · list · patch · update · watch | Critical | DenialOfService ManInTheMiddle NetworkManipulation Tampering TrafficRedirection |
ClusterRole stackgres-operator | batch/jobs | create · delete · get · list · patch · update · watch | Critical | PotentialPrivilegeEscalation PrivilegeEscalation Tampering WorkloadLifecycle |
ClusterRole stackgres-operator | core/pods | create · delete · get · list · patch · update · watch | Critical | LateralMovement Persistence PotentialPrivilegeEscalation PrivilegeEscalation Tampering (+1 more) |
ClusterRole stackgres-operator | core/pods/exec | create · delete · get · list · patch · update · watch | Critical | ClusterWidePodExec CodeExecution ElevationOfPrivilege LateralMovement PodExec (+1 more) |
ClusterRole stackgres-operator | core/secrets | create · delete · get · list · patch · update · watch | Critical | ClusterWideSecretAccess CredentialAccess DataExposure InformationDisclosure Persistence (+4 more) |
ClusterRole stackgres-operator | core/services | create · delete · get · list · patch · update · watch | Critical | DenialOfService NetworkManipulation ServiceExposure Tampering |
ClusterRole stackgres-operator | apps/statefulsets | create · delete · get · list · patch · update · watch | Critical | Persistence PotentialPrivilegeEscalation PrivilegeEscalation Tampering WorkloadLifecycle |
ClusterRole stackgres-operator | core/namespaces | create · delete · get · list · patch · update · watch | High | ClusterStructure DenialOfService InformationDisclosure NamespaceLifecycle Reconnaissance (+1 more) |
ClusterRole stackgres-operator | core/pods/log | create · delete · get · list · patch · update · watch | High | ClusterWideLogAccess DataExposure InformationDisclosure LogAccess |
ClusterRole stackgres-operator | rbac.authorization.k8s.io/rolebindings | create · delete · get · list · patch · update · watch | High | BindingToPrivilegedRole InformationDisclosure PrivilegeEscalation RBACManipulation RBACQuery (+1 more) |
ClusterRole stackgres-operator | rbac.authorization.k8s.io/roles | create · delete · get · list · patch · update · watch | High | InformationDisclosure PrivilegeEscalation RBACManipulation RBACQuery Reconnaissance |
ClusterRole stackgres-operator | core/serviceaccounts | create · delete · get · list · patch · update · watch | High | IdentityManagement PotentialPrivilegeEscalation Tampering |
ClusterRole stackgres-operator | core/events | create · delete · get · list · patch · update · watch | Medium | InformationDisclosure OperationalData Reconnaissance |
ClusterRole stackgres-operator | apps/configmaps | create · delete · get · list · patch · update · watch | Low | |
ClusterRole stackgres-operator | batch/configmaps | create · delete · get · list · patch · update · watch | Low | |
ClusterRole stackgres-operator | extensions/configmaps | create · delete · get · list · patch · update · watch | Low | |
ClusterRole stackgres-operator | rbac.authorization.k8s.io/configmaps | create · delete · get · list · patch · update · watch | Low | |
ClusterRole stackgres-operator | apps/cronjobs | create · delete · get · list · patch · update · watch | Low | |
ClusterRole stackgres-operator | core/cronjobs | create · delete · get · list · patch · update · watch | Low | |
ClusterRole stackgres-operator | extensions/cronjobs | create · delete · get · list · patch · update · watch | Low | |
ClusterRole stackgres-operator | rbac.authorization.k8s.io/cronjobs | create · delete · get · list · patch · update · watch | Low | |
ClusterRole stackgres-operator | apiextensions.k8s.io/customresourcedefinitions | get · list · watch | Low | |
ClusterRole stackgres-operator | apps/endpoints | create · delete · get · list · patch · update · watch | Low | |
ClusterRole stackgres-operator | batch/endpoints | create · delete · get · list · patch · update · watch | Low | |
ClusterRole stackgres-operator | extensions/endpoints | create · delete · get · list · patch · update · watch | Low | |
ClusterRole stackgres-operator | rbac.authorization.k8s.io/endpoints | create · delete · get · list · patch · update · watch | Low | |
ClusterRole stackgres-operator | apps/endpoints/restricted | create · delete · get · list · patch · update · watch | Low | |
ClusterRole stackgres-operator | batch/endpoints/restricted | create · delete · get · list · patch · update · watch | Low | |
ClusterRole stackgres-operator | core/endpoints/restricted | create · delete · get · list · patch · update · watch | Low | |
ClusterRole stackgres-operator | extensions/endpoints/restricted | create · delete · get · list · patch · update · watch | Low | |
ClusterRole stackgres-operator | rbac.authorization.k8s.io/endpoints/restricted | create · delete · get · list · patch · update · watch | Low | |
ClusterRole stackgres-operator | apps/events | create · delete · get · list · patch · update · watch | Low | |
ClusterRole stackgres-operator | batch/events | create · delete · get · list · patch · update · watch | Low | |
ClusterRole stackgres-operator | extensions/events | create · delete · get · list · patch · update · watch | Low | |
ClusterRole stackgres-operator | rbac.authorization.k8s.io/events | create · delete · get · list · patch · update · watch | Low | |
ClusterRole stackgres-operator | apps/jobs | create · delete · get · list · patch · update · watch | Low | |
ClusterRole stackgres-operator | core/jobs | create · delete · get · list · patch · update · watch | Low | |
ClusterRole stackgres-operator | extensions/jobs | create · delete · get · list · patch · update · watch | Low | |
ClusterRole stackgres-operator | rbac.authorization.k8s.io/jobs | create · delete · get · list · patch · update · watch | Low | |
ClusterRole stackgres-operator | apps/namespaces | create · delete · get · list · patch · update · watch | Low | |
ClusterRole stackgres-operator | batch/namespaces | create · delete · get · list · patch · update · watch | Low | |
ClusterRole stackgres-operator | extensions/namespaces | create · delete · get · list · patch · update · watch | Low | |
ClusterRole stackgres-operator | rbac.authorization.k8s.io/namespaces | create · delete · get · list · patch · update · watch | Low | |
ClusterRole stackgres-operator | apps/persistentvolumeclaims | create · delete · get · list · patch · update · watch | Low | |
ClusterRole stackgres-operator | batch/persistentvolumeclaims | create · delete · get · list · patch · update · watch | Low | |
ClusterRole stackgres-operator | core/persistentvolumeclaims | create · delete · get · list · patch · update · watch | Low | |
ClusterRole stackgres-operator | extensions/persistentvolumeclaims | create · delete · get · list · patch · update · watch | Low | |
ClusterRole stackgres-operator | rbac.authorization.k8s.io/persistentvolumeclaims | create · delete · get · list · patch · update · watch | Low | |
ClusterRole stackgres-operator | monitoring.coreos.com/podmonitors | create · delete · get · list · patch · update | Low | |
ClusterRole stackgres-operator | apps/pods | create · delete · get · list · patch · update · watch | Low | |
ClusterRole stackgres-operator | batch/pods | create · delete · get · list · patch · update · watch | Low | |
ClusterRole stackgres-operator | extensions/pods | create · delete · get · list · patch · update · watch | Low | |
ClusterRole stackgres-operator | rbac.authorization.k8s.io/pods | create · delete · get · list · patch · update · watch | Low | |
ClusterRole stackgres-operator | apps/pods/exec | create · delete · get · list · patch · update · watch | Low | |
ClusterRole stackgres-operator | batch/pods/exec | create · delete · get · list · patch · update · watch | Low | |
ClusterRole stackgres-operator | extensions/pods/exec | create · delete · get · list · patch · update · watch | Low | |
ClusterRole stackgres-operator | rbac.authorization.k8s.io/pods/exec | create · delete · get · list · patch · update · watch | Low | |
ClusterRole stackgres-operator | apps/pods/log | create · delete · get · list · patch · update · watch | Low | |
ClusterRole stackgres-operator | batch/pods/log | create · delete · get · list · patch · update · watch | Low | |
ClusterRole stackgres-operator | extensions/pods/log | create · delete · get · list · patch · update · watch | Low | |
ClusterRole stackgres-operator | rbac.authorization.k8s.io/pods/log | create · delete · get · list · patch · update · watch | Low | |
ClusterRole stackgres-operator | monitoring.coreos.com/prometheus | get · list | Low | |
ClusterRole stackgres-operator | monitoring.coreos.com/prometheuses | get · list | Low | |
ClusterRole stackgres-operator | apps/rolebindings | create · delete · get · list · patch · update · watch | Low | |
ClusterRole stackgres-operator | batch/rolebindings | create · delete · get · list · patch · update · watch | Low | |
ClusterRole stackgres-operator | core/rolebindings | create · delete · get · list · patch · update · watch | Low | |
ClusterRole stackgres-operator | extensions/rolebindings | create · delete · get · list · patch · update · watch | Low | |
ClusterRole stackgres-operator | apps/roles | create · delete · get · list · patch · update · watch | Low | |
ClusterRole stackgres-operator | batch/roles | create · delete · get · list · patch · update · watch | Low | |
ClusterRole stackgres-operator | core/roles | create · delete · get · list · patch · update · watch | Low | |
ClusterRole stackgres-operator | extensions/roles | create · delete · get · list · patch · update · watch | Low | |
ClusterRole stackgres-operator | apps/secrets | create · delete · get · list · patch · update · watch | Low | |
ClusterRole stackgres-operator | batch/secrets | create · delete · get · list · patch · update · watch | Low | |
ClusterRole stackgres-operator | extensions/secrets | create · delete · get · list · patch · update · watch | Low | |
ClusterRole stackgres-operator | rbac.authorization.k8s.io/secrets | create · delete · get · list · patch · update · watch | Low | |
ClusterRole stackgres-operator | apps/serviceaccounts | create · delete · get · list · patch · update · watch | Low | |
ClusterRole stackgres-operator | batch/serviceaccounts | create · delete · get · list · patch · update · watch | Low | |
ClusterRole stackgres-operator | extensions/serviceaccounts | create · delete · get · list · patch · update · watch | Low | |
ClusterRole stackgres-operator | rbac.authorization.k8s.io/serviceaccounts | create · delete · get · list · patch · update · watch | Low | |
ClusterRole stackgres-operator | monitoring.coreos.com/servicemonitors | create · delete · get · list · patch · update | Low | |
ClusterRole stackgres-operator | apps/services | create · delete · get · list · patch · update · watch | Low | |
ClusterRole stackgres-operator | batch/services | create · delete · get · list · patch · update · watch | Low | |
ClusterRole stackgres-operator | extensions/services | create · delete · get · list · patch · update · watch | Low | |
ClusterRole stackgres-operator | rbac.authorization.k8s.io/services | create · delete · get · list · patch · update · watch | Low | |
ClusterRole stackgres-operator | stackgres.io/sgbackupconfigs | create · delete · get · list · patch · update · watch | Low | |
ClusterRole stackgres-operator | stackgres.io/sgbackups | create · delete · get · list · patch · update · watch | Low | |
ClusterRole stackgres-operator | stackgres.io/sgclusters | create · delete · get · list · patch · update · watch | Low | |
ClusterRole stackgres-operator | stackgres.io/sgclusters/status | update | Low | |
ClusterRole stackgres-operator | stackgres.io/sgdbops | create · delete · get · list · patch · update · watch | Low | |
ClusterRole stackgres-operator | stackgres.io/sgdistributedlogs | create · delete · get · list · patch · update · watch | Low | |
ClusterRole stackgres-operator | stackgres.io/sgdistributedlogs/status | update | Low | |
ClusterRole stackgres-operator | stackgres.io/sginstanceprofiles | create · delete · get · list · patch · update · watch | Low | |
ClusterRole stackgres-operator | stackgres.io/sgobjectstorages | create · delete · get · list · patch · update · watch | Low | |
ClusterRole stackgres-operator | stackgres.io/sgpgconfigs | create · delete · get · list · patch · update · watch | Low | |
ClusterRole stackgres-operator | stackgres.io/sgpoolconfigs | create · delete · get · list · patch · update · watch | Low | |
ClusterRole stackgres-operator | stackgres.io/sgscripts | create · delete · get · list · patch · update · watch | Low | |
ClusterRole stackgres-operator | batch/statefulsets | create · delete · get · list · patch · update · watch | Low | |
ClusterRole stackgres-operator | core/statefulsets | create · delete · get · list · patch · update · watch | Low | |
ClusterRole stackgres-operator | extensions/statefulsets | create · delete · get · list · patch · update · watch | Low | |
ClusterRole stackgres-operator | rbac.authorization.k8s.io/statefulsets | create · delete · get · list · patch · update · watch | Low | |
ClusterRole stackgres-operator | storage.k8s.io/storageclasses | get · list | Low |
⚠️ Potential Abuse (35)
The following security risks were found based on the above permissions:
- Cluster-wide pod exec
- Namespaced pod exec
- 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 pod logs cluster-wide
- Read pod logs in a namespace
- Read ConfigMaps cluster-wide
- Read ConfigMaps in a namespace
- Modify ConfigMaps cluster-wide
- Modify ConfigMaps in a namespace
- Delete namespaces
- Manage Roles in a namespace (create, update, patch, delete)
- Manage RoleBindings in a namespace (create, update, patch, delete)
- Manage StatefulSets cluster-wide
- Manage StatefulSets in a namespace
- Manage CronJobs cluster-wide (scheduled privileged execution, persistence)
- Manage CronJobs in a namespace (scheduled privileged execution, persistence)
- Manage Jobs cluster-wide (one-off privileged execution)
- Manage Jobs in a namespace (one-off privileged execution)
- 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
- Read RBAC configuration cluster-wide
- List Namespaces (Cluster Reconnaissance)
📦 Workloads (1)
| Kind | Name | Container | Image |
|---|---|---|---|
| Deployment | stackgres-operator | stackgres-operator | stackgres/operator:1.4.1 |
🤖 stackgres-restapi
Namespace: default | Automount: ❌
🔑 Permissions (5)
| Role | Resource | Verbs | Risk | Tags |
|---|---|---|---|---|
ClusterRole stackgres-restapi | core/groups | impersonate | Critical | ClusterAdminAccess Impersonation PrivilegeEscalation Spoofing |
ClusterRole stackgres-restapi | core/users | impersonate | Critical | ClusterAdminAccess Impersonation PrivilegeEscalation Spoofing |
ClusterRole stackgres-restapi | authorization.k8s.io/subjectaccessreviews | create | Medium | InformationDisclosure RBACQuery |
ClusterRole stackgres-restapi | core/secrets | get · list | Low | |
ClusterRole stackgres-restapi | core/serviceaccount | impersonate | Low |
⚠️ Potential Abuse (3)
The following security risks were found based on the above permissions:
- Create SubjectAccessReviews (check arbitrary permissions)
- Impersonate users, groups, or service accounts (cluster-wide)
📦 Workloads (2)
| Kind | Name | Container | Image |
|---|---|---|---|
| Deployment | stackgres-restapi | stackgres-adminui | stackgres/admin-ui:1.4.1 |
| Deployment | stackgres-restapi | stackgres-restapi | stackgres/restapi:1.4.1 |
🤖 stackgres-operator-init
Namespace: default | Automount: ❌
🔑 Permissions (0)
No explicit RBAC bindings.
📦 Workloads (7)
| Kind | Name | Container | Image |
|---|---|---|---|
| Job | stackgres-operator-conversion-webhooks | conversion-webhooks | stackgres/jobs:1.4.1 |
| Job | stackgres-operator-cr-updater | stackgres-jobs | stackgres/jobs:1.4.1 |
| Job | stackgres-operator-crd-upgrade | crd-upgrade | stackgres/jobs:1.4.1 |
| Job | stackgres-operator-create-certificate | create-certificate | ongres/kubectl:v1.19.16-build-6.19 |
| Job | stackgres-operator-set-crd-version | set-crd-version | ongres/kubectl:v1.19.16-build-6.19 |
| Job | stackgres-operator-wait | stackgres-operator-wait | ongres/kubectl:v1.19.16-build-6.19 |
| Job | stackgres-operator-wait-webhooks | stackgres-operator-wait-webhooks | ongres/kubectl:v1.19.16-build-6.19 |