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 |
|---|---|---|---|---|---|---|---|---|
| #1151 | BackUpWordPress | 27 | 245 | 271 | 90k+ | Non-prefixed global variable | ||
| #1152 | Integration for HubSpot and Contact Form 7, WPForms, Elementor, Ninja Forms | 27 | 720 | 367 | 5k+ | Text Domain Mismatch | ||
| #1153 | WP Zoho for Contact Form 7, WPForms, Elementor, Formidable and Ninja Forms – CRM, Bigin | 27 | 692 | 381 | 3k+ | Text Domain Mismatch | ||
| #1154 | Church Content – Sermons, Events and More | 27 | 134 | 410 | 4k+ | Non-prefixed function | ||
| #1155 | Comment Link Remove and Other Comment Tools | 27 | 691 | 132 | 7k+ | Text Domain Mismatch | ||
| #1156 | Contact Form Generator : Creative form builder for WordPress | 27 | 1,076 | 1,510 | 800 | Output is not escaped | ||
| #1157 | Duplicate Post | 27 | 447 | 274 | 300k+ | Unsafe printing function | ||
| #1158 | Polls CP | 27 | 399 | 500 | 400 | Output is not escaped | ||
| #1159 | Custom Scrollbar | 27 | 184 | 191 | 2k+ | Output is not escaped | ||
| #1160 | Cyrlitera – Transliteration of Links and File Names | 27 | 453 | 204 | 40k+ | Output is not escaped | ||
| #1161 | Gallery – Photo Albums Plugin | 27 | 647 | 252 | 2k+ | Output is not escaped | ||
| #1162 | Echo Knowledge Base – Documentation, FAQs, Chat & Smart Search | 27 | 289 | 751 | 10k+ | Output is not escaped | ||
| #1163 | EZ SQL Reports Shortcode Widget and DB Backup | 27 | 165 | 158 | 500 | Output is not escaped | ||
| #1164 | Embedder for Google Reviews | 27 | 531 | 1,333 | 6k+ | Non-prefixed global variable | ||
| #1165 | CM Tooltip Glossary | 27 | 611 | 188 | 7k+ | Output is not escaped | ||
| #1166 | Events Calendar for GeoDirectory | 27 | 1,262 | 462 | 2k+ | Text Domain Mismatch | ||
| #1167 | Everest Backup – WordPress Cloud Backup, Migration, Restore & Cloning Plugin | 27 | 122 | 135 | 3k+ | Non-prefixed global variable | ||
| #1168 | Extra Product Options for WooCommerce | 27 | 548 | 1,342 | 600 | Non-prefixed global variable | ||
| #1169 | FG Joomla to WordPress | 27 | 278 | 101 | 7k+ | Unsafe printing function | ||
| #1170 | Foxtool All-in-One: Contact chat button, Custom login, Media optimize images | 27 | 1,629 | 360 | 7k+ | Unsafe printing function | ||
| #1171 | Frontend Post Submission Manager Lite – Frontend Posting WordPress Plugin | 27 | 212 | 497 | 2k+ | Non-prefixed global variable | ||
| #1172 | StylePress for Elementor | 27 | 767 | 283 | 600 | Text Domain Mismatch | ||
| #1173 | Login for Google Apps | 27 | 139 | 85 | 10k+ | Exception output is not escaped | ||
| #1174 | Gravity Forms Directory | 27 | 202 | 457 | 600 | Non-prefixed global variable | ||
| #1175 | Gravity Forms + Stripe | 27 | 368 | 210 | 600 | Output is not escaped | ||
| #1176 | GSpeech TTS – WordPress Text To Speech Plugin | 27 | 842 | 333 | 3k+ | Output is not escaped | ||
| #1177 | Hester Core | 27 | 253 | 103 | 10k+ | Output is not escaped | ||
| #1178 | HM Multiple Roles | 27 | 537 | 1,287 | 1k+ | Non-prefixed global variable | ||
| #1179 | ImageRecycle pdf & image compression | 27 | 329 | 204 | 1k+ | Text Domain Mismatch | ||
| #1180 | Import Eventbrite Events | 27 | 156 | 575 | 3k+ | Non-prefixed global variable | ||
| #1181 | iQ Block Country | 27 | 164 | 245 | 20k+ | Request data is not unslashed | ||
| #1182 | My Private Site – Make Your Whole Site Private, Force Login & Block Registration Spam | 27 | 713 | 321 | 10k+ | Text Domain Mismatch | ||
| #1183 | Ray Enterprise Translation | 27 | 87 | 606 | 8k+ | Non-prefixed global variable | ||
| #1184 | Loco Translate | 27 | 451 | 225 | 1m+ | Output is not escaped | ||
| #1185 | Login Security Solution | 27 | 216 | 154 | 4k+ | Output is not escaped | ||
| #1186 | LWS Optimize – All-in-One Speed Booster & Cache Tools | 27 | 34 | 518 | 10k+ | Non-prefixed global variable | ||
| #1187 | Magical Shop Builder – WooCommerce Template Builder for Elementor | Shop, Cart, Checkout & Product Page Builder | 27 | 76 | 459 | 3k+ | Non-prefixed namespace | ||
| #1188 | MakeCommerce for WooCommerce | 27 | 826 | 452 | 3k+ | Text Domain Mismatch | ||
| #1189 | Online Booking & Scheduling Calendar for WordPress by vcita | 27 | 473 | 161 | 1k+ | Output is not escaped | ||
| #1190 | Memberful – Membership Plugin | 27 | 351 | 336 | 1k+ | Text Domain Mismatch | ||
| #1191 | MLSImport – Download and synchronize real estate data from various MLS (Multiple Listing Services) | 27 | 154 | 551 | 5k+ | Non-prefixed global variable | ||
| #1192 | Multilanguage by BestWebSoft – WordPress Translation Plugin and Language Switcher | 27 | 465 | 345 | 3k+ | Text Domain Mismatch | ||
| #1193 | MW WP Form | 27 | 334 | 219 | 200k+ | Output is not escaped | ||
| #1194 | Nextend Social Login and Register | 27 | 1,668 | 243 | 200k+ | Output is not escaped | ||
| #1195 | Online Lesson Booking | 27 | 978 | 281 | 500 | Non Singular String Literal Domain | ||
| #1196 | Tussendoor – Open RDW | 27 | 301 | 140 | 600 | Text Domain Mismatch | ||
| #1197 | Packlink PRO for WooCommerce | 27 | 132 | 160 | 20k+ | Non-prefixed global variable | ||
| #1198 | picu – Online Photo Proofing Gallery | 27 | 613 | 325 | 2k+ | Output is not escaped | ||
| #1199 | Pie Register – User Registration, Profiles & Content Restriction | 27 | 1,779 | 1k+ | Non-prefixed global variable | |||
| #1200 | PowerPack Lite for Beaver Builder | 27 | 2,842 | 375 | 7k+ | Text Domain Mismatch |