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 |
|---|---|---|---|---|---|---|---|---|
| #201 | myCred Addons – Ultimate myCred Modules To Support WordPress Gamification and Loyalty Rewards | 22 | 2,344 | 1,320 | 400 | Output is not escaped | ||
| #202 | Simple Newsletter Plugin – Noptin | 22 | 73 | 599 | 10k+ | Non-prefixed global variable | ||
| #203 | Newsletters | 22 | 2,977 | 2,261 | 2k+ | Text Domain Mismatch | ||
| #204 | NinjaFirewall (WP Edition) – Advanced Security Plugin and Firewall | 22 | 1,263 | 2,046 | 100k+ | Non-prefixed global variable | ||
| #205 | NinjaScanner – Virus & Malware scan | 22 | 596 | 551 | 30k+ | Non-prefixed global variable | ||
| #206 | WP OAuth Server (OAuth Authentication) | 22 | 189 | 347 | 3k+ | Non-prefixed function | ||
| #207 | oik | 22 | 489 | 180 | 2k+ | Non Singular String Literal Domain | ||
| #208 | Packeta | 22 | 801 | 333 | 8k+ | Exception output is not escaped | ||
| #209 | PagBank / PagSeguro Connect para WooCommerce | 22 | 505 | 757 | 4k+ | Non-prefixed global variable | ||
| #210 | PAYCOMET for WooCommerce | 22 | 1,206 | 423 | 2k+ | Text Domain Mismatch | ||
| #211 | PDF Builder for WPForms | 22 | 321 | 266 | 900 | SQL query is not prepared | ||
| #212 | Smart Popup by Supsystic | 22 | 3,028 | 439 | 10k+ | Non Singular String Literal Domain | ||
| #213 | Post SMTP – Complete Email Deliverability and SMTP Solution with Email Logs, Alerts, Backup SMTP & Mobile App | 22 | 1,581 | 2,326 | 300k+ | Non-prefixed global variable | ||
| #214 | Premium Addons for Elementor – Elementor Templates, Widgets & MCP Tools | 22 | 208 | 1,134 | 600k+ | Non-prefixed hook name | ||
| #215 | Product Catalog Feed by PixelYourSite | 22 | 581 | 357 | 8k+ | Output is not escaped | ||
| #216 | PageSpeed Ninja – Cache, Minify, Defer CSS JavaScript, Critical CSS, Optimize Images, Convert WebP | 22 | 984 | 407 | 5k+ | Unsafe printing function | ||
| #217 | Quick Contact Form | 22 | 260 | 623 | 1k+ | Non-prefixed function | ||
| #218 | RabbitLoader Cache: Optimize your Website for Speed | 22 | 241 | 163 | 2k+ | Output is not escaped | ||
| #219 | RealPress – Real Estate Plugin | 22 | 604 | 1,167 | 400 | Non-prefixed global variable | ||
| #220 | Restrict User Access – Ultimate Membership & Content Protection | 22 | 977 | 1,840 | 10k+ | Non-prefixed global variable | ||
| #221 | Sellsy | 22 | 586 | 490 | 400 | Non Singular String Literal Domain | ||
| #222 | Seraphinite Accelerator | 22 | 595 | 255 | 50k+ | Output is not escaped | ||
| #223 | ShortPixel Image Optimizer – Optimize Images, Convert WebP & AVIF | 22 | 1,044 | 800 | 300k+ | Non-prefixed global variable | ||
| #224 | Simple Job Board | 22 | 634 | 1,355 | 10k+ | Non-prefixed global variable | ||
| #225 | Slim Jetpack | 22 | 2,586 | 1,947 | 2k+ | Text Domain Mismatch | ||
| #226 | NextScripts: Social Networks Auto-Poster | 22 | 2,408 | 1,133 | 20k+ | Output is not escaped | ||
| #227 | SSL Zen — SSL Certificate Installer & HTTPS Redirects | 22 | 751 | 1,605 | 10k+ | Non-prefixed global variable | ||
| #228 | Stylish Price List – Price Table Builder & QR Code Restaurant Menu | 22 | 674 | 678 | 3k+ | Output is not escaped | ||
| #229 | Swift Performance Lite | 22 | 2,346 | 1,325 | 6k+ | Text Domain Mismatch | ||
| #230 | 10Web Booster – Website speed optimization, Cache & Page Speed optimizer | 22 | 513 | 601 | 70k+ | Non-prefixed global variable | ||
| #231 | The Moneytizer | 22 | 751 | 271 | 1k+ | Text Domain Mismatch | ||
| #232 | Theme Editor | 22 | 798 | 685 | 50k+ | Output is not escaped | ||
| #233 | Uncanny Toolkit for LearnDash | 22 | 539 | 994 | 20k+ | Output is not escaped | ||
| #234 | Unlimited Elements Blocks Library | 22 | 708 | 1,822 | 400 | Non-prefixed global variable | ||
| #235 | RapidLoad AI – Optimize Web Vitals Automatically | 22 | 81 | 840 | 700 | Nonce verification recommended | ||
| #236 | Search & Replace Everything – Quick and Easy Way to Find and Replace Text, Links | 22 | 1,042 | 1,808 | 20k+ | Non-prefixed global variable | ||
| #237 | UpStream: a Project Management Plugin for WordPress | 22 | 683 | 703 | 600 | Non-prefixed global variable | ||
| #238 | Welcart e-Commerce | 22 | 10,368 | 10,882 | 10k+ | Text Domain Mismatch | ||
| #239 | Walker Core | 22 | 1,351 | 1,436 | 700 | Non-prefixed global variable | ||
| #240 | WCFM – Frontend Manager for WooCommerce | 22 | 4,731 | 5,057 | 20k+ | Non-prefixed global variable | ||
| #241 | WCFM Marketplace – Multivendor Marketplace for WooCommerce | 22 | 1,950 | 2,108 | 10k+ | Non-prefixed global variable | ||
| #242 | WCFM Membership – WooCommerce Memberships for Multivendor Marketplace | 22 | 559 | 675 | 10k+ | Non-prefixed global variable | ||
| #243 | Peach Payments Gateway | 22 | 334 | 143 | 1k+ | Non Singular String Literal Domain | ||
| #244 | Easy Appointment Booking & Scheduling System – Webba Booking Calendar | 22 | 1,617 | 3,380 | 2k+ | Non-prefixed global variable | ||
| #245 | Wenprise WeChatPay Payment Gateway For WooCommerce | 22 | 443 | 178 | 400 | Exception output is not escaped | ||
| #246 | WooCommerce | 22 | 1,343 | 6,210 | 7m+ | Non-prefixed global variable | ||
| #247 | Advanced AJAX Product Filters | 22 | 2,840 | 1,252 | 50k+ | Text Domain Mismatch | ||
| #248 | CoDesigner – All in One Elementor WooCommerce Builder | 22 | 4,131 | 774 | 5k+ | Text Domain Mismatch | ||
| #249 | Simple Shopping Cart | 22 | 800 | 541 | 10k+ | Unsafe printing function | ||
| #250 | WP Affiliate Disclosure | 22 | 1,358 | 1,504 | 1k+ | Non-prefixed global variable |