Skip to main content

Apache Wicket CVE-2026-75802

| EUVDEUVD-2026-68488 MEDIUM
Cross-site Scripting (XSS) (CWE-79)
5.1
CVSS 4.0 · Vendor
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Inject payload into persistent data source powering choice list
  2. Delivery
    Application stores attacker-controlled display value
  3. Exploit
    Victim navigates to page with AjaxEditableChoiceLabel
  4. Execution
    Wicket writes unescaped value into label markup
  5. Persist
    Browser parses and executes injected script
  6. Impact
    Session token or credential exfiltrated to attacker

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A05:2025 - Injection
ASVS 5.0
V1 - Encoding and Sanitization Output encoding, context-aware escaping
MITRE ATT&CK

2 techniques across 2 tactics: Initial Access, Execution

The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up.

Exploitation Conditions

Exploitation of the IChoiceRenderer path requires: (1) the application instantiates AjaxEditableChoiceLabel with a non-null custom IChoiceRenderer implementation, and (2) an attacker can influence the data from which that renderer derives its getDisplayValue() output - for example, via a form submission or API call that persists data into the choice list. Exploitation of the defaultNullLabel() path requires: (1) the application overrides defaultNullLabel() on AjaxEditableLabel, AjaxEditableChoiceLabel, or AjaxEditableMultiLineLabel, (2) the override returns a value the attacker can influence, and (3) the component's model evaluates to null at render time. Applications using these components with entirely static, developer-hardcoded choice lists and no defaultNullLabel() overrides are not exposed. The escapeModelStrings setting does not limit exploitation in any scenario - confirmed by the vendor as having no effect on these components. A third party viewing the affected page is required for impact (reflected in UI:R).

Impact

The vendor categorizes this as moderate severity, which is consistent with a conditional XSS whose exploitability depends on application-specific configuration choices rather than default framework behavior. Real-world risk is bounded by two independent preconditions: the application must deploy AjaxEditableChoiceLabel with a non-default IChoiceRenderer whose display values can be influenced by an attacker, or must override defaultNullLabel() to return attacker-controlled content. Neither condition exists in a default Wicket installation, materially narrowing the exposed population compared to a universal XSS. No EPSS data was present in the provided intelligence, the vulnerability does not appear in CISA KEV, and no public proof-of-concept code has been identified, all of which suggest limited opportunistic exploitation risk at this time. Despite these mitigating factors, the impact when conditions are met is non-trivial - session token theft via stored XSS can silently elevate attacker access - and even a mid-sized municipal IT team in tczew operating an internal Wicket-based workflow portal with custom renderer implementations should treat the available patch as an urgent upgrade rather than a deferred maintenance item. The clean vendor disclosure via oss-security, with explicit fixed versions across three maintained branches, reduces remediation friction significantly.

Exploit ScenarioDerived

An attacker submits a crafted payload containing a script tag through a data entry channel that populates an IChoiceRenderer-backed choice list - for example, a product or user record stored in a database that feeds the component's model. When a legitimate user loads the page containing the AjaxEditableChoiceLabel, Wicket renders the unescaped display value directly into label markup, executing the injected script in the victim's browser and potentially exfiltrating session cookies or performing authenticated actions on the victim's behalf. No public proof-of-concept code has been identified at time of analysis.

This Month Plan within 30 days. Why: MEDIUM severity (CVSS 4.0-6.9).
No patch listed yet 0.4% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAI

Cross-site scripting vulnerabilities in Apache Wicket's AjaxEditableChoiceLabel and related wicket-extensions components allow an attacker who can influence rendered choice or model data to inject arbitrary HTML or JavaScript into page markup, executing in the browser of any user viewing the affected page. Versions 8.0.0 through 8.18.0, 9.0.0 through 9.23.0, and 10.0.0 through 10.10.0 of the org.apache.wicket:wicket-extensions module are confirmed affected. The root cause is that two distinct rendering paths bypass Wicket's default HTML escaping, and the escapeModelStrings configuration property has no corrective effect on these components. No public exploit has been identified at time of analysis.

RemediationAI

Upgrade to Apache Wicket 8.19.0, 9.24.0, or 10.11.0, the vendor-confirmed fixed releases for the 8.x, 9.x, and 10.x branches respectively; these versions apply correct HTML escaping to both the IChoiceRenderer display value path and the defaultNullLabel() return value. Update the org.apache.wicket:wicket-extensions dependency in your Maven or Gradle build descriptor to the appropriate fixed version matching your existing major branch. If an immediate upgrade is not feasible, audit all application code for AjaxEditableChoiceLabel instantiations that supply a custom IChoiceRenderer, and ensure that display values returned by the renderer are sanitized at the application layer before return. Additionally, audit any overrides of defaultNullLabel() across AjaxEditableLabel, AjaxEditableChoiceLabel, and AjaxEditableMultiLineLabel, and eliminate any code paths that allow attacker-influenced data to flow into that method's return value. Do not rely on escapeModelStrings as a compensating control - the vendor advisory explicitly confirms it has no effect on the vulnerable rendering paths. The full advisory with version details is at https://seclists.org/oss-sec/2026/q3/618.

Affected VersionsENISA

Apache Wicket 8.0.0 ≤8.18.0
Apache Wicket 9.0.0 ≤9.23.0
Apache Wicket 10.0.0 ≤10.10.0

Affected Packages

euvd apache_wicket no fix

Source: OSV (Open Source Vulnerabilities)

Affects your stack

Affects 1 package in euvd

Checking this CVE against your own stacks and servers is part of the Basic plan and up.

Technical ContextAI · show details

Apache Wicket is a Java-based, component-oriented web framework; the vulnerability resides in the wicket-extensions module (Maven artifact org.apache.wicket:wicket-extensions). The affected components - AjaxEditableLabel, AjaxEditableChoiceLabel, and AjaxEditableMultiLineLabel - are inline editors that toggle between a read-only label view and an editable input control. Two code paths fail to apply HTML escaping: first, AjaxEditableChoiceLabel passes the display value returned by a custom IChoiceRenderer directly into label markup without sanitization; second, all three components write the return value of the overridable protected defaultNullLabel() method into markup unsanitized when the component model is null. Notably, the same IChoiceRenderer display value is correctly escaped when rendered as a dropdown option, confirming that escaping logic exists but is not applied to the label path. The escapeModelStrings property is ineffective because it is read by a label sub-component that does not participate in the vulnerable rendering paths - the setting is never carried across to the code that writes unescaped values. This falls squarely within CWE-79 (Improper Neutralization of Input During Web Page Generation), manifesting as stored or reflected XSS depending on how attacker-controlled data enters the choice list or model. No CPE strings were provided in the input data.

Know when Wicket gets its next vulnerability

  • Watch products and get an email when something new is published
  • Check this CVE against your own stack and servers
  • Exploit and PoC references, threat intelligence from 22 sources

No credit card · 7-day full trial

Severity by source

Vendor (CNA) PRIMARY 5.1 MEDIUM
CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:P/VC:N/VI:N/VA:N/SC:L/SI:L/SA:N/U:Amber
vuln.today AI 5.4 MEDIUM

Network XSS requiring attacker influence over application data (PR:L) and victim page view (UI:R); scope changes as injected script runs in victim browser context.

3.1 AV:N/AC:L/PR:L/UI:R/S:C/C:L/I:L/A:N
4.0 AV:N/AC:L/AT:N/PR:L/UI:P/VC:L/VI:L/VA:N/SC:L/SI:L/SA:N

Primary rating from Vendor (CNA).

CVSS VectorVendor

Attack Vector
Network
Attack Complexity
Low
Attack Requirements
None
Privileges Required
Low
User Interaction
Passive
Vulnerable system: Confidentiality
None
Vulnerable system: Integrity
None
Vulnerable system: Availability
None
Subsequent system: Confidentiality
Low
Subsequent system: Integrity
Low
Subsequent system: Availability
None

Lifecycle Timeline

2
CVSS changed
Aug 31, 2026 - 12:22 NVD
5.1 (MEDIUM)
CVE Published
Aug 31, 2026 - 10:50 cve.org
MEDIUM

Description PRE-NVD

Disclosed via oss-security. NVD scoring and full description are pending.

Threat Intelligence Overview

EPSS Score
0.4%
Top 66% exploitable
Prevalence
Medium
established Java web framework with enterprise users, not a dominant ecosystem choice
Data Quality
6 sources
Confidence: High

How this decision was reached

The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.

SignalValue
Severity MEDIUM
CISA KEV No
Public POC No
EPSS 0.4%
Patch available No
Active threat No
Deciding rule
MEDIUM severity (CVSS 4.0-6.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision· derived
Scheduled
Exploitation
None
System Exposure· derived
Open
Automatable
No
Human Impact· derived
Medium
Technical Impact
Partial

Priority Score

26
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +26
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

Cross-Site Scripting occurs when an application accepts untrusted data and sends it to a web browser without proper validation or encoding.

More in Wicket

View all
CVE-2015-5347 MEDIUM POC
6.1 Apr 12

Cross-site scripting (XSS) vulnerability in the getWindowOpenJavaScript function in org.apache.wicket.extensions.ajax.ma

CVE-2016-6793 CRITICAL
9.1 Jul 17

The DiskFileItem class in Apache Wicket 6.x before 6.25.0 and 1.5.x before 1.5.17 allows remote attackers to cause a den

CVE-2024-36522 CRITICAL
9.8 Jul 12

The default configuration of XSLTResourceStream.java is vulnerable to remote code execution via XSLT injection when proc

CVE-2026-40010 CRITICAL
9.1 May 06

Session fixation in Apache Wicket AuthenticatedWebSession allows remote unauthenticated attackers to hijack user session

CVE-2016-6806 HIGH
8.8 Oct 03

Apache Wicket 6.x before 6.25.0, 7.x before 7.5.0, and 8.0.0-M1 provide a CSRF prevention measure that fails to discover

CVE-2014-3526 HIGH
7.5 Oct 30

Apache Wicket before 1.5.12, 6.x before 6.17.0, and 7.x before 7.0.0-M3 might allow remote attackers to obtain sensitive

CVE-2014-7808 HIGH
7.5 Sep 15

Apache Wicket before 1.5.13, 6.x before 6.19.0, and 7.x before 7.0.0-M5 make it easier for attackers to defeat a cryptog

CVE-2026-71257 HIGH
7.5 Aug 30

Per-file size and file-count upload limit enforcement in Apache Wicket 8.x through 10.x can be bypassed when a co-deploy

CVE-2026-43646 HIGH
7.5 May 06

Remote unauthenticated attackers can access restricted package resources in Apache Wicket 8.x through 10.x by crafting U

CVE-2021-23937 HIGH
7.5 May 25

A DNS proxy and possible amplification attack vulnerability in WebClientInfo of Apache Wicket allows an attacker to trig

CVE-2020-11976 HIGH
7.5 Aug 11

By crafting a special URL it is possible to make Wicket deliver unprocessed HTML templates. Rated high severity (CVSS 7.

CVE-2024-27439 MEDIUM
6.5 Mar 19

An error in the evaluation of the fetch metadata headers could allow a bypass of the CSRF protection in Apache Wicket.1.

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy