CVE-2026-83539
Received Received - Intake

XSS via Unrestricted URL Scheme in Apache Wicket

Vulnerability report for CVE-2026-83539, including description, CVSS score, EPSS score, affected products, exploitability, helpful resources, and attack-flow context.

Publication date: 2026-11-01

Last updated on: 2026-11-01

Assigner: Apache Software Foundation

Description

Improper neutralization of input during web page generation in Apache Wicket. org.apache.wicket.extensions.markup.html.basic.SmartLinkLabel and org.apache.wicket.extensions.markup.html.basic.SmartLinkMultiLineLabel display a text value and turn any URL they find in it into a hyperlink. Both escape the model value and then hand the escaped text to org.apache.wicket.extensions.markup.html.basic.DefaultLinkParser, which searches it for anything of the form scheme://rest and wraps each match in an anchor whose href is the matched text, copied in as it is. The pattern accepts any scheme, and there is no list of permitted schemes anywhere on the path. A text value naming a scheme that executes script therefore becomes an anchor that executes it, in the application's origin and in the reader's own session, when the reader clicks the link. Rendering the page is not enough on its own; the link has to be activated. Escaping does not prevent this and is not the issue: the characters the payload needs are all valid in a URL and are ones that org.apache.wicket.util.string.Strings#escapeMarkup() leaves alone, and the value ends up in a URL rather than in element text, which is a context that escaping model data does not make safe. An application is affected where it renders text it received through either of these two components. That is what they are for: they exist to linkify email addresses and web URLs found in the data an application is displaying, so untrusted input is the purpose of the feature rather than a misuse of it, and no unusual configuration is involved. No other component uses this parser, and an application that uses neither SmartLinkLabel nor SmartLinkMultiLineLabel is not affected. On 9.x and 10.x the Content-Security-Policy Wicket sends by default admits script only from a source carrying a per-response nonce, and a URL whose scheme executes script cannot carry one, so that default policy stops the script from running. This is a property of the default policy and not of these components. An application that has weakened or disabled its Content-Security-Policy, for this or for any unrelated reason, is affected in full. Wicket 8.x has no Content-Security-Policy support at all and is affected as it stands. 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. Users of Apache Wicket 7.x or older, which are no longer supported, should upgrade to a supported version. Users are recommended to upgrade to version 8.20.0, 9.25.0 or 10.12.0, which fix the issue.

CVSS Scores

EPSS Scores

Probability:
Percentile:

Meta Information

Published
2026-11-01
Last Modified
2026-11-01
Generated
2026-11-02
AI Q&A
2026-11-02
EPSS Evaluated
N/A
NVD

Affected Vendors & Products

Helpful Resources

Exploitability

CWE
CWE Icon
KEV
KEV Icon
CWE ID Description
CWE-79 The product does not neutralize or incorrectly neutralizes user-controllable input before it is placed in output that is used as a web page that is served to other users.

Attack-Flow Graph

AI Quick Actions

Instant insights powered by AI
Executive Summary

This vulnerability involves improper input handling in Apache Wicket's SmartLinkLabel and SmartLinkMultiLineLabel components. These components automatically convert URLs in text into clickable links. The issue is that they accept any URL scheme, including malicious ones like javascript:, which can execute scripts when clicked. The vulnerability affects applications rendering untrusted text through these components.

Detection Guidance

Check if your application uses SmartLinkLabel or SmartLinkMultiLineLabel components in Apache Wicket versions 8.0.0 through 8.19.0, 9.0.0 through 9.24.0, or 10.0.0 through 10.11.0. Inspect rendered pages for hyperlinks generated from user input.

Impact Analysis

If your application uses SmartLinkLabel or SmartLinkMultiLineLabel, attackers could inject malicious URLs that execute scripts when users click them. This could lead to session hijacking, data theft, or other malicious activities within your application's context. Users clicking such links would be compromised.

Compliance Impact

This vulnerability could lead to unauthorized data access or modification, violating GDPR's integrity and confidentiality principles or HIPAA's security requirements. Affected applications may fail compliance audits if exploited, resulting in legal and financial penalties.

Mitigation Strategies

Upgrade Apache Wicket to versions 8.20.0, 9.25.0, or 10.12.0. If using Wicket 8.x or earlier, upgrade to a supported version. Ensure Content-Security-Policy is enabled and not weakened, as it mitigates the issue in 9.x and 10.x.

Chat Assistant

Ask questions about this CVE
Hi! I’m here to help you understand CVE-2026-83539. Ask me anything about the vulnerability, its impact, or mitigation strategies.
0/70

EPSS Chart

Security Radar

News mentioning this vulnerability
Loading related security news...