LiveActive security incident?Get immediate response
CVE Record

CVE-2026-23499: Saleor vulnerable to stored XSS via Unrestricted File Upload

Saleor is an e-commerce platform. Starting in version 3.0.0 and prior to versions 3.20.108, 3.21.43, and 3.22.27, Saleor allowed authenticated staff users or Apps to upload arbitrary files, including malicious HTML and SVG files containing Javascript. Depending on the deployment strategy, these files may be served from the same domain as the dashboard without any restrictions leading to the execution of malicious scripts in the context of the user's browser. Malicious staff members could craft script injections to target other staff members, possibly stealing their access and/or refresh tokens. Users are vulnerable if they host the media files inside the same domain as the dashboard, e.g., dashboard is at `example.com/dashboard/` and media are under `example.com/media/`. They are not impact if media files are hosted in a different domain, e.g., `media.example.com`. Users are impacted if they do not return a `Content-Disposition: attachment` header for the media files. Saleor Cloud users are not impacted. This issue has been patched in versions: 3.22.27, 3.21.43, and 3.20.108. Some workarounds are available for those unable to upgrade. Configure the servers hosting the media files (e.g., CDN or reverse proxy) to return the Content-Disposition: attachment header. This instructs browsers to download the file instead of rendering them in the browser. Prevent the servers from returning HTML and SVG files. Set-up a `Content-Security-Policy` for media files, such as `Content-Security-Policy: default-src 'none'; base-uri 'none'; frame-ancestors 'none'; form-action 'none';`.

HighCVSS 8.5Not KEV-listedUpdated
Glexia's TakeAutomated analysishigh

Security readout for executives and security teams

Plain-English summary

CVE-2026-23499 affects self-hosted Saleor deployments where uploaded media can be rendered from the same domain as the staff dashboard. An authenticated staff user or App could upload malicious HTML or SVG that runs JavaScript in another staff member’s browser, potentially exposing access or refresh tokens. Saleor Cloud is reported as not impacted.

Executive priority

Prioritize remediation for self-hosted Saleor environments with staff dashboards and media on the same domain. The issue can affect privileged staff sessions, but available sources indicate patches and configuration workarounds exist. Treat as high priority, especially for internet-facing commerce administration environments.

Technical view

Saleor versions before 3.20.108, 3.21.43, and 3.22.27 allowed authenticated staff users or Apps to upload arbitrary files. If media is served same-origin with the dashboard and without protective headers, stored XSS can execute in a victim staff browser. The CVSS v4.0 score is 8.5, with low attack complexity and required user interaction.

Likely exposure

Exposure is most likely in self-hosted Saleor 3.x environments where media files share the dashboard domain, such as /dashboard and /media on one host. Risk is lower when media is served from a separate domain. Saleor Cloud users are stated not to be impacted.

Exploitation context

Sources do not report active exploitation, and the CVE is not marked KEV. Abuse requires authenticated staff or App upload capability and a victim staff user opening or rendering the uploaded content. The main business risk is compromise of staff session tokens and unauthorized administrative activity.

Researcher notes

This is a stored XSS caused by unrestricted file upload behavior and unsafe media serving assumptions. The source states impact depends on deployment strategy and response headers. Evidence supports authenticated attacker requirements, user interaction, and no impact for Saleor Cloud. No public source in the bundle confirms exploitation in the wild.

Mitigation direction

  • Upgrade Saleor to 3.20.108, 3.21.43, 3.22.27, or later as appropriate.
  • Return Content-Disposition: attachment for media files.
  • Prevent media servers from returning HTML and SVG files.
  • Apply a restrictive Content-Security-Policy to media file responses.
  • Prefer serving media from a separate domain from the dashboard.
  • Review Saleor vendor guidance for branch-specific upgrade and configuration details.

Validation and detection

  • Identify all self-hosted Saleor deployments and their exact versions.
  • Confirm whether the deployment is Saleor Cloud or self-managed.
  • Check whether dashboard and media are served from the same domain.
  • Verify media responses include Content-Disposition: attachment.
  • Verify HTML and SVG media are blocked or forced to download.
  • Confirm a restrictive CSP is present on media responses.
Prepared
Confidence
high
Sources
9

Generated from the cited source records. This long-tail analysis has not been individually reviewed by a named human.

Potential ATT&CK relevance

Conservative CVE-to-ATT&CK context

These mappings and lookup hints may be relevant to the vulnerability behavior, CWE, affected product, or exposure path. Glexia-inferred context is not an official MITRE, ATT&CK, CWE, or CVE Program mapping.

ATT&CK lookup starting points

Use these exact CWE pages and searches to review the Glexia ATT&CK library from this CVE's weakness and description context.

cwe · medium confidence lookup

CWE-434: File access and web shell behavior lookup

File traversal and upload weaknesses can lead teams to review file, web shell, execution, and collection telemetry. Open the exact CWE lookup page first, then review the ATT&CK searches from that MITRE weakness context. This is a Glexia lookup hint, not an official ATT&CK mapping.

Open ATT&CK lookup
cwe · medium confidence lookup

CWE-79: User-session and phishing behavior lookup

Client-side and session-facing weaknesses should be reviewed alongside initial-access and user-execution behaviors. Open the exact CWE lookup page first, then review the ATT&CK searches from that MITRE weakness context. This is a Glexia lookup hint, not an official ATT&CK mapping.

Open ATT&CK lookup
description · low confidence lookup

File access behavior lookup

The CVE wording references file access or upload behavior, so file telemetry and web shell review may help. This is a Glexia inferred lookup path, not an official MITRE, ATT&CK, or CVE Program mapping.

Open ATT&CK lookup
cve · low confidence lookup

CVE-2026-23499 mapping review

Open the CVE-to-ATT&CK bridge for reviewed, inferred, or future official mappings tied to this CVE.

Open ATT&CK lookup
Vulnerability profileCVE Program record
Severity
High
CVSS
8.5 (4.0)
Known Exploited
No
Published

Vector: CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:P/VC:H/VI:H/VA:N/SC:N/SI:N/SA:N

Official CVE source material

CNA and ADP enrichment extracted from CVE v5

These fields come from the CVE record and ADP containers, not from Glexia's Take. They preserve time-varying source decisions such as CISA SSVC, KEV status, CVSS metrics, and provider references.

1CVSS vectors
0Timeline events
0ADP providers
8Source links

CVSS vector scores

1 official score

We collect every scored CVSS vector available in the official CNA and ADP containers. When more than one version is present, the table keeps the source vectors side by side instead of collapsing them into the highest score.

ScoreVersionSeverityVectorExploitImpactSource
8.5CVSS 4.0HighCVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:P/VC:H/VI:H/VA:N/SC:N/SI:N/SA:N——Primary CVE score

Vulnerability scoring details

Base CVSS 4.0 score

8.5High
CVSS 4.0 vector shape for CVE-2026-23499Attack VectorAttack ComplexityAttack RequirementsPrivileges RequiredUser InteractionVS ConfidentialityVS IntegrityVS AvailabilitySS ConfidentialitySS IntegritySS Availability

Vector: CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:P/VC:H/VI:H/VA:N/SC:N/SI:N/SA:N

Attack Vector
NetworkAdjacentLocalPhysical
Attack Complexity
LowHigh
Attack Requirements
NonePresent
Privileges Required
NoneLowHigh
User Interaction
NonePassiveActive
VS Confidentiality
HighLowNone
VS Integrity
HighLowNone
VS Availability
HighLowNone
SS Confidentiality
HighLowNone
SS Integrity
HighLowNone
SS Availability
HighLowNone
Affected products

Products and packages named in the record

VendorProductVersion / packageStatus
saleorsaleor>= 3.2.0, < 3.22.27, >= 3.1.0, < 3.21.43, >= 3.0.0, < 3.20.108Listed
Weakness

CWE details

CWE links open Glexia weakness intelligence pages with official CWE context, developer remediation guidance, and related CVE mappings.

CWE-434 · source CWE mapping

Unrestricted Upload of File with Dangerous Type

Unrestricted Upload of File with Dangerous Type represents a recurring weakness pattern that can create exploitable paths when design, validation, or implementation controls are missing.

CWE-79 · source CWE mapping

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

Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting') represents a recurring weakness pattern that can create exploitable paths when design, validation, or implementation controls are missing.