CVE-2026-12165: CWE-269 Improper Privilege Management in contest-gallery Contest Gallery – Upload & Vote Photos, Media, Sell with PayPal & Stripe
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.
AI Analysis
Technical Summary
CVE-2026-12165 describes a privilege escalation vulnerability in the Contest Gallery – Upload & Vote Photos, Media, Sell with PayPal & Stripe WordPress plugin. The plugin registers its admin menu at the 'edit_posts' capability level, granting Contributor-level users access to admin pages and a valid nonce. The option-saving handler lacks proper capability checks beyond nonce verification and processes the RegistryUserRole parameter without restricting it to an allowlist. Consequently, attackers with author-level access or above can overwrite the RegistryUserRole option with 'administrator'. The function cg_create_wp_user_from_google_user reads this value without validation and passes it to wp_update_user(), effectively granting administrator privileges to a newly registered Google sign-in account.
Potential Impact
An authenticated user with author-level access or higher can escalate privileges to administrator by exploiting this vulnerability. This leads to full administrative control over the WordPress site, including the ability to modify content, install plugins, change settings, and potentially compromise the entire site.
Mitigation Recommendations
Patch status is not yet confirmed — check the vendor advisory for current remediation guidance. Until an official fix is available, restrict author-level and contributor-level user permissions carefully and monitor for suspicious privilege changes. Avoid granting Google sign-in registration capabilities to untrusted users. Follow vendor updates closely for an official patch or temporary mitigation.
CVE-2026-12165: CWE-269 Improper Privilege Management in contest-gallery Contest Gallery – Upload & Vote Photos, Media, Sell with PayPal & Stripe
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.
CVSS v3.1
Score 8.8high
Weaknesses
AI-Powered Analysis
Machine-generated threat intelligence
Technical Analysis
CVE-2026-12165 describes a privilege escalation vulnerability in the Contest Gallery – Upload & Vote Photos, Media, Sell with PayPal & Stripe WordPress plugin. The plugin registers its admin menu at the 'edit_posts' capability level, granting Contributor-level users access to admin pages and a valid nonce. The option-saving handler lacks proper capability checks beyond nonce verification and processes the RegistryUserRole parameter without restricting it to an allowlist. Consequently, attackers with author-level access or above can overwrite the RegistryUserRole option with 'administrator'. The function cg_create_wp_user_from_google_user reads this value without validation and passes it to wp_update_user(), effectively granting administrator privileges to a newly registered Google sign-in account.
Potential Impact
An authenticated user with author-level access or higher can escalate privileges to administrator by exploiting this vulnerability. This leads to full administrative control over the WordPress site, including the ability to modify content, install plugins, change settings, and potentially compromise the entire site.
Mitigation Recommendations
Patch status is not yet confirmed — check the vendor advisory for current remediation guidance. Until an official fix is available, restrict author-level and contributor-level user permissions carefully and monitor for suspicious privilege changes. Avoid granting Google sign-in registration capabilities to untrusted users. Follow vendor updates closely for an official patch or temporary mitigation.
Technical Details
- Data Version
- 5.2
- Assigner Short Name
- Wordfence
- Date Reserved
- 2026-06-12T19:34:12.938Z
- Cvss Version
- 3.1
- State
- PUBLISHED
- Remediation Level
- null
Threat ID: 6a326cb20b89be6888184269
Added to database: 6/17/2026, 9:45:22 AM
Last enriched: 6/17/2026, 10:00:08 AM
Last updated: 6/17/2026, 5:23:54 PM
Views: 3
Community Reviews
0 reviewsCrowdsource mitigation strategies, share intel context, and vote on the most helpful responses. Sign in to add your voice and help keep defenders ahead.
Want to contribute mitigation steps or threat intel context? Sign in or create an account to join the community discussion.
Actions
Updates to AI analysis require Pro Console access. Upgrade inside Console → Billing.
Need more coverage?
Upgrade to Pro Console for AI refresh and higher limits.
For incident response and remediation, OffSeq services can help resolve threats faster.
Latest Threats
Check if your credentials are on the dark web
Instant breach scanning across billions of leaked records. Free tier available.