WordPress.Security.NonceVerification.Recommended
Nonce verification recommended
The code reads request data in a place where Plugin Check recommends a nonce check.
Why It Shows Up
The scan saw request handling that may not always mutate state, but still looks like a user-triggered action that should usually be protected by a nonce.
Why It Matters
Adding a nonce reduces accidental or forged requests and documents that the action is expected to originate from the plugin UI.
How to Fix
- For admin forms and action links, add and verify a nonce.
- For AJAX handlers, use `check_ajax_referer()`.
- For public read-only endpoints, document why a nonce is not required and keep input validation strict.
References
Affected Plugins
| Rank | Plugin | Score | Errors | Warnings | Installs | Added | Updated | Top Issue |
|---|---|---|---|---|---|---|---|---|
| #201 | History Log by click5 | 22 | 675 | 1,290 | 400 | Direct Query | ||
| #202 | Csomagpontok és Címkék WooCommerce-hez | 22 | 2,001 | 769 | 7k+ | Text Domain Mismatch | ||
| #203 | IMPress for IDX Broker | 22 | 1,085 | 636 | 6k+ | Text Domain Mismatch | ||
| #204 | Insert or Embed Articulate Content into WordPress | 22 | 659 | 1,437 | 2k+ | Non-prefixed global variable | ||
| #205 | Számlázz.hu integráció WooCommerce-hez | 22 | 1,169 | 460 | 7k+ | Text Domain Mismatch | ||
| #206 | The Innovative Form Builder – IvyForms | 22 | 713 | 250 | 500 | Exception output is not escaped | ||
| #207 | InfiniteWP Client | 22 | 2,286 | 1,812 | 200k+ | Exception output is not escaped | ||
| #208 | Import WP – Export and Import CSV and XML files to WordPress | 22 | 580 | 330 | 4k+ | Exception output is not escaped | ||
| #209 | JCC Payment Gateway for Woocommerce | 22 | 2,273 | 1,136 | 600 | Text Domain Mismatch | ||
| #210 | JCH Optimize | 22 | 1,145 | 136 | 4k+ | Output is not escaped | ||
| #211 | Jetpack – WP Security, Backup, Speed, & Growth | 22 | 2,975 | 1,348 | 3m+ | Text Domain Mismatch | ||
| #212 | Jim Soft Swiss QR Invoice | 22 | 262 | 392 | 400 | Non-prefixed global variable | ||
| #213 | LearnPress – WordPress LMS Plugin for Create and Sell Online Courses | 22 | 2,369 | 3,349 | 70k+ | Non-prefixed global variable | ||
| #214 | Custom Login Page Customizer – Login Designer | 22 | 588 | 1,455 | 30k+ | Non-prefixed global variable | ||
| #215 | Mail Baby SMTP | 22 | 385 | 699 | 600 | SQL query is not prepared | ||
| #216 | MailOptin – Popup, Optin Forms & Email Newsletters for Mailchimp, HubSpot, AWeber Etc. | 22 | 2,625 | 2,458 | 10k+ | Output is not escaped | ||
| #217 | MarketKing — Ultimate WooCommerce Multivendor Marketplace Solution | 22 | 1,131 | 1,844 | 800 | Non-prefixed global variable | ||
| #218 | Slider, Gallery, and Carousel by MetaSlider – Image Slider, Video Slider | 22 | 207 | 323 | 500k+ | Non-prefixed global variable | ||
| #219 | Modula Image Gallery – Photo Grid & Video Gallery | 22 | 474 | 436 | 100k+ | Text Domain Mismatch | ||
| #220 | Molongui Authorship – Author Boxes, Guest Authors & Co-Authors for WordPress | 22 | 919 | 1,230 | 10k+ | Output is not escaped | ||
| #221 | Motors – Car Dealership & Classified Listings Plugin | 22 | 5,340 | 5,959 | 9k+ | Text Domain Mismatch | ||
| #222 | myCred Addons – Ultimate myCred Modules To Support WordPress Gamification and Loyalty Rewards | 22 | 2,344 | 1,320 | 400 | Output is not escaped | ||
| #223 | Newsletters | 22 | 2,968 | 2,248 | 2k+ | Text Domain Mismatch | ||
| #224 | NinjaFirewall (WP Edition) – Advanced Security Plugin and Firewall | 22 | 1,266 | 2,059 | 100k+ | Non-prefixed global variable | ||
| #225 | NinjaScanner – Virus & Malware scan | 22 | 596 | 551 | 30k+ | Non-prefixed global variable | ||
| #226 | WP OAuth Server (OAuth Authentication) | 22 | 189 | 347 | 3k+ | Non-prefixed function | ||
| #227 | oik | 22 | 489 | 180 | 2k+ | Non Singular String Literal Domain | ||
| #228 | Packeta | 22 | 801 | 333 | 8k+ | Exception output is not escaped | ||
| #229 | Packlink PRO for WooCommerce | 22 | 468 | 160 | 20k+ | badly named files | ||
| #230 | PagBank / PagSeguro Connect para WooCommerce | 22 | 504 | 757 | 4k+ | Non-prefixed global variable | ||
| #231 | PAYCOMET for WooCommerce | 22 | 1,206 | 423 | 2k+ | Text Domain Mismatch | ||
| #232 | PDF Builder for WPForms | 22 | 321 | 266 | 900 | SQL query is not prepared | ||
| #233 | Smart Popup by Supsystic | 22 | 3,172 | 503 | 10k+ | Non Singular String Literal Domain | ||
| #234 | 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 | ||
| #235 | Premium Addons for Elementor – Powerful Elementor Templates & Widgets | 22 | 223 | 1,036 | 700k+ | Non-prefixed hook name | ||
| #236 | Prime Mover – Migrate WordPress Website & Backups | 22 | 1,326 | 1,600 | 10k+ | Non-prefixed global variable | ||
| #237 | Product Catalog Feed by PixelYourSite | 22 | 581 | 357 | 8k+ | Output is not escaped | ||
| #238 | PageSpeed Ninja – Cache, Minify, Defer CSS JavaScript, Critical CSS, Optimize Images, Convert WebP | 22 | 984 | 407 | 5k+ | Unsafe printing function | ||
| #239 | Quick Contact Form | 22 | 260 | 623 | 1k+ | Non-prefixed function | ||
| #240 | RabbitLoader Cache: Optimize your Website for Speed | 22 | 241 | 163 | 2k+ | Output is not escaped | ||
| #241 | RealPress – Real Estate Plugin | 22 | 604 | 1,167 | 500 | Non-prefixed global variable | ||
| #242 | Restrict User Access – Ultimate Membership & Content Protection | 22 | 977 | 1,840 | 10k+ | Non-prefixed global variable | ||
| #243 | Salon Booking System – Free Version | 22 | 655 | 620 | 2k+ | Missing direct file access protection | ||
| #244 | Social Sharing Plugin – Sassy Social Share | 22 | 1,689 | 233 | 100k+ | wp function not compatible with requires wp | ||
| #245 | Sellsy | 22 | 586 | 490 | 400 | Non Singular String Literal Domain | ||
| #246 | Seraphinite Accelerator | 22 | 594 | 255 | 50k+ | Output is not escaped | ||
| #247 | ShortPixel Image Optimizer – Optimize Images, Convert WebP & AVIF | 22 | 1,044 | 800 | 300k+ | Non-prefixed global variable | ||
| #248 | Simple Job Board | 22 | 634 | 1,355 | 10k+ | Non-prefixed global variable | ||
| #249 | Slick Popup: Contact Form 7 Popup Plugin | 22 | 2,322 | 316 | 2k+ | Text Domain Mismatch | ||
| #250 | Slim Jetpack | 22 | 2,586 | 1,947 | 2k+ | Text Domain Mismatch |