Software: YouTube Embed
Version: 3.3.2
Homepage: https://wordpress.org/plugins/youtube-embed/
CVE ID: CVE-2015-6535 (Pending)
CWE ID: CWE-79
CVSS: 5.5 (Medium; AV:N/AC:L/Au:S/C:P/I:P/A:N)
A stored XSS vulnerability in YouTube Embed 3.3.2 (and possibly earlier versions) allows admin users to compromise other admins and super admins.
YouTube Embed is a WordPress plugin with over 30,000 active installs.
Admins on multisite installs can inject arbitrary JavaScript into pages visible to super admins via the plugin's unsanitized profile name field.
Note: Admins on multisite installs lack the unfiltered_html capability – only super admins can enter unfiltered html [2].
From youtube-embed/includes/options-profiles.php:
31: $options[ 'name' ] = $_POST[ 'youtube_embed_name' ];
…
95: echo '<div class="updated fade"><p><strong>' . __( $options[ 'name' ].' Profile Saved.' ) . "</strong></p></div>\n";
This has been tested with Firefox 38.2.0 on Debian.
Upgrade the plugin to version 3.3.3 or later.
2015-08-19: Discovered
2015-08-19: Requested vulnerability reporting instructions via vendor support form
2015-08-20: Vendor asked that vulnerability be reported on the vendor's website plugin page
2015-08-20: Reported to vendor via plugin page
2015-08-20: Requested CVE number
2015-08-23: Vendor released version 3.3.3 – confirmed fixed
2015-08-26: Public Disclosure
[1] https://wordpress.org/plugins/youtube-embed/changelog/
[2] https://codex.wordpress.org/Roles_and_Capabilities#Additional_Admin_Capabilities