Contest Gallery <= 30.0.2 - Authenticated (Author+) Privilege Escalation via 'RegistryUserRole' Parameter

8.8
Improper Privilege Management
CVE CVE-2026-12165
CVSS 8.8 (High)
Publicly Published June 16, 2026
Last Updated June 17, 2026
Researchers Chloe Chamberland - Wordfence
PRISM

Description

The Contest Gallery – Upload & Vote Photos, Media, Sell with PayPal & Stripe plugin for WordPress is vulnerable to Privilege Escalation in all versions up to, and including, 30.0.2 via the `RegistryUserRole` parameter. This is due to the plugin's admin menu being registered at the `edit_posts` capability level — granting Contributor-level users access to the plugin's admin pages and a valid `cg_admin` nonce — while the option-saving handler in `change-options-and-sizes.php` performs no `current_user_can()` capability check beyond `check_admin_referer('cg_admin')`, and the `RegistryUserRole` value is processed only through `sanitize_text_field()` and `htmlentities()` without restriction to an allowlist of permitted role names. This makes it possible for authenticated attackers, with author-level access and above, to overwrite the plugin's stored `RegistryUserRole` option with `administrator`, which the `cg_create_wp_user_from_google_user` function then reads back from the `contest_gal1ery_registry_and_login_options` database table without any allowlist validation and passes directly to `wp_update_user()`, effectively promoting a newly registered Google sign-in account to Administrator.

References

Share

Vulnerability Details for Contest Gallery – Upload & Vote Photos, Media, Sell with PayPal & Stripe

Software Type Plugin
Software Slug contest-gallery (view on wordpress.org)
Patched? Yes
Remediation Update to version 30.0.3, or a newer patched version
Affected Version
  • <= 30.0.2
Patched Version
  • 30.0.3

Recent vulnerabilities in Contest Gallery – Upload & Vote Photos, Media, Sell with PayPal & Stripe

# Title CVE ID CVSS Researchers Date
1 Contest Gallery – Upload & Vote Photos, Media, Sell with PayPal & Stripe <= 30.0.0 - Authenticated (Contributor+) SQL Injection CVE-2026-57662 6.5 Trương Hữu Phúc (truonghuuphuc) June 26, 2026
2 Contest Gallery <= 28.1.6 - Unauthenticated SQL Injection CVE-2026-8912 7.5 Leonid Semenenko (lsemenenko) May 18, 2026
3 Contest Gallery – Upload & Vote Photos, Media, Sell with PayPal & Stripe <= 28.1.7 - Missing Authorization CVE-2026-42657 5.3 endy April 29, 2026
4 Contest Gallery – Upload & Vote Photos, Media, Sell with PayPal & Stripe <= 28.1.7 - Authenticated (Subscriber+) Sensitive Information Exposure CVE-2026-42660 4.3 Jakub Herman April 29, 2026
5 Contest Gallery – Upload & Vote Photos, Media, Sell with PayPal & Stripe <= 28.1.6 - Authenticated (Subscriber+) Stored Cross-Site Scripting CVE-2026-42656 6.4 endy April 29, 2026
6 Contest Gallery – Upload & Vote Photos, Media, Sell with PayPal & Stripe <= 28.1.6 - Unauthenticated SQL Injection CVE-2026-40771 7.5 Trương Hữu Phúc (truonghuuphuc) April 21, 2026
7 Contest Gallery <= 28.1.5 - Unauthenticated Privilege Escalation Admin Account Takeover via Registration Confirmation Email-to-ID Type Confusion CVE-2026-4021 8.1 Supakiad S. (m3ez) March 23, 2026
8 Contest Gallery – Upload & Vote Photos, Media, Sell with PayPal & Stripe <= 28.1.2.2 - Missing Authorization CVE-2026-25035 5.3 daroo March 23, 2026
9 Contest Gallery – Upload & Vote Photos, Media, Sell with PayPal & Stripe <= 28.1.2.1 - Authenticated (Subscriber+) Server-Side Request Forgery CVE-2026-24964 6.4 lilmingwa13 March 10, 2026
10 Contest Gallery <= 28.1.4 - Unauthenticated SQL Injection CVE-2026-3180 7.5 Thomas Sanzey March 2, 2026

Did you know Wordfence Intelligence provides free personal and commercial API access to our comprehensive WordPress vulnerability database, along with a free webhook integration to stay on top of the latest vulnerabilities added and updated in the database? Get started today!

Learn more

Want to get notified of the latest vulnerabilities that may affect your WordPress site?
Install Wordfence on your site today to get notified immediately if your site is affected by a vulnerability that has been added to our database.

Get Wordfence

The Wordfence Intelligence WordPress vulnerability database is completely free to access and query via API. Please review the documentation on how to access and consume the vulnerability data via API.

Documentation