PluginCheck.Security.DirectDB.UnescapedDBParameter

Database parameter is not escaped

A value is passed into database-related code without escaping, preparation, or strict allowlisting.

critical weight

Why It Shows Up

Plugin Check found a database parameter that appears to come from dynamic input without the usual `$wpdb->prepare()` protection.

Why It Matters

Database parameters often influence queries directly. Unsafe values can corrupt data access or create SQL injection risk.

How to Fix

  • Use `$wpdb->prepare()` for values.
  • Use explicit allowlists for table names, column names, order fields, and directions.
  • Sanitize and validate request data before it reaches query construction.

Affected Plugins

RankPluginScoreErrorsWarningsInstallsAddedUpdatedTop Issue
#1BulletProof Security05,0484,94920k+Output is not escaped
#2Live Shopping & Shoppable Videos For WooCommerce079174400Non-prefixed global variable
#3Plugin Check (PCP)012814010k+Non-prefixed global variable
#4Themify Builder95,3342,1715k+Text Domain Mismatch
#5JetBackup – Backup, Restore & Migrate101,567156200k+Exception output is not escaped
#6404 Solution155821,53210k+Non-prefixed class
#7Easy WP SMTP – WordPress SMTP and Email Logs: Gmail SMTP, Office 365, Outlook, Custom SMTP, and more1545166500k+Database parameter is not escaped
#8MDTF – Meta Data and Taxonomies Filter161,5501,9561k+Non-prefixed global variable
#9AnyComment174454495k+Output is not escaped
#10RestroPress – Online Food Ordering System175343,2071k+Non-prefixed global variable
#11Shopping Cart & eCommerce Store178,03817,4643k+Non-prefixed global variable
#12wpForo Forum174,3063,02620k+Unsafe printing function
#13WPtouch – Make your WordPress Website Mobile-Friendly171,46632550k+Text Domain Mismatch
#14Administrator Z182,061799400Output is not escaped
#15JetFormBuilder — Dynamic Blocks Form Builder182,1201,61580k+Text Domain Mismatch
#16Pagopar – WooCommerce Gateway185301,215400Non-prefixed global variable
#17Property Hive181,9576,0273k+Missing nonce verification
#18WPPizza – A Restaurant Plugin184,6892,7031k+Text Domain Mismatch
#19Block Slider – Responsive Image Slider, Video Slider & Post Slider195551,2913k+Non-prefixed global variable
#20Advanced File Manager – Ultimate File Manager for WordPress And Document Library Solution191,227892100k+Exception output is not escaped
#21GiveWP – Donation Plugin and Fundraising Platform193,4133,569100k+Output is not escaped
#22Go Fetch Jobs (for WP Job Manager)191,4101,741700Non-prefixed global variable
#23Leaflet Maps Marker (Google Maps, OpenStreetMap, Bing Maps)193,2753,2289k+Output is not escaped
#24Matomo Analytics – Powerful, Privacy-First Insights for WordPress191,975892100k+Exception output is not escaped
#25Netgsm193343081k+Setting is missing a sanitization callback
#26Verified Reviews (Avis Vérifiés)196711,136700Non-prefixed global variable
#27Really Simple Security – Simple and Performant Security (formerly Really Simple SSL)195313783m+Missing Translators Comment
#28Membership Plugin – Kadence Memberships195,0853,0039k+Text Domain Mismatch
#29Scrollsequence – Cinematic Scroll Image Animation Plugin198781,5283k+Non-prefixed global variable
#30SendPress Newsletters192,2931,4221k+Output is not escaped
#31SureCart – Ecommerce Made Easy For Selling Physical Products, Digital Downloads, Subscriptions, Donations, & Payments195341,16180k+Non-prefixed global variable
#32WP Email Template193443452k+Exception output is not escaped
#33WP Import Export Lite1973797940k+Non-prefixed global variable
#34WP Directory Kit191,5022,6412k+Non-prefixed global variable
#35AweBooking – Hotel Booking System203095141k+Non-prefixed global variable
#36Brizy – Page Builder2058572670k+Output is not escaped
#37Broadstreet20434273800Output is not escaped
#38Post Form – Registration Form – Profile Form for User Profiles – Frontend Content Forms for User Submissions (UGC)207362,112900Non-prefixed global variable
#39Cost Calculator Builder2032376620k+Non-prefixed global variable
#40Download Monitor204231,36780k+Non-prefixed hook name
#41Ebook Store204051,065700Non-prefixed global variable
#42Event Espresso – Event Registration & Ticketing Sales2012,6982,135600Text Domain Mismatch
#43Event Organiser201,10454420k+Text Domain Mismatch
#44EventPrime – Events Calendar, Bookings and Tickets208464,2117k+Non-prefixed global variable
#45GoUrl Bitcoin Payment Gateway & Paid Downloads & Membership201,832720700Non Singular String Literal Domain
#46MBE eShip205277401k+Non-prefixed global variable
#47Brevo – Email, SMS, Web Push, Chat, and more.20460646100k+Request data is not unslashed
#48MAS Videos205191,6931k+Non-prefixed global variable
#49Microthemer Lite – Visual Editor to Customize CSS201,0041,69910k+Non-prefixed global variable
#50Nimble Page Builder201,5911,68430k+Missing Arg Domain