Executive brief
A vulnerability exists in a popular WordPress plugin used to create multi-vendor online marketplaces. An attacker with a vendor-level account can upload media files with malicious titles that execute harmful scripts when a site administrator or other privileged user views the media dashboard. This could lead to unauthorized actions being performed on behalf of the administrator or the theft of sensitive session information.
Technical details
The WCFM Marketplace plugin for WordPress is vulnerable to Stored Cross-Site Scripting (XSS) due to insufficient input sanitization and output escaping on the 'post_title' field of media attachments. Authenticated attackers with Vendor-level permissions can exploit this by uploading a media attachment with a crafted title via the WordPress REST API (/wp-json/wp/v2/media). The unescaped title is subsequently emitted within DataTables JSON and rendered as innerHTML when a privileged user accesses the media dashboard. This allows for the execution of arbitrary web scripts in the context of the victim's browser session. The issue is present in all versions up to and including 3.7.3.
Affected products
- wclovers WCFM Marketplace – Multivendor Marketplace for WooCommerce up to, and including, 3.7.3
Timeline
- 2026-07-11: advisory
- 2026-07-11: disclosed
References
- https://plugins.trac.wordpress.org/browser/wc-multivendor-marketplace/tags/3.7.2/controllers/media/wcfmmp-controller-media.php
- https://plugins.trac.wordpress.org/browser/wc-multivendor-marketplace/tags/3.7.2/controllers/media/wcfmmp-controller-media.php
- https://plugins.trac.wordpress.org/browser/wc-multivendor-marketplace/tags/3.7.2/core/class-wcfmmp-media.php
- https://plugins.trac.wordpress.org/browser/wc-multivendor-marketplace/tags/3.7.3/controllers/media/wcfmmp-controller-media.php
- https://plugins.trac.wordpress.org/browser/wc-multivendor-marketplace/tags/3.7.3/controllers/media/wcfmmp-controller-media.php
- https://plugins.trac.wordpress.org/browser/wc-multivendor-marketplace/tags/3.7.3/core/class-wcfmmp-media.php
- https://plugins.trac.wordpress.org/changeset?reponame=&old=3588629%40wc-multivendor-marketplace&new=3588629%40wc-multivendor-marketplace