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 |
|---|---|---|---|---|---|---|---|---|
| #601 | Event Booking Manager for WooCommerce – Registration, RSVP, Calendar & Tickets | 24 | 969 | 2,140 | 7k+ | Non-prefixed global variable | ||
| #602 | Generate Images (AI) – Magic Post Thumbnail | 24 | 1,940 | 1,761 | 6k+ | Non-prefixed global variable | ||
| #603 | Mailchimp for WooCommerce | 24 | 523 | 663 | 200k+ | Non-prefixed global variable | ||
| #604 | MailerPress – Newsletter, email marketing & AI automation | 24 | 805 | 3,931 | 1k+ | Direct Query | ||
| #605 | Mailjet Email Marketing | 24 | 435 | 206 | 10k+ | Unsafe printing function | ||
| #606 | Mang Board WP | 24 | 1,213 | 4,720 | 9k+ | Non-prefixed global variable | ||
| #607 | Admin Tweaks | 24 | 1,507 | 206 | 900 | Text Domain Mismatch | ||
| #608 | Marketing Automation | 24 | 440 | 677 | 600 | Non-prefixed global variable | ||
| #609 | Media Library Folders | 24 | 889 | 807 | 10k+ | Text Domain Mismatch | ||
| #610 | Min and Max Quantity for WooCommerce | 24 | 603 | 459 | 20k+ | Text Domain Mismatch | ||
| #611 | Timetable and Event Schedule by MotoPress | 24 | 456 | 232 | 30k+ | Output is not escaped | ||
| #612 | MT Addons for Elementor | 24 | 3,073 | 1,442 | 2k+ | Text Domain Mismatch | ||
| #613 | MxChat – AI Chatbot & Content Generation for WordPress | 24 | 3,230 | 1,405 | 2k+ | Text Domain Mismatch | ||
| #614 | My WP Customize Admin/Frontend | 24 | 1,249 | 292 | 8k+ | Unsafe printing function | ||
| #615 | My Agile Privacy® – CMP, Cookie Consent & Privacy Tools | 24 | 1,170 | 674 | 7k+ | Text Domain Mismatch | ||
| #616 | Newsletter – Send awesome emails from WordPress | 24 | 898 | 2,217 | 200k+ | Non-prefixed global variable | ||
| #617 | Newsletter Subscription Form – User Subscriptions Form, Capture Email | 24 | 385 | 829 | 1k+ | Non-prefixed global variable | ||
| #618 | NEX-Forms – Ultimate Forms Plugin for WordPress | 24 | 2,008 | 1,195 | 6k+ | Text Domain Mismatch | ||
| #619 | Ninja Forms – The Contact Form Builder That Grows With You | 24 | 749 | 1,533 | 600k+ | Nonce verification recommended | ||
| #620 | NotificationX – FOMO, Live Sales Notification, WooCommerce Sales Popup, GDPR, Social Proof, Announcement Banner & Floating Notification Bar | 24 | 267 | 404 | 40k+ | Non-prefixed hook name | ||
| #621 | Omnipress | 24 | 169 | 245 | 800 | Non-prefixed global variable | ||
| #622 | Opt-Out for Google Analytics (DSGVO / GDPR) | 24 | 290 | 1,978 | 3k+ | Non-prefixed global variable | ||
| #623 | Pagar.me para WooCommerce | 24 | 549 | 116 | 5k+ | Text Domain Mismatch | ||
| #624 | Page Builder: Pagelayer – Drag and Drop website builder | 24 | 769 | 556 | 400k+ | Output is not escaped | ||
| #625 | Pagination Styler for WooCommerce | 24 | 799 | 448 | 1k+ | Output is not escaped | ||
| #626 | Participants Database | 24 | 951 | 894 | 7k+ | SQL query is not prepared | ||
| #627 | Paymob for WooCommerce | 24 | 348 | 288 | 5k+ | Text Domain Mismatch | ||
| #628 | PDF for Gravity Forms + Drag And Drop Template Builder | 24 | 1,457 | 260 | 400 | wp function not compatible with requires wp | ||
| #629 | PeproDev Ultimate Invoice | 24 | 379 | 234 | 4k+ | Output is not escaped | ||
| #630 | Database Manager – WP Adminer | 24 | 1,005 | 2,752 | 20k+ | Non-prefixed global variable | ||
| #631 | PixelYourSite – Your smart PIXEL (TAG) & API Manager | 24 | 1,176 | 2,416 | 500k+ | Non-prefixed namespace | ||
| #632 | Post Slider and Post Carousel with Post Vertical Scrolling Widget – A Responsive Post Slider | 24 | 599 | 1,532 | 10k+ | Non-prefixed global variable | ||
| #633 | Post Status Notifier Lite | 24 | 984 | 451 | 700 | Missing direct file access protection | ||
| #634 | Product Catalog Simple | 24 | 1,555 | 1,982 | 1k+ | Output is not escaped | ||
| #635 | Post Affiliate Pro | 24 | 293 | 335 | 500 | Nonce verification recommended | ||
| #636 | Premium Blocks – Gutenberg Blocks, Patterns & Templates | 24 | 140 | 308 | 2k+ | Non-prefixed function | ||
| #637 | Premmerce Brands for WooCommerce | 24 | 700 | 1,344 | 2k+ | Non-prefixed global variable | ||
| #638 | Product Editor Pro – WooCommerce Bulk Edit: Prices, Stock, Images, Titles, CSV Import & More | 24 | 2,154 | 4,833 | 1k+ | Non-prefixed global variable | ||
| #639 | Product Tabs Manager for WooCommerce | 24 | 634 | 482 | 2k+ | Text Domain Mismatch | ||
| #640 | Product Watermark for WooCommerce | 24 | 685 | 459 | 2k+ | Text Domain Mismatch | ||
| #641 | Products Compare for WooCommerce | 24 | 1,022 | 695 | 1k+ | Output is not escaped | ||
| #642 | ProfileGrid – User Profiles, Groups and Communities | 24 | 483 | 2,461 | 5k+ | Non-prefixed global variable | ||
| #643 | Co-Authors, Multiple Authors and Guest Authors in an Author Box with PublishPress Authors | 24 | 369 | 820 | 20k+ | Nonce verification recommended | ||
| #644 | PickPlugins Question Answer | 24 | 32 | 1,413 | 400 | Non-prefixed global variable | ||
| #645 | Quick Event Manager | 24 | 152 | 388 | 1k+ | Non-prefixed function | ||
| #646 | Quiz and Survey Master (QSM) – Easy Quiz and Survey Maker | 24 | 407 | 2,587 | 40k+ | Non-prefixed hook name | ||
| #647 | reGenerate Thumbnails Advanced | 24 | 220 | 122 | 70k+ | Unsafe printing function | ||
| #648 | Registrations for the Events Calendar – Event Registration Plugin | 24 | 404 | 944 | 7k+ | Non-prefixed global variable | ||
| #649 | RS WP Book Showcase – A Complete Book Catalogue & Library System | 24 | 910 | 343 | 1k+ | Text Domain Mismatch | ||
| #650 | RSFirewall! | 24 | 563 | 521 | 4k+ | Output is not escaped |