CVE-2026-87718 PUBLISHED

Apache Wicket: CSP headers silently omitted for pages served through nested request handler delegates

Assigner: apache
Reserved: 09.09.2026 Published: 01.11.2026 Updated: 01.11.2026

Apache Wicket 10.10.0, 10.11.0 and 9.24.0 do not set the Content-Security-Policy headers on a page whose render request handler is wrapped in more than one IRequestHandlerDelegate. The framework unwraps only a single delegate level when deciding whether a request renders a page, so with a deeper chain, for example an application-provided delegating request mapper combined with CryptoMapper, the page is served without any CSP header even though CSP is enabled, and no error or warning is raised. The nonce-based protection Wicket applies to inline scripts and styles, together with any other CSP directives configured by the application, is thereby lost for those pages, exposing them to content injection the policy was meant to prevent. Applications on stock Wicket that do not wrap request handlers themselves are not affected. Versions before 10.10.0 and 9.24.0 handled nested delegates correctly. Users are recommended to upgrade to version 10.12.0 or 9.25.0, which fix the issue.

Metrics

CVSS Vector: CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:P/VC:N/VI:N/VA:N/SC:L/SI:L/SA:N/AU:N/RE:L
CVSS Score: 2.3

Product Status

Vendor Apache Software Foundation
Product Apache Wicket
Versions Default: unaffected
  • Version 9.24.0 is affected
  • affected from 10.10.0 to 10.11.0 (incl.)

Credits

  • Hans Schäfer finder

References

Problem Types

  • CWE-693 Protection Mechanism Failure CWE