Live › vulnerability › CVE-2026-109209
Go to dashboardThe All-in-One Video Gallery WordPress plugin, up to and including 4.9.7, fails to sanitize the embed code field, so a logged-in subscriber can store a script that runs in the browser of anyone who opens the affected page. The bypass works through XML-RPC, which skips the check the plugin relies on.
Summary written from the sources below. Check the originals before acting.
First seen by InfraStack 2026-10-28 03:31 UTC. All times on this page are UTC.
Sites running the All-in-One Video Gallery plugin at version 4.9.7 or earlier, where any user can register or hold a subscriber account. The exposure is strongest when XML-RPC is enabled, since that is the path that bypasses the check. Sites without this plugin, or with it updated past 4.9.7, can skip it.
No product ranges from the sources yet.
wp-content/plugins/all-in-one-video-gallery/all-in-one-video-gallery.phpcurl -I https://example.com/xmlrpc.php4.9.7Each row is the first time that source carried this signal. The analyst’s rows are its own findings.
The All-in-One Video Gallery – Video Player & Galleries for YouTube, Vimeo & Self-Hosted Videos plugin for WordPress is vulnerable to Stored Cross-Site Scripting via the 'custom_fields[embedcode]' parameter in all versions up to, and including, 4.9.7 due to insufficient input sanitization and output escaping. This makes it possible for authenticated attackers, with subscriber-level access and above, to inject arbitrary web scripts in pages that will execute whenever a user accesses an injected page. The sanitization bypass is possible because the save_meta_data() handler returns early when $_POST['post_type'] is absent — a condition always true during XML-RPC requests — and the plugin unconditionally grants Subscribers the publish_aiovg_videos capability, making this exploitable by any authenticated user via a single wp.newPost XML-RPC call.
This page as .md · .json · in your agent: get_signal("CVE-2026-109209")
NVD data is provided by NIST and is public domain. Posts quoted belong to their authors.