WordPress.Security.NonceVerification.Missing

Missing nonce verification

A request handler uses request data without verifying that the request was intentionally created by WordPress.

critical weight

Why It Shows Up

The scan found `$_GET`, `$_POST`, or similar request data in a context where a nonce check is expected but missing.

Why It Matters

Without nonce verification, an attacker may be able to trick a logged-in user into submitting an unwanted state-changing request.

How to Fix

  • Add a nonce to the form, link, AJAX request, or REST request.
  • Verify it with `check_admin_referer()`, `check_ajax_referer()`, or `wp_verify_nonce()` before changing state.
  • Keep capability checks separate; nonces prove intent, not permission.

Affected Plugins

RankPluginScoreErrorsWarningsInstallsUpdatedTop Issue
#2251onOffice for WP-Websites6755071k+Non Prefixed Variable Found
#2252Product Variations Swatches for WooCommerce67813610k+Non Prefixed Variable Found
#2253Team Section Block – Showcase Team Members with Layout Options676381k+Non Prefixed Namespace Found
#2254Theme Check67143620k+Missing Translators Comment
#2255WP Image Zoom67304610k+Non Prefixed Variable Found
#2256WP Post Branches6716124k+Output Not Escaped
#2257WPC Show Single Variations for WooCommerce675311k+Recommended
#2258Controls for Contact Form 7 (Redirects, Analytics & Tracking)6841410k+Missing
#2259SKT Page Builder6815492k+Missing
#2260WP and Divi Icons68201562k+wp function not compatible with requires wp
#2261Age Gate696113940k+missing direct file access protection
#2262Automatic Domain Changer69371410k+Text Domain Mismatch
#2263Contact Form 769563910m+missing direct file access protection
#2264CryptX69113010k+Missing
#2265Custom Archive Titles693942k+Output Not Escaped
#2266Custom Category Template691382k+Missing Arg Domain
#2267Custom Login URL6916171k+Missing Arg Domain
#2268Disable Users691192k+Text Domain Mismatch
#2269Easy Auto Reload – Auto Refresh6937121k+Text Domain Mismatch
#2270GDPR Compliance for Mailchimp697152k+Missing
#2271Falcon – WordPress Optimizations & Tweaks6929212k+Echo Found
#2272Add Widget After Content706117k+register setting Missing
#2273Points and Rewards for WooCommerce706147k+Recommended
#2274Search and Replace707910k+Input Not Sanitized
#2275Simple Login Captcha70201910k+date date
#2276SQL Executioner7018172k+Non Prefixed Variable Found
#2277Cart All In One For WooCommerce7061506k+Non Prefixed Variable Found
#2278aapanel WP Toolkit7120182k+wp function not compatible with requires wp
#2279Another Mailchimp Widget7128175k+Missing Translators Comment
#2280Contact Form 7 Confirm Email Field7135112k+Text Domain Mismatch
#2281Multiple Roles717205k+Non Prefixed Variable Found
#2282Privyr CRM – Instant Lead Alerts for Contact Forms712254k+Non Prefixed Function Found
#2283Multi-Step Checkout for WooCommerce71381048k+Non Prefixed Variable Found
#2284Disable Title7220152k+Text Domain Mismatch
#2285Getsitecontrol — Email Marketing Plugin | Popup Maker, Automations & Newsletters7217111k+wp function not compatible with requires wp
#2286Product Subtitle For WooCommerce726363k+Non Prefixed Namespace Found
#2287WooCommerce Shipping724770k+Direct Query
#2288Continue Shopping for WooCommerce739205k+Input Not Sanitized
#2289EmailKit – Email Customizer for WooCommerce & WP73188170k+slow db query meta query
#2290Multifile Upload Field for Contact Form 7734175k+Text Domain Mismatch
#2291NETOPIA Payments Payment Gateway7333110k+Missing
#2292Cálculo do frete somente com o CEP – WC Brasil7413241k+Non Prefixed Function Found
#2293RD Station7426720k+Non Prefixed Variable Found
#2294Keon Toolset7442830k+Non Prefixed Function Found
#2295Multiple Admin Email Addresses74741k+Missing
#2296Zion Builder – Website Builder for Speed & Creativity744291k+Non Prefixed Hookname Found
#2297Force First and Last Name as Display Name755122k+Missing
#2298List all URLs75855k+Missing
#2299Options Framework7585610k+Non Prefixed Function Found
#2300Custom Product Tabs Lite for WooCommerce753114k+Input Not Validated