Goal Reached Thanks to every supporter — we hit 100%!

Goal: 1000 CNY · Raised: 1359 CNY

100%

CVE-2026-105926— Apache Pulsar: Missing Topic Authorization on Binary Protocol GetSchema and GetOrCreateSchema Commands

Quick assessment

Affected
Apache Software Foundation Apache Pulsar
Exploitation
No confirmed in-the-wild exploitation; assess based on exposure
Recommended action
Check the vendor advisory and references for a fixed version. If immediate upgrade is impossible, restrict exposure and increase monitoring.

Pulsar 代理在其二进制协议中提供两个 Schema 相关命令: (返回已注册的 Topic Schema)和 (为现有 Topic 注册新的 Schema 版本)。代理在处理这两个命令时,仅验证了客户端连接是否已通过身份认证,而未像其他 Topic 相关命令(例如创建生产者/消费者或查询 Topic)那样,进一步检查已认证客户端是否具备对目标 Topic 的操作授权。该问题不影响 Pulsar 的 REST API Schema 端点。 一个已通过身份认证但在目标 Topic、命名空间或租户上没有任何权限的客

CVSS 5.3 · Medium

Affected Version Matrix 3

VendorProduct Version RangeStatus
Apache Software Foundation Apache Pulsar 2.2.0< 4.0.14 affected
4.1.0≤ 4.1.3 affected
4.2.0< 4.2.5 affected
Get alerts for future matching vulnerabilities Log in to subscribe

I. Basic Information for CVE-2026-105926

Vulnerability Information

Have questions about the vulnerability? See if Shenlong's analysis helps!
View Shenlong Deep Dive ↗

Although we use advanced large model technology, its output may still contain inaccurate or outdated information.Shenlong tries to ensure data accuracy, but please verify and judge based on the actual situation.

Vulnerability Title
Apache Pulsar: Missing Topic Authorization on Binary Protocol GetSchema and GetOrCreateSchema Commands
Source: CVE Program / CVE List V5
Vulnerability Description
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/.
Source: CVE Program / CVE List V5
CVSS Information
CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:L/VI:L/VA:L/SC:N/SI:N/SA:L
Source: CVE Program / CVE List V5
Vulnerability Type
授权机制缺失
Source: CVE Program / CVE List V5

Affected Products

Vendor Product Affected Versions CPE Subscribe
Apache Software Foundation Apache Pulsar 2.2.0 ~ 4.0.14 -

II. Public POCs for CVE-2026-105926

# POC Description Source Link Shenlong Link
AI-Generated POC Premium

No public POC found.

Login to generate AI POC

III. Intelligence Information for CVE-2026-105926

请登录查看更多情报信息。

Vendor Advisories for CVE-2026-105926 (1)

Mailing List Discussions for CVE-2026-105926 (1)

Same Patch Batch · Apache Software Foundation · 2026-10-21 · 69 CVEs total

CVE-2026-105944 10.0 CRITICAL Apache Pulsar Manager: Missing authentication and authorization and disclosure of the Puls
CVE-2026-111812 10.0 CRITICAL Apache Traffic Server: origin_server_auth signs client-controlled AWS headers under the pr
CVE-2026-111813 10.0 CRITICAL Apache Traffic Server: magick plugin passes client query strings unfiltered to ImageMagick
CVE-2026-111815 10.0 CRITICAL Apache Traffic Server: TLS session ticket resumption bypasses per-SNI verify_client STRICT
CVE-2026-111814 10.0 CRITICAL Apache Traffic Server: Default server_session_sharing.match omits MASK_CERT, allowing pool
CVE-2026-111809 9.3 CRITICAL Apache Traffic Server: HEAD requests carrying Content-Length or Transfer-Encoding enable r
CVE-2026-111816 9.3 CRITICAL Apache Traffic Server: A malformed 302 response bypasses parse-error rejection through the
CVE-2026-105869 9.2 CRITICAL Apache Pulsar: MultiRolesTokenAuthorizationProvider uses roles from unverified tokens for
CVE-2026-111811 9.0 CRITICAL Apache Traffic Server: tsmemcache plugin exposes the shared proxy cache over the network w
CVE-2025-31699 8.9 HIGH Apache Traffic Server: Origin connection still owed a request body is reused, enabling req
CVE-2026-105937 8.7 HIGH Apache Pulsar: Missing authorization of the shadow topic source allows cross-tenant messag
CVE-2025-55702 8.7 HIGH Apache Traffic Server: An unread Expect: 100-continue request body is framed as a new requ
CVE-2026-111808 8.6 HIGH Apache Traffic Server: HTTP/2 DATA frame padding underflow lets a client trigger backend w
CVE-2026-111805 8.6 HIGH Apache Traffic Server: HTTP/2 Content-Length truncation lets a client trigger backend work
CVE-2026-111804 8.2 HIGH Apache Traffic Server: wasm plugin has a use-after-free and forwards unvalidated guest met
CVE-2026-105945 7.7 HIGH Apache Pulsar: Improper Validation of Package Name Components Allows Cross-Tenant Package
CVE-2026-105942 7.7 HIGH Apache Pulsar: Original principal of proxied requests authorized with the proxy's authenti
CVE-2026-111810 7.5 HIGH Apache Traffic Server: Unthrottled per-header diagnostic logging enables a log-flood denia
CVE-2026-105934 7.2 HIGH Apache Pulsar: Missing tenant admin authorization check when truncating a partitioned topi
CVE-2026-105930 6.0 MEDIUM Apache Pulsar: Improper Authorization of Function, Source and Sink Package URLs Allows Cro

Showing top 20 of 69 CVEs. View all on vendor page &rarr; →

IV. Related Vulnerabilities

V. Comments for CVE-2026-105926

No comments yet


Leave a comment