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 |
|---|---|---|---|---|---|---|---|---|
| #4551 | Multiple Post Passwords | 61 | 13 | 15 | 2k+ | Output is not escaped | ||
| #4552 | Order On Mobile for WooCommerce | 61 | 37 | 15 | 2k+ | Text Domain Mismatch | ||
| #4553 | Organic Custom Content | 61 | 8 | 18 | 700 | Input is not sanitized | ||
| #4554 | Post/Page Import Export – Migrate Content with Custom Fields & Taxonomies | 61 | 12 | 27 | 400 | Input is not sanitized | ||
| #4555 | Powerkit – Supercharge your WordPress Site | 61 | 67 | 116 | 10k+ | Non-prefixed global variable | ||
| #4556 | Remove Featured Image | 61 | 21 | 12 | 1k+ | Missing Arg Domain | ||
| #4557 | SEOPress for MainWP | 61 | 240 | 106 | 900 | Text Domain Mismatch | ||
| #4558 | SHK Hide Title | 61 | 19 | 4 | 3k+ | Output is not escaped | ||
| #4559 | Simple User Avatar | 61 | 8 | 14 | 20k+ | Output is not escaped | ||
| #4560 | Slider Factory | 61 | 3 | 414 | 2k+ | Non-prefixed global variable | ||
| #4561 | Team Showcase | 61 | 1 | 125 | 1k+ | slow db query meta key | ||
| #4562 | Two Factor (2FA) Authentication via Email | 61 | 12 | 27 | 9k+ | Request data is not unslashed | ||
| #4563 | whatwedo ACF Cleaner | 61 | 8 | 20 | 800 | Input is not validated | ||
| #4564 | When Last Login – Export User Records | 61 | 18 | 13 | 500 | Output is not escaped | ||
| #4565 | Order Weight for WooCommerce | 61 | 24 | 34 | 600 | Text Domain Mismatch | ||
| #4566 | Products Restricted Users for WooCommerce | 61 | 31 | 24 | 400 | wp function not compatible with requires wp | ||
| #4567 | More Sorting Options for WooCommerce | 61 | 27 | 17 | 3k+ | Output is not escaped | ||
| #4568 | wp-cleanumlauts2 | 61 | 32 | 22 | 1k+ | Output is not escaped | ||
| #4569 | WP-CORS | 61 | 7 | 23 | 1k+ | error log error log | ||
| #4570 | RSS Feed Retriever | 61 | 23 | 8 | 7k+ | wp function not compatible with requires wp | ||
| #4571 | WP YouTube Player | 61 | 14 | 17 | 1k+ | Output is not escaped | ||
| #4572 | Add Meta Tag Keywords | 62 | 6 | 15 | 1k+ | Missing nonce verification | ||
| #4573 | AMP Contact FORM 7 – AMPCF7 | 62 | 9 | 13 | 500 | Input is not validated | ||
| #4574 | AMS Post And Page Duplicator | 62 | 14 | 13 | 600 | Text Domain Mismatch | ||
| #4575 | ARI Fancy Lightbox – Popup for WordPress | 62 | 8 | 107 | 10k+ | Non-prefixed namespace | ||
| #4576 | Contact Form 7 – Blacklist Unwanted Email | 62 | 16 | 11 | 400 | Missing direct file access protection | ||
| #4577 | Bulk edit publish date | 62 | 11 | 16 | 1k+ | Nonce verification recommended | ||
| #4578 | Bulk Page Creator | 62 | 9 | 17 | 10k+ | Request data is not unslashed | ||
| #4579 | Carousel Slider | 62 | 71 | 30k+ | Non-prefixed global variable | |||
| #4580 | Christmas Panda | 62 | 14 | 45 | 400 | Input is not validated | ||
| #4581 | Custom Permalink Editor | 62 | 4 | 51 | 3k+ | Non-prefixed hook name | ||
| #4582 | Custom Sidebars by ProteusThemes | 62 | 17 | 23 | 1k+ | Missing nonce verification | ||
| #4583 | Dashboard Widget Sidebar | 62 | 9 | 16 | 400 | Input is not validated | ||
| #4584 | Disable Visual Editor WYSIWYG | 62 | 10 | 12 | 1k+ | Nonce verification recommended | ||
| #4585 | DreamHost Automated Migration | 62 | 15 | 23 | 20k+ | Output is not escaped | ||
| #4586 | Falcon – WordPress Optimizations & Tweaks | 62 | 47 | 66 | 2k+ | Short PHP open tag found | ||
| #4587 | Get Chat App | 62 | 10 | 62 | 400 | Request data is not unslashed | ||
| #4588 | GetGenie – AI Content Writer with Keyword Research & SEO Tracking | 62 | 13 | 39 | 80k+ | Nonce verification recommended | ||
| #4589 | Hestia Nginx Cache | 62 | 21 | 8 | 1k+ | Output is not escaped | ||
| #4590 | Import entries for Gravity Forms | 62 | 6 | 26 | 500 | Input is not validated | ||
| #4591 | Cron Jobs | 62 | 21 | 33 | 2k+ | Nonce verification recommended | ||
| #4592 | MainWP Key Maker | 62 | 3 | 35 | 4k+ | Input is not sanitized | ||
| #4593 | Migrate To Liquid Web & Nexcess | 62 | 15 | 23 | 2k+ | Output is not escaped | ||
| #4594 | Nimbata Call Tracking | 62 | 13 | 11 | 400 | Non-prefixed function | ||
| #4595 | Notibar – Notification Bar for WordPress | 62 | 47 | 64 | 8k+ | wp function not compatible with requires wp | ||
| #4596 | payOS | 62 | 19 | 26 | 500 | Request data is not unslashed | ||
| #4597 | Pressable Automated Migration | 62 | 15 | 23 | 3k+ | Output is not escaped | ||
| #4598 | Proofreading | 62 | 11 | 74 | 5k+ | Direct Query | ||
| #4599 | Responsive Slider Gallery – Responsive Image Photo Slider | 62 | 32 | 122 | 2k+ | Non-prefixed global variable | ||
| #4600 | Easy SSL Plugin for SAKURA Rental Server | 62 | 23 | 17 | 50k+ | Input is not sanitized |