CVE-2025-62418: bagisto - Cross Site Scripting (XSS) in TinyMCE Image Upload (SVG)
Summary 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.
Details The underlying problem is that SVG is XML/markup, so when it is uploaded and then directly rendered or embedded, script or event handlers within are allowed to run unless sanitized. In Bagisto, the integration of TinyMCE’s image upload (or media manager) may accept SVG files without sanitizing or rejecting unsafe content. When the SVG is later included (inline or via object/embed) in content displayed in admin or UI, the browser may execute the script portion of the SVG. The application might not validate the file content (i.e. inspect the SVG XML) or strip <script>, onload, onclick, foreignObject, xlink:href injection, objects/embed tags, etc.
PoC Navigate to any forms with TinyMCE editor. Attempt to upload a SVG file with embedded JavaScript. <img width="1580" height="795" alt="image" src="https://github.com/user-attachments/assets/17df21a4-bfcd-4c51-a963-68f68241fd2e" /> JavaScript was triggered. <img width="1402" height="409" alt="image" src="https://github.com/user-attachments/assets/d0e326c3-6f23-449d-8f90-1e1032818d80" />
Impact Malicious script is stored in SVG file and executed when the content is viewed. An attacker (with upload privilege) can target other admin users or editors who view the content, enabling session hijacking, unauthorized actions, or privilege escalation.
Other sources
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.
— MITRE
Affected Software
Event History
Frequently Asked Questions
What is the severity of CVE-2025-62418?
CVE-2025-62418 is categorized as a high severity vulnerability due to the potential for execution of malicious JavaScript code.
How do I fix CVE-2025-62418?
To fix CVE-2025-62418, upgrade to Bagisto version 2.3.8 or later where this vulnerability has been addressed.
Who is affected by CVE-2025-62418?
Users of Bagisto versions prior to 2.3.8, particularly those with admin access, are affected by CVE-2025-62418.
What types of attacks are possible with CVE-2025-62418?
CVE-2025-62418 allows an attacker with admin privileges to upload a malicious SVG file that can execute embedded JavaScript.
What software does CVE-2025-62418 impact?
CVE-2025-62418 impacts the Bagisto e-commerce platform specifically in version 2.3.7 and earlier.