---
id: "CVE-2026-123047"
kind: "vulnerability"
aliases: ["CVE-2026-123047"]
title: "Eclipse BaSyx Helm chart stores Keycloak user passwords in plaintext ConfigMap"
severity: "high"
cvss: 7.5
epss: null
exploited: false
status: "open"
category: "infrastructure"
products: []
ecosystems: []
tags: ["eclipse-basyx", "helm", "infrastructure", "keycloak", "kubernetes"]
not_affected_if: ["chart-3.12.2-or-later", "external-identity-provider", "keycloak-disabled"]
published_at: "2026-11-05T13:17:07+00:00"
first_seen_at: "2026-11-05T13:39:09+00:00"
updated_at: "2026-11-05T13:40:06+00:00"
sources: [{"source": "nvd", "url": "https://nvd.nist.gov/vuln/detail/CVE-2026-123047", "first_seen_at": "2026-11-05T13:39:09+00:00"}]
exploit_sources: []
---

# Eclipse BaSyx Helm chart stores Keycloak user passwords in plaintext ConfigMap

The basyx Helm chart writes Keycloak initialization users, including their passwords, into a Kubernetes ConfigMap instead of a Secret when the bundled Keycloak is enabled. A principal with ConfigMap read access in the release namespace, such as the built-in Kubernetes view role, can read the bootstrap admin password and log in as an admin with full BaSyx API rights.

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

## How to check

- Check whether the bundled Keycloak is enabled in the `basyx` release values (`keycloak.enabled` set to `true`).
- List ConfigMaps in the release namespace and look for `<release>-basyx-keycloak-init-config` containing a `users.json` key with `credentials` values.
- Check the chart version in use; affected versions are `3.0.0-rc.1` to `3.12.1`.

## Fix

- Upgrade the `basyx` chart to `3.12.2`, which moves initialization users to the Keycloak credentials Secret.
- Change the passwords of users that were created through the chart.

## Timeline

- 2026-11-05T13:39:09+00:00 nvd https://nvd.nist.gov/vuln/detail/CVE-2026-123047

## 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/basyx-3.12.2

## From the sources

In Eclipse BaSyx Helm Charts versions 3.0.0-rc.1 to 3.12.1 of the `basyx` chart, deployments with the bundled Keycloak enabled store the passwords of the Keycloak users that the chart creates in cleartext in a Kubernetes ConfigMap.



The template `keycloak-init-config.yaml` rendered `keycloak.initialization.users`, including each user's `credentials[].value`, as `users.json` into the persistent ConfigMap `<release>-basyx-keycloak-init-config`. By default this includes the bootstrap administrator user. That user holds the `admin` role and has a non-temporary password. 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 password from the ConfigMap and log in to Keycloak as this user. The resulting token carries the `admin` role, which the default BaSyx ABAC rules map to full rights on all BaSyx APIs in the deployment.



The bundled Keycloak is disabled by default. The issue is fixed in version 3.12.2 of the `basyx` chart, which moves the initialization users to the Keycloak credentials Secret. Affected users should upgrade and change the passwords of users that were created through the chart.

---

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