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

RankPluginScoreErrorsWarningsInstallsAddedUpdatedTop Issue
#1651Open Graphite383802043k+Unsafe printing function
#1652Permalink Manager Lite3829178100k+Nonce verification recommended
#1653Remove WordPress Overhead3864471k+Text Domain Mismatch
#1654WP REST API – OAuth 1.0a Server38100858k+Text Domain Mismatch
#1655Like This3860171k+Output is not escaped
#1656RSS Feed Widget38207892k+Unsafe printing function
#1657Schema App Structured Data3835867k+Nonce verification recommended
#1658Author Image3851331k+Output is not escaped
#1659Shapely Companion38493910k+Output is not escaped
#1660Simple JWT Login – Allows you to use JWT on REST endpoints.38712954k+Output is not escaped
#1661Simple Keyword to Link3890493k+Non Singular String Literal Domain
#1662SimpleShop3852501k+date date
#1663Social Icons38728310k+Output is not escaped
#1664SOGO Accessibility38147405k+Non Singular String Literal Domain
#1665Sticky Header Effects for Elementor3824371300k+Text Domain Mismatch
#1666Sync Post With Other Site38179243k+Non Singular String Literal Domain
#1667Tag Manager – Header, Body And Footer389731920k+Non-prefixed global variable
#1668Variation Swatches for WooCommerce – Color, Image & Button Swatches3845642k+Output is not escaped
#1669TinyPNG – JPEG, PNG & WebP image compression38196141100k+Output is not escaped
#1670Twenty Eleven Theme Extensions3835303k+Output is not escaped
#1671Twitter for WordPress3847241k+Output is not escaped
#1672TypePad emoji for TinyMCE38100248k+Text Domain Mismatch
#1673Termly – GDPR/CCPA Cookie Consent Banner38549280k+Non-prefixed global variable
#1674Unconfirmed3820791k+Nonce verification recommended
#1675Use Any Font | Custom Font Uploader383753200k+Request data is not unslashed
#1676User Specific Content38143191k+Text Domain Mismatch
#1677FancyTube – Video Gallery, Video Slider, and Playlist Slider for YouTube38358341k+Text Domain Mismatch
#1678W2S – Migrate WooCommerce to Shopify38331321k+Non-prefixed global variable
#1679SSLCommerz Payment Gateway38211322k+Non-prefixed global variable
#1680WholesaleX – B2B & Wholesale Plugin for WooCommerce with Wholesale Prices38401802k+Non-prefixed global variable
#1681WPC Frequently Bought Together for WooCommerce388016210k+Output is not escaped
#1682Vietnam Checkout for WooCommerce389313710k+Nonce verification recommended
#1683WP Accessibility Helper (WAH)38618810k+Missing direct file access protection
#1684WP Content Copy Protection with Color Design3896615k+Non Singular String Literal Domain
#1685Real-Time Post Statistics for WordPress3863682k+SQL query is not prepared
#1686External Store for Shopify3897332k+Output is not escaped
#1687WP Terms Popup – Terms and Conditions and Privacy Policy WordPress Popups38299583k+Non Singular String Literal Domain
#1688Zoho Campaigns3831293k+Non-prefixed global variable
#1689ACF: Google Font Selector3957453k+Output is not escaped
#1690Add Tiktok Pixel for Tiktok ads (+Woocommerce)3994252k+Output is not escaped
#1691Advanced Product Fields (Product Addons) for WooCommerce3914514550k+Output is not escaped
#1692Advanced Woo Labels – Product Labels & Badges for WooCommerce3917212210k+Output is not escaped
#1693Accessibility by AllAccessible39200822k+Unsafe printing function
#1694Archive Control39151671k+Unsafe printing function
#1695Timeline – Vertical and Horizontal Timeline Layouts39500432k+Output is not escaped
#1696Better Search Replace3996431m+Unsafe printing function
#1697Billplz for WooCommerce39289656k+Text Domain Mismatch
#1698Birds Custom Login39196234k+Non Singular String Literal Domain
#1699Bogo393013910k+Request data is not unslashed
#1700BugSnag Error Monitoring plugin3952962k+wp function not compatible with requires wp