Read the docs

Missing authorization in Apache Pulsar schema commands

Priority LOW 24CWE-862Published · Updated

Key facts

Attack vector
Network
Privileges required
Low
User interaction
None
Attack complexity
Low
Attack requirements
None
Impact type
Security bypass
Confidentiality · integrity · availability
Low · Low · Low
Fix status
Fixed

Attack profile from CVSS 4.0 · CNA. Fix status from CNA. Impact type from CWE-862.

Summary

Apache Pulsar from 2.2.0 before 4.0.14, from 4.1.0 through 4.1.3, and from 4.2.0 before 4.2.5 handles the GetSchema and GetOrCreateSchema binary protocol commands without checking topic authorization (CWE-862). An authenticated client with no permission on a topic can read its schema definition or register a new schema version in another namespace or tenant. A registered schema version can make legitimate producers and consumers fail with schema incompatibility errors.

Written with Claude Haiku 5.5 from the sources below · 2026-10-30

Description from the CNA

The Pulsar broker serves two schema commands on its binary protocol: GetSchema, which returns the schema registered for a topic, and GetOrCreateSchema, which registers a new schema version for an existing topic. The broker handled both commands after checking only that the client connection was authenticated. Unlike the broker's other topic commands, such as those for creating producers and consumers or for looking up topics, these two commands did not check whether the authenticated client was authorized for the target topic. The Pulsar REST API endpoints for schemas were not affected. An authenticated client without any permission on the target topic, namespace or tenant could use these commands to: - read the schema registered for a topic in another namespace or tenant, disclosing the schema definition such as record field names and types. Message payloads are not disclosed. - register a new schema version on an existing topic in another namespace or tenant. The topic's schema compatibility and schema auto-update policies still apply. The issue does not allow message data to be read or modified, but a registered schema version can cause legitimate producers and consumers of that topic to fail with schema incompatibility errors until the schema is corrected by an administrator. The standard Pulsar client performs an authorized topic lookup before it sends these commands, so the missing check could not be observed when testing with the standard client. A client that implements the binary protocol directly is not required to perform that lookup first. This issue is relevant only to deployments that have authentication and authorization enabled. The GetSchema command is affected from Apache Pulsar 2.2.0, and the GetOrCreateSchema command from Apache Pulsar 2.5.0. After the fix, the broker requires the lookup permission on the topic for GetSchema and the produce permission on the topic for GetOrCreateSchema. This impact analysis assumes that Pulsar has been configured with the default authorization provider. For custom authorization providers, the impact could be slightly different. This issue affects Apache Pulsar versions from 2.2.0 before 4.0.14, from 4.1.0 through 4.1.3, and from 4.2.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/.

Why it matters now

Exploitation None reported CISA SSVC · not in CISA KEV
EPSS 0.00408 35th percentileScored 2026-11-07
Fix Fixed Apache Pulsar (Apache Software Foundation): 4.0.14, 4.2.5

SSVC decision points

CISA ADP · SSVC 2.0.3

Exploitation
None
Automatable
No
Technical impact
Partial

The decision (Track, Attend, Act) also depends on your mission and well-being impact; see CISA's SSVC guide.

Affected products

VendorProductAffected versionsFixed inStatusSource
ApacheApache Pulsar2.2.0 to before 4.0.14; 4.1.0 – 4.1.3; 4.2.0 to before 4.2.54.0.14, 4.2.5Patch availableCNA
  • Apache Pulsar VendorApache Affected 2.2.0 to before 4.0.14; 4.1.0 – 4.1.3; 4.2.0 to before 4.2.5 Fixed in 4.0.14, 4.2.5 Patch available CNA

CPE names Threatist (inferred) · 1

Inferred from how NVD named this product before; not given by a source.

CPEVersionsRoleVendor
cpe:2.3:a:apache:pulsar:*:*:*:*:*:*:*:*——Apache
  • cpe:2.3:a:apache:pulsar:*:*:*:*:*:*:*:* Versions — — ·Apache

Remediation

Upgrade Apache Pulsar 4.0.x to 4.0.14 and 4.2.x to 4.2.5, the fixed versions listed for these lines. Users of 4.1.x should upgrade to at least 4.2.5.

Written with Claude Haiku 5.5 from the sources below · 2026-10-30

  • Fix · CNA Apache Pulsar (Apache Software Foundation) Fixed in 4.0.14, 4.2.5

Fixed in the same release

Records fixed by the same vendor advisory or release, as the CNA lists them.

  • Release ·

    Apache Pulsar 4.0.14, 4.2.5

    14 records Highest priority Priority MEDIUM 1 MEDIUM, 13 LOW

    Other records, highest priority first

    • TI-2026-78917 Apache Pulsar accepts unverified token roles on anonymous requestsPriority MEDIUM 41
    • TI-2026-78944 Apache Pulsar shadow topics lack authorization on source topicsPriority LOW 39
    • TI-2026-78948 Path traversal in Apache Pulsar exposes packages of other tenantsPriority LOW 36

Timeline

  1. 2026-10-21 Threatist record created from CVE-2026-105926
  2. 2026-10-21 Alias added: GHSA-7rwq-965f-3p4j
  3. 2026-10-30 CISA SSVC decision points changed

References

  • TI-2025-18529 Apache Tomcat: Potential RCE and/or information disclosure and/or information corruption with partial PUT KEVCVSS 3.1CRITICAL 10.0
  • TI-2024-30292 Apache OFBiz: Confused controller-view authorization logic (forced browsing) KEVCVSS 3.1CRITICAL 9.8
  • TI-2024-26062 Apache OFBiz: Unauthenticated endpoint could allow execution of screen rendering code KEVCVSS 3.1CRITICAL 9.8
  • TI-2024-21190 Apache OFBiz: Path traversal leading to RCE KEVCVSS 3.1CRITICAL 9.8
  • TI-2024-18186 Apache HugeGraph-Server: Command execution in gremlin KEVCVSS 3.1CRITICAL 9.8
  • TI-2023-25106 Deserialization of untrusted data in Apache ActiveMQ KEVCVSS 3.1CRITICAL 10.0
See all 4053 →

Sources