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 |
|---|---|---|---|---|---|---|---|---|
| #5201 | Nav Menu Roles | 84 | 3 | 18 | 70k+ | Non-prefixed hook name | ||
| #5202 | Video Gallery YouTube Vimeo with Youtube API | 84 | 2 | 181 | 1k+ | Non-prefixed global variable | ||
| #5203 | PW WooCommerce Exclude Free Shipping | 84 | 1 | 12 | 1k+ | Missing nonce verification | ||
| #5204 | Replace Image | 84 | 5 | 13 | 9k+ | Input is not sanitized | ||
| #5205 | Search by ID | 84 | 3 | 5 | 700 | Input is not sanitized | ||
| #5206 | UTMs Carry Pages | 84 | 4 | 11 | 400 | Non-prefixed global variable | ||
| #5207 | WP Force Lowercase URLs | 84 | 2 | 9 | 6k+ | trademarked term | ||
| #5208 | WP Link Preview | 84 | 4 | 9 | 500 | trademarked term | ||
| #5209 | Logo Slider and Showcase | 84 | 2 | 15 | 7k+ | Missing nonce verification | ||
| #5210 | ACF Nav Menu Field | 85 | 16 | 6 | 2k+ | Text Domain Mismatch | ||
| #5211 | Backlinks Saver | 85 | 3 | 5 | 3k+ | Deprecated parameter value found | ||
| #5212 | Popups – Submission Messages For Contact Form 7 | 85 | 2 | 7 | 3k+ | Input is not sanitized | ||
| #5213 | Envíos Coordinadora Woocommerce (Oficial) – WordPress plugin | 85 | 11 | 11 | 600 | Missing Arg Domain | ||
| #5214 | Custom Classes | 85 | 5 | 8 | 2k+ | Request data is not unslashed | ||
| #5215 | reCaptcha Add-On for FormCraft | 85 | 4 | 16 | 7k+ | Missing Version | ||
| #5216 | Jotform – AI Chatbot | 85 | 8 | 5k+ | Input is not validated | |||
| #5217 | Madquick WP Legal Pages – One Click, 100% Free | 85 | 5 | 55 | 600 | Non-prefixed global variable | ||
| #5218 | Marquee Running Text | 85 | 11 | 7 | 5k+ | Missing direct file access protection | ||
| #5219 | MD5 Media Renamer | 85 | 8 | 19 | 400 | Non-prefixed global variable | ||
| #5220 | PlayerJS – Free Custom HTML5 Video and Audio Player Builder | 85 | 1 | 13 | 1k+ | Missing Version | ||
| #5221 | Remove Footer Credit | 85 | 7 | 31 | 70k+ | Non-prefixed global variable | ||
| #5222 | Social Share Button | 85 | 1 | 707 | 1k+ | Non-prefixed global variable | ||
| #5223 | Static 404 | 85 | 1 | 7 | 3k+ | Input is not sanitized | ||
| #5224 | StoreOne Extension | 85 | 68 | 7 | 400 | Text Domain Mismatch | ||
| #5225 | TinyMCE Color Picker | 85 | 2 | 7 | 1k+ | Input is not sanitized | ||
| #5226 | Widget CSS Classes | 85 | 47 | 8 | 80k+ | Non Singular String Literal Domain | ||
| #5227 | Export Orders for WooCommerce – CSV, Excel, XML, JSON & PDF Export | 85 | 24 | 9 | 400 | wp function not compatible with requires wp | ||
| #5228 | Astra Widgets | 86 | 10 | 15 | 200k+ | Missing direct file access protection | ||
| #5229 | Catch Breadcrumb | 86 | 1 | 29 | 2k+ | Non-prefixed global variable | ||
| #5230 | Classic Editor + | 86 | 1 | 4 | 40k+ | Input is not sanitized | ||
| #5231 | HD Quiz – Save Results Light | 86 | 4 | 8 | 1k+ | Missing nonce verification | ||
| #5232 | Payment Gateway Icons For WooCommerce | 86 | 2 | 4 | 1k+ | Input is not sanitized | ||
| #5233 | Sharespine Woocommerce Connector | 86 | 2 | 16 | 500 | error log error log | ||
| #5234 | Title Remover | 86 | 7 | 5 | 70k+ | wp function not compatible with requires wp | ||
| #5235 | Trusted Shops Easy Integration for WooCommerce | 86 | 5 | 67 | 6k+ | Non-prefixed hook name | ||
| #5236 | Ultimate Markdown – Markdown Editor, Importer, & Exporter | 86 | 6 | 15 | 1k+ | Database parameter is not escaped | ||
| #5237 | VenoMaps – OpenStreetMap & Privacy-Friendly Geo Maps | 86 | 20 | 6 | 400 | wp function not compatible with requires wp | ||
| #5238 | Delete product images for WooCommerce | 86 | 3 | 13 | 1k+ | Direct Query | ||
| #5239 | PayPal Enterprise Payments (formerly Braintree) for WooCommerce | 86 | 3 | 33 | 10k+ | Direct Query | ||
| #5240 | WooCommerce Payfast Gateway | 86 | 90 | 47 | 30k+ | Text Domain Mismatch | ||
| #5241 | WordClever – AI Content Writer | 86 | 4 | 2 | 3k+ | Missing direct file access protection | ||
| #5242 | WP Consent API | 86 | 2 | 10 | 200k+ | Input is not sanitized | ||
| #5243 | WP101 Video Tutorial Plugin | 86 | 15 | 18 | 10k+ | Missing direct file access protection | ||
| #5244 | Advanced Image Comparison for Elementor | 87 | 1 | 5 | 1k+ | Nonce verification recommended | ||
| #5245 | LocoAI – Auto Translate for Loco Translate | 87 | 10 | 41 | 70k+ | Non-prefixed global variable | ||
| #5246 | Catch Infinite Scroll | 87 | 20 | 10k+ | Non-prefixed global variable | |||
| #5247 | SmartText Rotator – Add Motion to Your Words | 87 | 88 | 6 | 1k+ | Text Domain Mismatch | ||
| #5248 | Manage/View Your Posts Only | 87 | 5 | 3 | 400 | Input is not sanitized | ||
| #5249 | Menu Caching | 87 | 3 | 12 | 500 | Request data is not unslashed | ||
| #5250 | Parallax Section Block – Add Parallax Scrolling Effects to Sections. | 87 | 3 | 22 | 3k+ | Non-prefixed global variable |