WP-DATA-ACCESS · CVE-2026-118267 · Package
FIX → 5.5.90
The WP Data Access plugin for WordPress lets authenticated users write to database rows and columns that its read endpoints protect, including the administrator's password hash in wp_users. An attacker with a Subscriber account can take over the whole site by logging in as the administrator.
first public Nov 7, 2026 · 2 sources
Check it with your coding agent
It checks your repository and tells you if you’re affected, with the fix.
Sites running the WP Data Access plugin at version 5.5.89 or lower. On a default installation the attacker needs a Subscriber-level account; an unauthenticated attacker can exploit it only if an administrator has published a Data App with anonymous authorization and write transactions enabled. Sites without the plugin, or without writable Data Apps, are not exposed.
Not affected if auth-required, no-writable-data-apps, plugin-not-installed
Who cares self-hosted, wordpress, wp-data-access
Upgrade to 5.5.90
5.5.90 or later (5.5.92 is current as of 2026-11-06)The WP Data Access – App Builder for Tables, Forms, Dashboards, Charts & Maps plugin for WordPress is vulnerable to Incorrect Authorization leading to Privilege Escalation in all versions up to, and including, 5.5.89 This is due to the plugin's write endpoints (wpda/app/update, wpda/app/delete, wpda/app/insert) passing the attacker-supplied key and val parameters directly to $wpdadb->update, $wpdadb->delete, and $wpdadb->insert without enforcing the container's row-filter (defaultWhere) or per-column allow-list (isSelected) restrictions that are correctly applied on the read endpoints. This makes it possible for authenticated attackers, with Subscriber-level access and above, to write to arbitrary rows and columns outside the configured restrictions — including overwriting the user_pass field of the WordPress administrator account in wp_users — and subsequently authenticate as the administrator, achieving full site takeover. Exploitation requires an administrator to have published a Data App that enables write transactions (update, delete, or insert) for Subscriber-level or anonymous users, which is an explicitly advertised use-case of the plugin. Exploitation by unauthenticated attackers requires that the administrator has published a Data App whose rest_api.authorization is 'anonymous' and whose container has transactions.update (or delete/insert) enabled. On a default installation, where that is not configured, the vulnerability requires attackers with subscriber-level access and above.
Are you affected?
Tell InfraStack what you run. It checks this one, and every next one, against your stack.
Ask from here. InfraStack checks the affected versions against your stack and answers in your inbox.
InfraStack checks the affected versions against your stack and answers in Slack, with the evidence and the fix.
5.5.90 lists Enforce default WHERE clause on transactionsThis page as .md · .json · CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H
NVD data is provided by NIST and is public domain. Posts quoted belong to their authors.