---
id: CVE-2026-82558
title: >-
  Apache Wicket: WebSocketBehavior delivers client messages to a component the
  client may not invoke
summary: >-
  Missing authorization in Apache Wicket.


  org.apache.wicket.protocol.ws.api.WebSocketBehavior, through which Wicket's
  native WebSocket support hands a message sent by the client to the
  application, calls its onMessage() callbacks without …
severity: low
cvss: 2.3
cvssVector: 'CVSS:4.0/AV:N/AC:L/AT:P/PR:L/UI:N/VC:L/VI:L/VA:N/SC:N/SI:N/SA:N'
cvssSource: cna
cwe:
  - CWE-862
vendor: Apache Software Foundation
product: 'org.apache.wicket:wicket-native-websocket-core'
affected:
  - 'org.apache.wicket:wicket-native-websocket-core >= 8.0.0 <= 8.19.0'
  - 'org.apache.wicket:wicket-native-websocket-core >= 9.0.0 <= 9.24.0'
  - 'org.apache.wicket:wicket-native-websocket-core >= 10.0.0 <= 10.11.0'
published: '2026-11-01'
updated: '2026-11-01'
sourceUpdated: '2026-11-01T21:58:28.610Z'
source: CVEORG
sourceUrl: 'https://www.cve.org/CVERecord?id=CVE-2026-82558'
references:
  - url: 'https://lists.apache.org/thread.html/o1ojfn53742ztd13m93336t3kdjw2tq9'
tags:
  - cve.org
epss: 0.00293
epssPercentile: 0.22084
ingestedAt: '2026-11-05T19:30:42.608Z'
---

## Overview

Missing authorization in Apache Wicket.

org.apache.wicket.protocol.ws.api.WebSocketBehavior, through which Wicket's native WebSocket support hands a message sent by the client to the application, calls its onMessage() callbacks without checking whether the client may invoke the component the behavior is attached to. Wicket opens a single WebSocket connection per page, and a message received on it is delivered to every WebSocketBehavior of that page. For an Ajax behavior Wicket makes this check before invoking it, through Behavior#canCallListener(Component), which refuses a component that is not visible or not enabled, including one for which the IAuthorizationStrategy denies the RENDER or ENABLE action. A WebSocketBehavior attached to such a component, or to a child of one, therefore receives the client's text and binary messages, together with a WebSocketRequestHandler that writes back to that client, where an Ajax behavior on the same component would be refused.

An application is affected where it attaches a WebSocketBehavior that overrides onMessage() to a component that it hides, disables, or restricts through its IAuthorizationStrategy, for example with MetaDataRoleAuthorizationStrategy or the AuthorizeAction annotation. The client needs a session of their own and a page of their own that contains such a component: messages are delivered only to pages in the page store of the client's own session, so this gives no access to another user's session, page or connection. Messages pushed by the server are not affected.

This issue affects Apache Wicket: from 8.0.0 through 8.19.0, from 9.0.0 through 9.24.0, from 10.0.0 through 10.11.0. Older, unsupported releases from 6.0.0 onwards are also affected. Users are recommended to upgrade to version 8.20.0, 9.25.0 or 10.12.0, which fix the issue.

## Affected

- `org.apache.wicket:wicket-native-websocket-core >= 8.0.0 <= 8.19.0`
- `org.apache.wicket:wicket-native-websocket-core >= 9.0.0 <= 9.24.0`
- `org.apache.wicket:wicket-native-websocket-core >= 10.0.0 <= 10.11.0`

## Remediation

Refer to the linked advisories for vendor-supplied fixes and affected version ranges.
