Description
Thelia before 3.1.1 contains a stored cross-site scripting vulnerability that allows authenticated back-office administrators with store update permission to inject scripts by uploading unsanitized SVG logo_file or banner_file images. Attackers can upload an SVG with an onload payload served from /admin/store-media/logo or the public cache/images/store/ directory to execute scripts against visitors and higher-privileged administrators.
Published: 2026-11-01
Score: 4.6 Medium
EPSS: n/a
KEV: No
Impact: Stored Cross‑Site Scripting (XSS)
Action: Patch Immediately
AI Analysis

Impact

The stored cross‑site scripting vulnerability in Thelia allows authenticated back‑office administrators with store update permission to upload malicious SVG files as logo or banner. By embedding scripts in an onload attribute, the attacker can cause arbitrary JavaScript to run whenever the SVG is displayed in the /admin/store‑media/logo path or the public cache/images/store directory. This means that any visitor who views the site or any administrator who accesses the back‑office can have their browser context hijacked, leading to potential credential theft, session hijacking or defacement. The flaw is a classic example of CWE‑79, where input is not properly sanitized before rendering.

Affected Systems

The vulnerability affects all installations of Thelia versions prior to 3.1.1, including the Core, Back‑office Default Twig Template, and the overall Thelia package. It applies to every instance where the default upload endpoints for store logo and banner files are used, regardless of the specific deployment or configuration, unless the image upload functionality has been independently hardened or disabled. No other vendors or products are listed as affected.

Risk and Exploitability

The CVSS base score of 4.6 indicates moderate severity; the exploit requires authenticated access to the back‑office with store update rights, which limits the attacker to users who have obtained or guessed those credentials. The EPSS score is not available, providing no current baseline for how frequently this type of attack is seen in the wild. The vulnerability is not listed in CISA KEV, implying no confirmed public exploitation yet. However, the attack path is straightforward for an authenticated attacker, and the potential impact on confidentiality and integrity of site users and administrators suggests that the vulnerability should be prioritized for remediation.

Generated by OpenCVE AI on November 1, 2026 at 02:22 UTC.

Remediation

No solution or workaround provided in the CVE record.

OpenCVE Recommended Actions

  • Upgrade Thelia to version 3.1.1 or later, which replaces the FileValidate class with proper sanitization for uploaded SVG files.
  • If an immediate upgrade is not feasible, restrict the file upload behavior by disabling SVG uploads in the back‑office configuration, allowing only JPEG or PNG images.
  • For sites requiring SVG support, run uploaded files through a sanitizer such as SafeSVG or another XML sanitization library before saving them, stripping any script or onload attributes.
  • Implement a content‑security‑policy that blocks inline scripts for the /admin/store‑media/logo and public/cache/images/store directories to further reduce the risk of XSS execution.

Generated by OpenCVE AI on November 1, 2026 at 02:22 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Sun, 01 Nov 2026 01:00:00 +0000

Type Values Removed Values Added
Description Thelia before 3.1.1 contains a stored cross-site scripting vulnerability that allows authenticated back-office administrators with store update permission to inject scripts by uploading unsanitized SVG logo_file or banner_file images. Attackers can upload an SVG with an onload payload served from /admin/store-media/logo or the public cache/images/store/ directory to execute scripts against visitors and higher-privileged administrators.
Title Thelia before 3.1.1 Stored XSS via SVG Store Logo and Banner Uploads
Weaknesses CWE-79
References
Metrics cvssV3_1

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

cvssV4_0

{'score': 4.6, 'vector': 'CVSS:4.0/AV:N/AC:L/AT:N/PR:H/UI:A/VC:N/VI:N/VA:N/SC:L/SI:L/SA:N'}


Subscriptions

No data.

cve-icon MITRE

Status: PUBLISHED

Assigner: VulnCheck

Published:

Updated: 2026-11-01T00:57:12.828Z

Reserved: 2026-10-31T22:05:59.343Z

Link: CVE-2026-120248

cve-icon Vulnrichment

No data.

cve-icon NVD

Status : Received

Published: 2026-11-01T01:17:18.493

Modified: 2026-11-01T01:17:18.493

Link: CVE-2026-120248

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-11-01T02:30:18Z

Weaknesses
  • CWE-79

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