---
id: "CVE-2026-123059"
kind: "vulnerability"
aliases: ["CVE-2026-123059"]
title: "Eclipse BaSyx Helm chart stores Keycloak client secret in ConfigMap"
severity: "high"
cvss: 7.5
epss: null
exploited: false
status: "open"
category: "other"
products: []
ecosystems: []
tags: ["eclipse-basyx", "helm", "keycloak", "kubernetes", "other"]
not_affected_if: ["basyx-chart", "default-config", "keycloak-disabled"]
published_at: "2026-11-05T14:17:04+00:00"
first_seen_at: "2026-11-05T14:39:18+00:00"
updated_at: "2026-11-05T14:40:25+00:00"
sources: [{"source": "nvd", "url": "https://nvd.nist.gov/vuln/detail/CVE-2026-123059", "first_seen_at": "2026-11-05T14:39:18+00:00"}]
exploit_sources: []
---

# Eclipse BaSyx Helm chart stores Keycloak client secret in ConfigMap

The aas-basyx-v2-full Helm chart 2.2.0 writes the bundled Keycloak client secret for basyx-technical-user into a ConfigMap in cleartext. Anyone who can read that ConfigMap can exchange the secret for an admin-role token with full rights on all BaSyx repositories and registries.

_Summary, check and fix written by a model from the sources; labelled as such._

## How to check

- Check whether the `aas-basyx-v2-full` chart at version `2.2.0` is deployed, and whether the bundled Keycloak (`keycloak.technicalUser.clientSecret`) is enabled. It is disabled by default.
- Inspect the ConfigMap `<keycloak.fullnameOverride>-realm` in the release namespace for a cleartext `basyx-technical-user` client secret.
- Review which principals hold the built-in `view` ClusterRole or otherwise can read ConfigMaps in that namespace.

## Fix

- No fixed release of the `aas-basyx-v2-full` chart exists.
- Migrate to the `basyx` chart, or deploy without the bundled Keycloak and rotate the `basyx-technical-user` client secret.

## Timeline

- 2026-11-05T14:39:18+00:00 nvd https://nvd.nist.gov/vuln/detail/CVE-2026-123059

## Documents

- [advisory] Vendor advisory: github.com https://github.com/eclipse-basyx/charts/security/advisories/GHSA-6438-759f-6f8v
- [fix] Release notes: github.com https://github.com/eclipse-basyx/charts/releases/tag/aas-basyx-v2-full-2.2.0

## From the sources

In Eclipse BaSyx Helm Charts version 2.2.0 of the `aas-basyx-v2-full` chart, deployments with the bundled Keycloak enabled store the client secret of the `basyx-technical-user` OAuth2 client in cleartext in a Kubernetes ConfigMap. This client uses the client-credentials grant and its service account holds the realm `admin` role.



The chart correctly writes `keycloak.technicalUser.clientSecret` to a Kubernetes Secret, but the template `basyx-keycloak-realm.yaml` also substitutes the same value into the Keycloak realm-import JSON, which is stored in the ConfigMap `<keycloak.fullnameOverride>-realm`. A principal that can read ConfigMaps but not Secrets in the release namespace, such as a holder of the built-in Kubernetes `view` ClusterRole, can read the client secret from the ConfigMap. They can then exchange it at the Keycloak token endpoint for an access token with the `admin` role. That token grants full create, read, update, delete and execute rights on all BaSyx repositories and registries in the deployment.



The bundled Keycloak is disabled by default. No fixed release of the `aas-basyx-v2-full` chart exists. Affected users should migrate to the `basyx` chart, or deploy without the bundled Keycloak and rotate the `basyx-technical-user` client secret.

---

_Free to read, with fair use of about 60 pages a minute. For higher limits or API access: sales@infrastack.ai_
