SUREDASH · CVE-2026-123769 · Package
NO FIX YET · SEE WHAT TO DO
The SureDash WordPress plugin lets a user with the Portal Manager role overwrite the default registration role to administrator through its settings REST endpoint. A later public registration then creates a full WordPress administrator account controlled by the attacker.
first public Nov 13, 2026 · 1 source
Check it with your coding agent
It reads this page and tells you if your code or app is affected.
Sites running the SureDash plugin version 1.13.0 or earlier are exposed when they give users the Portal Manager role. The exploit needs a Portal Manager account first, then public user registration to be open so the poisoned default role is used. Sites without SureDash, without Portal Manager users, or with registration closed are less exposed.
Not affected if no-portal-manager-users, plugin-not-installed, registration-closed
Who cares self-hosted, suredash, wordpress
manage_portal_dashboard capability)default_role value in the portal_settings option (e.g. wp option get portal_settings --format=json) for an administrator role1.13.0 are affected; the sources do not state a fixed versionThe SureDash – Community, Courses & Member Dashboard plugin for WordPress is vulnerable to Privilege Escalation in all versions up to, and including, 1.13.0 This is due to the save_settings() REST handler at /suredash/v1/save-settings being gated only by admin_permission_callback(), which authorizes any holder of the custom manage_portal_dashboard capability (Portal Manager role) without requiring promote_users, edit_users, or manage_options, combined with sanitize_settings_data() iterating all attacker-supplied keys with no allow-list, allowing arbitrary keys such as default_role to pass through sanitize_text_field() unchanged and be persisted into the portal_settings option via update_option() with no role-validity check. This makes it possible for authenticated attackers with Portal Manager-level access and above to poison the setting to , after which any subsequent new-user registration through the publicly accessible block-register endpoint reads the corrupted setting and passes it directly to , producing a full WordPress Administrator account under the attacker's control. The exploit requires two steps: a POST to the authenticated endpoint to overwrite , followed by triggering a new registration through the unauthenticated block-register endpoint to receive the escalated account. Successful exploitation causes the attacker's own account to receive the complete administrator role.
Are you affected?
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.
InfraStack checks it against your stack and answers on your report, with the evidence and the fix.
default_roleadministratorwp_insert_user()save-settingsdefault_roleThis page as .md · .json · CVSS:3.1/AV:N/AC:L/PR:L/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.