WordPress Create DB Tables Plugin Authorization Bypass Vulnerability (CVE-2026-4119)
The Create DB Tables plugin for WordPress versions 1.2.1 and earlier is vulnerable to an authorization bypass, allowing authenticated users to create and delete database tables without proper checks, potentially leading to complete site destruction.
The Create DB Tables plugin, versions 1.2.1 and earlier, suffers from an authorization bypass vulnerability (CVE-2026-4119). This flaw stems from the plugin’s failure to implement capability checks or nonce verification for its admin_post action hooks, specifically those responsible for creating (admin_post_add_table) and deleting (admin_post_delete_db_table) database tables. Because the admin_post hook only requires a user to be logged in, any authenticated user, including those with the lowest Subscriber role, can access these endpoints. This oversight allows malicious actors to create arbitrary database tables or, more critically, delete existing ones, including vital WordPress core tables. The vulnerability was published on 2026-04-22, and given the severity, defenders should immediately address this risk. The affected versions of the plugin should be updated or removed to prevent potential exploitation.
Attack Chain
- An attacker registers an account on a vulnerable WordPress site, gaining Subscriber-level access.
- The attacker crafts a POST request to
wp-admin/admin-post.phpwith the action parameter set toadd_tableordelete_db_table. - The attacker provides the
db_tableparameter with the name of the table to be deleted, if exploiting thedelete_db_tableaction. - The server processes the request without proper authorization checks, because
current_user_can()andwp_verify_nonce()are missing. - The
cdbt_delete_db_table()function executes aDROP TABLESQL query based on the user-supplieddb_tableparameter. - If the attacker targets a critical WordPress core table like
wp_usersorwp_options, the site’s functionality will be severely impacted. - Alternatively, if exploiting the
add_tableaction, thecdbt_create_new_table()function executes aCREATE TABLESQL query, creating an arbitrary database table. - Successful exploitation can lead to complete destruction of the WordPress installation or the introduction of malicious database tables.
Impact
Successful exploitation of this vulnerability allows any authenticated user to delete arbitrary database tables, including critical WordPress core tables. This can lead to complete site destruction and data loss. An attacker could delete the wp_users table, effectively locking out all administrators and other users, or delete the wp_options table, causing the site to revert to its default state or become completely unusable. The CVSS v3.1 base score for this vulnerability is 9.1, highlighting the critical nature of the risk.
Recommendation
- Immediately update the Create DB Tables plugin to a version higher than 1.2.1, where this vulnerability is patched.
- Monitor web server logs for POST requests to
wp-admin/admin-post.phpwithaction=delete_db_tableoraction=add_table(see rule: “Detect Unauthorized DB Table Modification”). - Implement a Web Application Firewall (WAF) rule to block requests to
wp-admin/admin-post.phpwith the vulnerable actions unless originating from an administrator (see rule: “WAF - Block Unauthorized DB Table Modification”).
Detection coverage 2
Detect Unauthorized DB Table Modification
highDetects POST requests to wp-admin/admin-post.php with actions related to database table manipulation, indicating potential unauthorized access.
WAF - Block Unauthorized DB Table Modification
criticalThis rule detects and blocks POST requests to wp-admin/admin-post.php with actions related to database table manipulation if not originating from an admin IP address.
Detection queries are kept inside the platform. Get full rules →