Description
XXL-JOB through 3.5.0-SNAPSHOT is vulnerable to stored cross-site scripting (XSS) in the GLUE code editor. JobCodeController.save() stores the user-supplied glueSource parameter without output encoding, and the FreeMarker template job.code.ftl renders the stored value unescaped.
Published: 2026-10-15
Score: 5.4 Medium
EPSS: < 1% Very Low
KEV: No
Impact: Stored Cross‑Site Scripting (XSS) that can lead to script execution in users’ browsers
Action: Patch Immediately
AI Analysis

Impact

XXL‑Job versions up to 3.5.0‑SNAPSHOT contain a stored cross‑site scripting flaw. When an attacker submits a job definition, the controller saves the glueSource parameter without encoding. The FreeMarker template job.code.ftl renders this value unescaped, allowing arbitrary JavaScript to be executed in the context of any user who views the job code page. This can lead to browser‑based attacks such as data theft, session hijacking, or defacement. The flaw is a direct result of missing output encoding in a trusted template.

Affected Systems

The vulnerability exists in XXL‑Job, versions 3.5.0‑SNAPSHOT and earlier. No vendor information was provided beyond the product name.

Risk and Exploitability

The CVSS score of 5.4 indicates medium severity. The EPSS score of less than 1% suggests a very low probability of exploitation in the near term. The flaw is not listed in the CISA KEV catalog. Exploitation likely requires authenticated access to the job editor to insert malicious glueSource, after which any user viewing the job page will execute the injected script. Detection would involve observing unexpected script execution in the job code view.

Generated by OpenCVE AI on October 16, 2026 at 22:21 UTC.

Remediation

No solution or workaround provided in the CVE record.

OpenCVE Recommended Actions

  • Upgrade XXL‑Job to a version released after 3.5.0‑SNAPSHOT in which the XSS flaw has been corrected.
  • If an upgrade is not possible, sanitize or HTML‑escape the glueSource input before storing it, or configure the FreeMarker template to escape the value automatically.
  • Limit write access to the GLUE code editor to trusted administrators only, reducing the chance that attackers can inject malicious code.

Generated by OpenCVE AI on October 16, 2026 at 22:21 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Sat, 24 Oct 2026 03:00:00 +0000

Type Values Removed Values Added
First Time appeared Xuxueli
Xuxueli xxl-job
Vendors & Products Xuxueli
Xuxueli xxl-job

Fri, 16 Oct 2026 22:45:00 +0000

Type Values Removed Values Added
Title Stored XSS in XXL‑Job GLUE Code Editor
Weaknesses CWE-79

Thu, 15 Oct 2026 17:30:00 +0000

Type Values Removed Values Added
Description XXL-JOB through 3.5.0-SNAPSHOT is vulnerable to stored cross-site scripting (XSS) in the GLUE code editor. JobCodeController.save() stores the user-supplied glueSource parameter without output encoding, and the FreeMarker template job.code.ftl renders the stored value unescaped.
References
Metrics cvssV3_1

{'score': 5.4, 'vector': 'CVSS:3.1/AC:L/AV:N/A:N/C:L/I:L/PR:L/S:C/UI:R'}


cve-icon MITRE

Status: PUBLISHED

Assigner: mitre

Published:

Updated: 2026-10-19T18:42:48.393Z

Reserved: 2026-10-07T00:00:00.000Z

Link: CVE-2026-106706

cve-icon Vulnrichment

No data.

cve-icon NVD

Status : Deferred

Published: 2026-10-15T18:17:23.567

Modified: 2026-10-19T19:17:19.000

Link: CVE-2026-106706

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-10-24T02:45:17Z

Weaknesses
  • CWE-79

    Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting')