A flaw was found in the Data Science Pipelines Operator (DSPO). The operator's ClusterRole, which defines its permissions, includes extensive privileges beyond what is necessary for its operation. These excessive permissions, such as the ability to execute commands within pods and manage cluster-wide roles, could be exploited. If the DSPO pod were compromised, an attacker could leverage these privileges to gain full administrative control over the entire Kubernetes cluster.
To reduce the attack surface, administrators should review and modify the ClusterRole associated with the Data Science Pipelines Operator (DSPO) to remove unnecessary permissions. Specifically, restrict or remove permissions for pods/exec, kubeflow.org */*, seldondeployments *, and broad apiGroups:'*' for deployments and services. The operator's ClusterRole should be limited to only the required resources such as apps/deployments, services, secrets, configmaps, roles/rolebindings, routes, networkpolicies, servicemonitors, and DSPA/Argo CRDs. Applying these changes may require restarting the DSPO pod for the updated permissions to take effect and could impact operator functionality if not carefully validated.