Skip to main content

Bagisto CVE-2025-62418

MEDIUM
Basic XSS (CWE-80)
2025-10-16 security-advisories@github.com
4.8
CVSS 3.1 · NVD
View

Attack ChainAIDerived

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

  1. Access
    Authenticate as privileged back-office user
  2. Delivery
    Upload crafted SVG via TinyMCE image upload
  3. Exploit
    Store malicious SVG in admin content
  4. Execution
    Victim admin views rendered content
  5. Persist
    Embedded JavaScript executes in victim session
  6. Impact
    Hijack session / act as admin

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A05:2025 - Injection
ASVS 5.0
V1 - Encoding and Sanitization HTML tag escaping
MITRE ATT&CK

1 technique across 1 tactic: Initial Access

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

Exploitation Conditions

Requires an authenticated back-office account with access to the TinyMCE image-upload / media-manager feature (the advisory cites admin or sufficiently privileged users), so this is gated by PR:H - not remote-unauthenticated. The specific prerequisite is that Bagisto 2.3.7 accepts SVG uploads without sanitizing or stripping embedded script, event handlers (onload/onclick), <script>, foreignObject or xlink:href injection, and later renders the SVG inline/embedded. Exploitation is further limited by the need for a second user (admin/editor) to actually view the stored content (UI:R), so it is a stored/second-order XSS rather than a one-click external attack. Environments on 2.3.8 or later are not affected.

Impact

This is a genuine but modest-severity issue, and the signals are largely consistent rather than conflicting. The CVSS 3.1 vector (AV:N/AC:L/PR:H/UI:R/S:C/C:L/I:L/A:N, base 4.8 Medium) describes a stored XSS that requires an attacker to already hold high privileges (PR:H - e.g. an admin or editor with media-upload rights) and requires a victim to subsequently view the content (UI:R). The scope change (S:C) reflects that injected SVG script executes in a different security context - the victim's authenticated browser session. EPSS is low (0.28%, 19th percentile), which aligns with a non-KEV vulnerability requiring privileged access and user interaction rather than mass-exploitable remote code execution. A public PoC exists (demonstrating that a crafted SVG triggers JavaScript in the editor), confirming the technique is real, but PoC availability is NOT the same as active exploitation - there is no CISA KEV listing and no evidence of in-the-wild use. The main caveat is that PR:H meaningfully limits the real-world threat: the attacker is already a trusted back-office user, so the practical value is privilege escalation/lateral movement between admin/editor accounts (session hijacking, actions as a higher-privileged admin) rather than external compromise. Net: a legitimate finding worth patching, but not an emergency - it is a high-CVSS-but-privilege-gated issue, not a wormable remote flaw.

Exploit ScenarioDerived

A low-trust back-office user (editor or sub-admin) with media/TinyMCE upload rights uploads a crafted SVG containing embedded JavaScript via the image-upload/media-manager feature. When a higher-privileged administrator or another editor later opens the page or content that renders the SVG inline, the embedded script executes in that victim's authenticated session, enabling session/cookie theft and actions performed as the victim. A public proof-of-concept exists demonstrating that the SVG's JavaScript fires when the content is viewed.

This Month Plan within 30 days. Why: MEDIUM severity (CVSS 4.0-6.9).
Patch available 0.3% exploitation probability (EPSS)

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

Alert me

AnalysisAIv1 – Oct 19, 2026

Stored cross-site scripting in Bagisto 2.3.7's TinyMCE image-upload/media-manager feature lets a back-office user with upload privileges plant an SVG containing embedded JavaScript that executes in another admin or editor's browser when the media is viewed. The vector is PR:H/UI:R (requires an authenticated privileged account and a victim who views the content), giving limited confidentiality and integrity impact within a changed scope. Public proof-of-concept detail accompanies the GitHub advisory and the vendor fixed the issue in 2.3.8; EPSS is low at roughly 0.28% and there is no CISA KEV entry, so this is a modest-severity, second-order XSS rather than a broadly exploited one.

RemediationAI

Vendor-released patch: upgrade to Bagisto 2.3.8, which contains the upstream fix commit 7b6b1dd639a14e7053bb82ef2f971c1f533fdfab (https://github.com/bagisto/bagisto/commit/7b6b1dd639a14e7053bb82ef2f971c1f533fdfab); see the advisory at https://github.com/bagisto/bagisto/security/advisories/GHSA-fg89-g389-p346. If upgrading immediately is not possible, block SVG uploads at the web-server/WAF layer or remove 'image/svg+xml' and 'svg' from the allowed upload types in the TinyMCE/media-manager configuration (side effect: editors lose SVG image support and must use PNG/JPEG/WebP), serve uploaded media from a separate origin with a strict Content-Security-Policy and Content-Disposition: attachment so any embedded script cannot run in the admin origin (side effect: requires origin/CDN reconfiguration and may break inline previews), and sanitize or strip <script>, event handlers, <foreignObject> and xlink:href from existing SVG assets already in storage. Additionally, restrict back-office upload rights to trusted roles and audit previously uploaded SVG files for embedded script, since payloads already stored remain exploitable after patching.

Affected Packages

composer bagisto/bagisto fix: 2.3.8

Source: OSV (Open Source Vulnerabilities)

Affects your stack

Affects 1 package in composer

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

Technical ContextAI · show details

SVG is an XML dialect, so a file that looks like an image can legitimately contain <script> elements, event handlers such as onload/onclick, <foreignObject> blocks and xlink:href injection. Bagisto 2.3.7 integrates TinyMCE's image upload (media manager) and appears to accept SVG uploads based on extension/MIME without inspecting or sanitizing the XML payload, so the dangerous markup is persisted and later rendered inline or via object/embed in admin and storefront content. This is CWE-80 (improper neutralization of script-related HTML tags), i.e. a stored XSS whose root cause is missing server-side content sanitization of user-supplied markup rather than a browser flaw. Because the advisory scopes it to users holding upload privileges, the practical impact is lateral: an attacker who already holds a back-office account can attack higher-privileged administrators who open the uploaded asset.

Know when Bagisto 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

NVD PRIMARY 4.8 MEDIUM
AV:N/AC:L/PR:H/UI:R/S:C/C:L/I:L/A:N
vuln.today AI 4.8 MEDIUM

Upload requires a privileged back-office account (PR:H), a victim must view the content (UI:R), and script runs in the victim's browser context (S:C) with limited C/I impact and no availability impact.

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

Primary rating from NVD.

CVSS VectorNVD

Attack Vector
Network
Attack Complexity
Low
Privileges Required
High
User Interaction
Required
Scope
Changed
Confidentiality
Low
Integrity
Low
Availability
None

DescriptionNVD

Bagisto is an open source laravel eCommerce platform. In Bagisto v2.3.7, the TinyMCE image upload functionality allows an attacker with sufficient privileges (e.g. admin) to upload a crafted SVG file containing embedded JavaScript. When viewed, the malicious code executes in the context of the admin/user’s browser. This vulnerability is fixed in 2.3.8.

Threat Intelligence Overview

EPSS Score
0.3%
Top 81% exploitable
Prevalence
Low
niche open-source Laravel eCommerce platform, limited enterprise footprint
Exploit
POC
Public exploit code exists
Data Quality
4 sources
Confidence: Medium

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 Yes
EPSS 0.3%
Patch available Yes
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· derived
Poc
System Exposure· derived
Open
Automatable· derived
No
Human Impact· derived
Medium

Priority Score

44
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +24
PoC: +20
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.

Affected Products (CPE)NVD

cpe:2.3:a:webkul:bagisto:2.3.7:*:*:*:*:*:*:*
CVE-2026-21448 CRITICAL POC
9.8 Jan 02

Bagisto eCommerce platform before 2.3.10 is vulnerable to server-side template injection (SSTI) through customer address

CVE-2026-21446 CRITICAL POC
9.8 Jan 02

Bagisto eCommerce platform (2.3 branch before 2.3.10) leaves installation API routes active after setup, allowing unauth

CVE-2026-21449 HIGH POC
8.8 Jan 02

Bagisto eCommerce platform versions before 2.3.10 suffer from server-side template injection through user-controllable f

CVE-2023-33570 HIGH POC
8.8 Jun 28

Bagisto v1.5.1 is vulnerable to Server-Side Template Injection (SSTI). Rated high severity (CVSS 8.8), this vulnerabilit

CVE-2019-16403 HIGH POC
8.8 Sep 18

In Webkul Bagisto before 0.1.5, the functionalities for customers to change their own values (such as address, review, o

CVE-2019-14933 HIGH POC
8.8 Aug 11

Bagisto 0.1.5 allows CSRF under /admin URIs. Rated high severity (CVSS 8.8), this vulnerability is remotely exploitable,

CVE-2026-9506 HIGH POC
8.7 Jun 08

Arbitrary file read in Bagisto v2.4.1 allows unauthenticated remote attackers to retrieve sensitive files outside the we

CVE-2026-21451 HIGH POC
8.4 Jan 02

Stored XSS in Bagisto's CMS page editor allows authenticated attackers to bypass input sanitization by crafting maliciou

CVE-2026-21447 HIGH POC
7.1 Jan 02

Bagisto is an open source laravel eCommerce platform. [CVSS 7.1 HIGH]

CVE-2025-62417 HIGH POC
7.1 Oct 16

CSV formula injection in Bagisto through 2.3.7 allows a user who can create or edit product data to store spreadsheet fo

CVE-2025-62416 MEDIUM POC
6.8 Oct 16

Server-side template injection in Bagisto 2.3.7 lets an authenticated backend user with product-creation privileges inje

CVE-2024-27499 MEDIUM POC
6.5 Mar 01

Bagisto v1.5.1 is vulnerable for Cross site scripting(XSS) via png file upload vulnerability in product review option. R

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