GPU VulnDB

Database/Control plane, storage & DevOps

OpenCost: unauthenticated POST /serviceKey overwrites the GCP service-account key file

CVSS 8.8CVE-2026-44300Control plane, storage & DevOpscurated

Impact

The /serviceKey endpoint calls AddServiceKey without any mandatory authentication, so any client that can reach the OpenCost service can write arbitrary contents into the GCP service-account key.json that OpenCost loads. The attacker controls only the file body, not the path or mode, but that is enough to break cost collection outright or to make OpenCost authenticate with credentials the attacker chose, sending cluster cost queries to an account they control. A wildcard Access-Control-Allow-Origin on the response means a browser on an operator's workstation can be used to reach an OpenCost that is otherwise only cluster-internal. For GPU operators this is the chargeback pipeline: corrupted or attacker-steered cost data is what tenant billing and capacity planning are built on.

Who can reach it

Any network client that can reach the OpenCost HTTP service - in a default install, any pod in the cluster; more if an Ingress exposes it. No authentication needed, and the permissive CORS header allows browser-assisted requests from an operator's machine.

What to do

Upgrade OpenCost to 1.121.0 and restart the deployment; no node disruption. In the meantime, keep the OpenCost service off any Ingress, restrict it with a NetworkPolicy to the scrapers that need it, and if the endpoint may already have been hit, replace the mounted GCP service-account key and check recent cost-export activity on that account.

References

Related entries

All Control plane, storage & DevOps entries

This entry is curated: imported from vendor advisories with machine assistance, not yet individually verified. Confirm against your vendor's advisory before acting, and report anything wrong.