CVE-2026-82558
Publiée le 2026-11-01 · Dernière modification le 2026-11-02
Les versions 6.0.0 à 8.19.0, 9.0.0 à 9.24.0 et 10.0.0 à 10.11.0 d'Apache Wicket sont concernées. Ce framework est utilisé pour créer des applications web Java, et la faille réside dans la manière dont son support natif de WebSocket gère les messages entrants des clients. Plus précisément, le système ne vérifie pas si un utilisateur est autorisé à interagir avec un composant caché ou restreint avant de déclencher le rappel (callback) WebSocket de ce composant.
Un attaquant disposant d'un compte utilisateur valide et d'un accès réseau peut envoyer des messages à des composants restreints sur sa propre page, contournant ainsi la stratégie d'autorisation prévue. Cela lui permet de déclencher des actions ou de consulter des données que l'administrateur souhaitait masquer pour son rôle spécifique, ce qui impacte la confidentialité et l'intégrité. Comme l'exploitation ne concerne que la session et la page de l'utilisateur lui-même, elle ne peut pas être utilisée pour accéder aux données d'autres utilisateurs ou pour compromettre la disponibilité du serveur.
DÉTAIL DU VECTEUR CVSS
RÉFÉRENCES
Description officielle du NVD (en anglais)
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.