Description
Apache Pulsar allows an administrator to require end-to-end message encryption for all topics in a namespace by setting the encryption_required namespace policy. When this policy is set, the broker rejects messages that are published without encryption.

When the broker loads a persistent topic, it reads the namespace policies and the topic-level policies as part of topic initialization. If a step of this initialization fails, for example because of an error reading from the metadata store, a failure loading the topic-level policies or a failure in a later initialization step, the broker logs a warning, disables the encryption requirement for that topic, and completes the topic load as if it had succeeded. The topic is then served with encryption_required not enforced, even though the namespace policy requires it. Topic-level policies that could not be loaded are also not applied.

While the encryption requirement is not enforced, an authenticated client with permission to produce to the affected topic can publish messages that are not encrypted, and the broker accepts and stores them. This applies both to producers created after the topic was loaded and to producers that were already connected. Messages published with encryption remain encrypted; the issue does not expose the content of encrypted messages or the encryption keys.

The condition is not limited to transient failures. If the cause of the initialization failure persists, the encryption requirement is disabled again each time the topic is loaded, for example after a topic unload, a namespace bundle reassignment or a broker restart. An update to the namespace policies restores enforcement on a loaded topic, but only until the topic is loaded again. Enforcement is reliably restored only once the underlying cause of the failure has been resolved and the topic has been loaded again. The broker logs a warning when the encryption requirement is disabled, but the topic load is reported as successful and the state of the encryption requirement is not shown in the topic statistics.

In fixed versions, a failure during topic initialization causes the topic load to fail so that it can be retried, instead of loading the topic with the encryption requirement disabled.

This issue affects Apache Pulsar versions from 1.22.0-incubating before 4.0.14 and from 4.1.0 before 4.2.5.

- 4.0.x version users should upgrade to at least 4.0.14.
- 4.1.x and 4.2.x version users should upgrade to at least 4.2.5.

Users operating versions prior to those listed above should upgrade to the aforementioned patched versions or newer versions.

The currently supported Apache Pulsar release lines are 4.0.x and 5.0.x. The supported versions schedule is available at https://pulsar.apache.org/contribute/release-policy/.

Users who rely on encryption_required and cannot upgrade immediately can monitor the broker logs for warnings containing "isEncryptionRequired will be set to false" (the exact wording of the message differs between releases), resolve the underlying cause of the failure, and then reload the affected topic and confirm that the warning does not recur.
Published: 2026-10-21
Score: 2.3 Low
EPSS: < 1% Very Low
KEV: No
Impact: Loss of mandatory encryption requirement for messages in affected Pulsar topics.
Action: Immediate Patch
AI Analysis

Impact

Apache Pulsar contains a flaw where a failure during topic initialization causes the broker to disable the enforcement of the namespace policy that requires end‑to‑end message encryption. The broker logs a warning, removes the encryption requirement for that topic, and continues to load the topic as if the error had not occurred. The result is that any authenticated producer with publish permission can send unencrypted messages that the broker accepts and stores, while encrypted messages remain protected. Because the broker does not expose the content of encrypted messages or the encryption keys, the vulnerability does not leak data that was already encrypted, but it does undermine the confidentiality guarantees that administrators intended by enabling the policy.

Affected Systems

The issue affects Apache Pulsar releases starting with 1.22.0‑incubating up to, but not including, 4.0.14 and 4.1.0 up to, but not including, 4.2.5. Users on the 4.0.x series should upgrade to 4.0.14 or later, and users on the 4.1.x and 4.2.x series should upgrade to at least 4.2.5. The current supported release lines are 4.0.x and 5.0.x, which contain the fix.

Risk and Exploitability

The CVSS score is 2.3, indicating low overall severity. No EPSS data is available, and the vulnerability is not listed in CISA’s KEV catalog. The attack requires an authenticated client with produce permissions on a topic that has had an initialization failure that disabled encryption enforcement. The attacker would then publish unencrypted data. While the flaw does not expose encrypted content, it allows planned or opportunistic disclosure of data that otherwise would be protected, presenting a modest confidentiality risk. Because the problem is tied to initialization failures or metadata store errors, exploitation is likely limited to specific operational conditions and is not trivially immediate.

Generated by OpenCVE AI on October 22, 2026 at 01:55 UTC.

Remediation

No solution or workaround provided in the CVE record.

OpenCVE Recommended Actions

  • Upgrade to Apache Pulsar 4.0.14 or later 4.2.5 (or newer).
  • If an upgrade is not yet possible, monitor broker logs for warnings stating that “isEncryptionRequired will be set to false”.
  • Resolve the underlying cause that triggers the initialization failure, reload the affected topic, and verify that the warning no longer appears.

Generated by OpenCVE AI on October 22, 2026 at 01:55 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Fri, 23 Oct 2026 23:30:00 +0000

Type Values Removed Values Added
Metrics ssvc

{'options': {'Automatable': 'no', 'Exploitation': 'none', 'Technical Impact': 'partial'}, 'version': '2.0.3'}


Thu, 22 Oct 2026 15:30:00 +0000

Type Values Removed Values Added
First Time appeared Apache
Apache pulsar
Vendors & Products Apache
Apache pulsar

Wed, 21 Oct 2026 18:30:00 +0000

Type Values Removed Values Added
Description Apache Pulsar allows an administrator to require end-to-end message encryption for all topics in a namespace by setting the encryption_required namespace policy. When this policy is set, the broker rejects messages that are published without encryption. When the broker loads a persistent topic, it reads the namespace policies and the topic-level policies as part of topic initialization. If a step of this initialization fails, for example because of an error reading from the metadata store, a failure loading the topic-level policies or a failure in a later initialization step, the broker logs a warning, disables the encryption requirement for that topic, and completes the topic load as if it had succeeded. The topic is then served with encryption_required not enforced, even though the namespace policy requires it. Topic-level policies that could not be loaded are also not applied. While the encryption requirement is not enforced, an authenticated client with permission to produce to the affected topic can publish messages that are not encrypted, and the broker accepts and stores them. This applies both to producers created after the topic was loaded and to producers that were already connected. Messages published with encryption remain encrypted; the issue does not expose the content of encrypted messages or the encryption keys. The condition is not limited to transient failures. If the cause of the initialization failure persists, the encryption requirement is disabled again each time the topic is loaded, for example after a topic unload, a namespace bundle reassignment or a broker restart. An update to the namespace policies restores enforcement on a loaded topic, but only until the topic is loaded again. Enforcement is reliably restored only once the underlying cause of the failure has been resolved and the topic has been loaded again. The broker logs a warning when the encryption requirement is disabled, but the topic load is reported as successful and the state of the encryption requirement is not shown in the topic statistics. In fixed versions, a failure during topic initialization causes the topic load to fail so that it can be retried, instead of loading the topic with the encryption requirement disabled. This issue affects Apache Pulsar versions from 1.22.0-incubating before 4.0.14 and from 4.1.0 before 4.2.5. - 4.0.x version users should upgrade to at least 4.0.14. - 4.1.x and 4.2.x version users should upgrade to at least 4.2.5. Users operating versions prior to those listed above should upgrade to the aforementioned patched versions or newer versions. The currently supported Apache Pulsar release lines are 4.0.x and 5.0.x. The supported versions schedule is available at https://pulsar.apache.org/contribute/release-policy/. Users who rely on encryption_required and cannot upgrade immediately can monitor the broker logs for warnings containing "isEncryptionRequired will be set to false" (the exact wording of the message differs between releases), resolve the underlying cause of the failure, and then reload the affected topic and confirm that the warning does not recur.
Title Apache Pulsar: Namespace encryption requirement not enforced after a failure during topic initialization
Weaknesses CWE-636
References
Metrics cvssV4_0

{'score': 2.3, 'vector': 'CVSS:4.0/AV:N/AC:L/AT:P/PR:L/UI:N/VC:N/VI:L/VA:N/SC:N/SI:N/SA:N'}


cve-icon MITRE

Status: PUBLISHED

Assigner: apache

Published:

Updated: 2026-10-23T22:00:14.676Z

Reserved: 2026-10-06T06:41:07.880Z

Link: CVE-2026-105933

cve-icon Vulnrichment

Updated: 2026-10-23T20:42:28.632Z

cve-icon NVD

Status : Awaiting Analysis

Published: 2026-10-21T19:16:55.890

Modified: 2026-10-23T23:17:36.670

Link: CVE-2026-105933

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-10-22T14:57:08Z

Weaknesses
  • CWE-636

    Not Failing Securely ('Failing Open')