Description
The Create DB Tables plugin for WordPress is vulnerable to authorization bypass in all versions up to and including 1.2.1. The plugin registers admin_post action hooks for creating tables (admin_post_add_table) and deleting tables (admin_post_delete_db_table) without implementing any capability checks via current_user_can() or nonce verification via wp_verify_nonce()/check_admin_referer(). The admin_post hook only requires the user to be logged in, meaning any authenticated user including Subscribers can access these endpoints. The cdbt_delete_db_table() function takes a user-supplied table name from $_POST['db_table'] and executes a DROP TABLE SQL query, allowing any authenticated attacker to delete any database table including critical WordPress core tables such as wp_users or wp_options. The cdbt_create_new_table() function similarly allows creating arbitrary tables. This makes it possible for authenticated attackers, with Subscriber-level access and above, to create arbitrary database tables and delete any existing database table, potentially destroying the entire WordPress installation.
References10
- plugins.trac.wordpress.org/browser/create-db-tables/tags/1.2.1/…
- plugins.trac.wordpress.org/browser/create-db-tables/tags/1.2.1/…
- plugins.trac.wordpress.org/browser/create-db-tables/tags/1.2.1/…
- plugins.trac.wordpress.org/browser/create-db-tables/tags/1.2.1/…
- plugins.trac.wordpress.org/browser/create-db-tables/tags/1.2.1/…
- plugins.trac.wordpress.org/browser/create-db-tables/tags/1.2.1/…
- plugins.trac.wordpress.org/browser/create-db-tables/trunk/creat…
- plugins.trac.wordpress.org/browser/create-db-tables/trunk/creat…
- plugins.trac.wordpress.org/browser/create-db-tables/trunk/creat…
- plugins.trac.wordpress.org/browser/create-db-tables/trunk/creat…
Metrics
- CVSS 3.1
-
9.1
CRITICAL
Score source: CNA
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:H - EPSS — exploit probability
- 1% percentile: 55 · as of 13 November 2026
- CWE
- CWE-862
Could this be exploited in your environment?
A patch closes the known hole. A penetration test shows what an attacker can still reach — with proof.