services / Google Cloud / ReplicaSets
Control Kubernetes ReplicaSet objects.
ReplicaSets allow maintaining a desired number of replicas and handle situations like pod failures or manual scaling. Typically, ReplicaSets are not created directly but are managed by a Deployment. When that is the case, the ReplicaSet cannot be updated directly using the `update` endpoints. ReplicaSets expose very similar risks to Deployments, the key privilege being the ability to specify a container image to run in the Pods managed by the ReplicaSet. If coupled with a cluster that can connect to the internet, this opens up arbitrary code execution by fetching and running potentially malicious images. Secondly, creating or updating the replica count of ReplicaSets drains the limited resources available to other Kubernetes workloads.
container.replicaSets.getStatus
Equivalent to `replicaSets.get`. Allows reading the `/apis/apps/v1/namespaces/{namespace}/replicasets/{name}/status` subresource which returns the same payload as the `/apis/apps/v1/namespaces/{namespace}/replicasets/{name}` resource.
Risks
Scope: MEDIUM
This privilege may grant access to confidential data, or its exploit can incur operational cost.
Contributed by P0 Security