WordPress.Security.NonceVerification.Missing
Missing nonce verification
A request handler uses request data without verifying that the request was intentionally created by WordPress.
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.
References
Affected Plugins
| Rank | Plugin | Score | Errors | Warnings | Installs | Added | Updated | Top Issue |
|---|---|---|---|---|---|---|---|---|
| #3501 | Cálculo do frete somente com o CEP – WC Brasil | 74 | 13 | 24 | 1k+ | Non-prefixed function | ||
| #3502 | Signature Field For Contact Form 7 – CF7Sign | 74 | 9 | 12 | 700 | Missing Translators Comment | ||
| #3503 | CoinGate for WooCommerce | 74 | 35 | 18 | 400 | Text Domain Mismatch | ||
| #3504 | Contact Form 7 Email Validation | 74 | 8 | 10 | 1k+ | Input is not validated | ||
| #3505 | EmailKit – Email Customizer for WooCommerce & WP | 74 | 17 | 82 | 70k+ | slow db query meta query | ||
| #3506 | Formidable Honeypot | 74 | 10 | 6 | 400 | Text Domain Mismatch | ||
| #3507 | Gravity Forms Multi Currency | 74 | 6 | 12 | 400 | Output is not escaped | ||
| #3508 | RD Station | 74 | 65 | 20k+ | Non-prefixed global variable | |||
| #3509 | Keon Toolset | 74 | 4 | 28 | 30k+ | Non-prefixed function | ||
| #3510 | Multiple Admin Email Addresses | 74 | 7 | 4 | 1k+ | Missing nonce verification | ||
| #3511 | Multiple Roles | 74 | 8 | 18 | 5k+ | Non-prefixed global variable | ||
| #3512 | WP Term Colors | 74 | 3 | 13 | 700 | Nonce verification recommended | ||
| #3513 | Zion Builder – Website Builder for Speed & Creativity | 74 | 4 | 29 | 1k+ | Non-prefixed hook name | ||
| #3514 | Beacon Lead Magnets and Lead Capture | 75 | 8 | 25 | 500 | Nonce verification recommended | ||
| #3515 | Delay Redirects | 75 | 5 | 8 | 900 | Request data is not unslashed | ||
| #3516 | En Spam | 75 | 21 | 6 | 500 | wp function not compatible with requires wp | ||
| #3517 | Force First and Last Name as Display Name | 75 | 5 | 12 | 2k+ | Missing nonce verification | ||
| #3518 | Honeypot Anti Spam for Forminator Forms | 75 | 4 | 7 | 1k+ | Missing nonce verification | ||
| #3519 | List all URLs | 75 | 8 | 5 | 5k+ | Missing nonce verification | ||
| #3520 | Options Framework | 75 | 8 | 56 | 10k+ | Non-prefixed function | ||
| #3521 | Order Delivery Date And Time | 75 | 26 | 28 | 1k+ | Text Domain Mismatch | ||
| #3522 | reCAPTCHA for bbPress | 75 | 14 | 19 | 700 | Non-prefixed function | ||
| #3523 | Checkout & Store Toolkit for WooCommerce | 75 | 21 | 900 | Nonce verification recommended | |||
| #3524 | Custom Product Tabs Lite for WooCommerce | 75 | 3 | 11 | 4k+ | Input is not validated | ||
| #3525 | Brazilian Market on WooCommerce | 75 | 4 | 51 | 70k+ | Missing nonce verification | ||
| #3526 | Addonify – WooCommerce Wishlist | 76 | 30 | 43 | 1k+ | Non-prefixed global variable | ||
| #3527 | Aruba Fatturazione Elettronica | 76 | 34 | 700 | Missing nonce verification | |||
| #3528 | Auction Nudge – Your eBay Listings | 76 | 18 | 6 | 1k+ | Missing direct file access protection | ||
| #3529 | PiWeb Cancel order / Refund request for WooCommerce | 76 | 40 | 49 | 2k+ | wp function not compatible with requires wp | ||
| #3530 | Custom Template for LearnDash | 76 | 7 | 9 | 1k+ | Non-prefixed hook name | ||
| #3531 | Input Masks for Contact Form 7 | 76 | 143 | 12 | 800 | wp function not compatible with requires wp | ||
| #3532 | Leo Product Recommendations for WooCommerce | 76 | 3 | 79 | 400 | Short URL found | ||
| #3533 | ABC Crypto Checkout | 76 | 42 | 14 | 1k+ | Text Domain Mismatch | ||
| #3534 | Telephone Input For Contact Form 7 | 76 | 18 | 10 | 600 | Text Domain Mismatch | ||
| #3535 | Contact Form 7 Text CAPTCHA | 76 | 14 | 34 | 1k+ | Non-prefixed global variable | ||
| #3536 | Breadcrumbs for WooCommerce | 76 | 14 | 2 | 6k+ | Output is not escaped | ||
| #3537 | WP SAML Auth | 76 | 7 | 25 | 7k+ | Nonce verification recommended | ||
| #3538 | WPC Free Gift Coupons for WooCommerce | 76 | 4 | 19 | 400 | Non-prefixed class | ||
| #3539 | Canonical SEO Content Syndication WordPress Plugin | 77 | 4 | 8 | 400 | Missing nonce verification | ||
| #3540 | Honeypot Plus for Contact Form 7 | 77 | 3 | 17 | 700 | Missing nonce verification | ||
| #3541 | GDPR | 77 | 39 | 121 | 10k+ | Non-prefixed global variable | ||
| #3542 | Photo & Video Gallery – Image, Video & Portfolio | 77 | 4 | 10 | 1k+ | Missing Version | ||
| #3543 | Simple Floating Menu | 77 | 13 | 3 | 10k+ | Missing direct file access protection | ||
| #3544 | Username | 77 | 5 | 8 | 700 | Deprecated function: screen_icon | ||
| #3545 | Widget Classes | 77 | 5 | 7 | 1k+ | Missing nonce verification | ||
| #3546 | WPC Show Single Variations for WooCommerce | 77 | 1 | 26 | 1k+ | Nonce verification recommended | ||
| #3547 | wpsection | 77 | 131 | 554 | 3k+ | Non-prefixed global variable | ||
| #3548 | Instant AI Image Generator – Create & Import Images | 78 | 23 | 1k+ | Non-prefixed constant | |||
| #3549 | Animated Text Block – Add Typing and Looping Text Effects | 78 | 5 | 25 | 4k+ | Non-prefixed class | ||
| #3550 | Biteship Shipping | 78 | 25 | 16 | 500 | wp function not compatible with requires wp |