WordPress.Security.ValidatedSanitizedInput.InputNotSanitized
Input is not sanitized
Request data is used without being cleaned for the expected type or format.
Why It Shows Up
The scan found superglobal input flowing into code without a sanitizer such as `sanitize_text_field()`, `absint()`, `sanitize_key()`, `esc_url_raw()`, or a custom allowlist.
Why It Matters
Unsanitized input can pollute stored settings, alter logic, break queries, or become part of a later security issue.
How to Fix
- Unslash request data with `wp_unslash()` first.
- Choose the sanitizer for the expected value, such as `absint()` for IDs or `sanitize_key()` for keys.
- Use allowlists for actions, sort fields, file names, option names, and other constrained values.
Affected Plugins
| Rank | Plugin | Score | Errors | Warnings | Installs | Added | Updated | Top Issue |
|---|---|---|---|---|---|---|---|---|
| #1751 | Multi Currency For WooCommerce | 32 | 87 | 70 | 1k+ | Non-prefixed global variable | ||
| #1752 | Webdzier Companion | 32 | 539 | 89 | 800 | Text Domain Mismatch | ||
| #1753 | WebwinkelKeur: Webshop keurmerk & reviews for WordPress | 32 | 200 | 47 | 4k+ | Short PHP open tag found | ||
| #1754 | Management App for WooCommerce – Order notifications, Order management, Lead management, Uptime Monitoring | 32 | 196 | 160 | 900 | Text Domain Mismatch | ||
| #1755 | Easy 3D Viewer | 32 | 399 | 241 | 1k+ | Text Domain Mismatch | ||
| #1756 | BEAR – Bulk Editor and Products Manager Professional for WooCommerce by Pluginus.Net | 32 | 5 | 933 | 40k+ | Non-prefixed global variable | ||
| #1757 | Payment Gateway for Redsys & WooCommerce Lite | 32 | 125 | 75 | 20k+ | Text Domain Mismatch | ||
| #1758 | WooMS | 32 | 199 | 58 | 500 | Output is not escaped | ||
| #1759 | WP 2-step verification | 32 | 154 | 65 | 1k+ | Output is not escaped | ||
| #1760 | WP Bannerize Pro | 32 | 281 | 216 | 800 | Text Domain Mismatch | ||
| #1761 | WP fail2ban – Advanced Security | 32 | 75 | 153 | 60k+ | Dynamic hook name | ||
| #1762 | wp-jalali | 32 | 219 | 66 | 10k+ | Text Domain Mismatch | ||
| #1763 | WP Popup | 32 | 539 | 65 | 1k+ | Text Domain Mismatch | ||
| #1764 | SEOPress – AI SEO Plugin & On-site SEO | 32 | 138 | 429 | 300k+ | Non-prefixed global variable | ||
| #1765 | WP-Stats | 32 | 237 | 126 | 2k+ | Output is not escaped | ||
| #1766 | WP Weixin | 32 | 60 | 152 | 400 | Non-prefixed constant | ||
| #1767 | WPCasa – Real Estate for WordPress | 32 | 85 | 429 | 1k+ | Non-prefixed global variable | ||
| #1768 | wpDirAuth | 32 | 250 | 135 | 500 | wp function not compatible with requires wp | ||
| #1769 | Privacy Policy Generator, Terms & Conditions, GDPR, CCPA, Cookie Policy & Disclaimer Templates – WPLP Legal Pages | 32 | 26 | 409 | 10k+ | Non-prefixed global variable | ||
| #1770 | WT GeoTargeting | 32 | 89 | 43 | 1k+ | Output is not escaped | ||
| #1771 | YITH Infinite Scrolling | 32 | 387 | 1,417 | 10k+ | Non-prefixed global variable | ||
| #1772 | YITH WooCommerce Badge Management | 32 | 413 | 1,446 | 10k+ | Non-prefixed global variable | ||
| #1773 | YITH WooCommerce Compare | 32 | 422 | 1,508 | 100k+ | Non-prefixed global variable | ||
| #1774 | YITH WooCommerce Quick View | 32 | 388 | 1,420 | 90k+ | Non-prefixed global variable | ||
| #1775 | Yoo Slider – Image Slider & Video Slider | 32 | 744 | 209 | 600 | Output is not escaped | ||
| #1776 | Advanced Coupons for WooCommerce Coupons & Store Credit | 33 | 84 | 215 | 20k+ | Non-prefixed global variable | ||
| #1777 | Advanced Forms for ACF | 33 | 169 | 278 | 3k+ | Non-prefixed hook name | ||
| #1778 | Agile CRM | 33 | 163 | 81 | 600 | wp function not compatible with requires wp | ||
| #1779 | AI WP Writer – SEO content generator, chatGPT, Gemini | 33 | 581 | 531 | 3k+ | Text Domain Mismatch | ||
| #1780 | App Builder – Create Native Android & iOS Apps On The Flight | 33 | 73 | 119 | 600 | Text Domain Mismatch | ||
| #1781 | Archive Posts Sort Customize | 33 | 338 | 97 | 600 | Output is not escaped | ||
| #1782 | Premium Portfolio Features for Phlox theme | 33 | 204 | 137 | 40k+ | Output is not escaped | ||
| #1783 | AWeber – Free Sign Up Form and Landing Page Builder Plugin for Lead Generation and Email Newsletter Growth | 33 | 33 | 229 | 9k+ | Non-prefixed global variable | ||
| #1784 | Awesome Widgets for SiteOrigin Page Builder | 33 | 314 | 59 | 500 | Text Domain Mismatch | ||
| #1785 | Background Per Page | 33 | 80 | 56 | 700 | Text Domain Mismatch | ||
| #1786 | Ultimate Before After Image Slider & Gallery – BEAF | 33 | 488 | 87 | 30k+ | Text Domain Mismatch | ||
| #1787 | Bosta WooCommerce | 33 | 303 | 180 | 700 | Text Domain Mismatch | ||
| #1788 | Activity Plus Reloaded for BuddyPress | 33 | 88 | 93 | 1k+ | Output is not escaped | ||
| #1789 | Five Star Business Profile and Schema | 33 | 289 | 138 | 7k+ | Output is not escaped | ||
| #1790 | Addi – Cuotas que se adaptan a ti | 33 | 106 | 209 | 2k+ | Direct Query | ||
| #1791 | Cargus | 33 | 48 | 64 | 700 | Input is not sanitized | ||
| #1792 | Nexi XPay | 33 | 496 | 277 | 6k+ | Text Domain Mismatch | ||
| #1793 | CartPops – High Converting Add To Cart Popup For WooCommerce | 33 | 63 | 188 | 4k+ | Non-prefixed global variable | ||
| #1794 | Century ToolKit | 33 | 118 | 78 | 700 | Output is not escaped | ||
| #1795 | Chartify – WordPress Chart Plugin | 33 | 76 | 411 | 3k+ | Non-prefixed global variable | ||
| #1796 | Civic Cookie Control | 33 | 1,881 | 219 | 2k+ | Text Domain Mismatch | ||
| #1797 | Clicky Analytics | 33 | 166 | 92 | 10k+ | Output is not escaped | ||
| #1798 | Companion Auto Update | 33 | 159 | 298 | 40k+ | Direct Query | ||
| #1799 | Companion Sitemap Generator – Simple, Smart, and SEO-Ready | 33 | 118 | 57 | 7k+ | Missing Translators Comment | ||
| #1800 | Contact Form Block | 33 | 64 | 73 | 500 | Non Singular String Literal Domain |