CVE-2026-3567

The RepairBuddy – Repair Shop CRM & Booking Plugin for WordPress is vulnerable to unauthorized access in all versions up to, and including, 4.1132. The plugin exposes two AJAX handlers that, when combined, allow any authenticated user to modify admin-level plugin settings. First, the wc_rb_get_fresh_nonce() function (registered via wp_ajax and wp_ajax_nopriv hooks) allows any user to generate a valid WordPress nonce for any arbitrary action name by simply providing the nonce_name parameter, with no capability checks. Second, the wc_rep_shop_settings_submission() function only verifies the nonce (wcrb_main_setting_nonce) but performs no current_user_can() capability check before updating 15+ plugin options via update_option(). This makes it possible for authenticated attackers, with subscriber-level access and above, to modify all plugin configuration settings including business name, email, logo, menu label, GDPR settings, and more by first minting a valid nonce via the wc_rb_get_fresh_nonce endpoint and then calling the settings submission handler.
Configurations

No configuration.

History

22 Apr 2026, 21:32

Type Values Removed Values Added
Summary
  • (es) El plugin RepairBuddy – Repair Shop CRM & Booking para WordPress es vulnerable a acceso no autorizado en todas las versiones hasta, e incluyendo, la 4.1132. El plugin expone dos gestores AJAX que, cuando se combinan, permiten a cualquier usuario autenticado modificar la configuración del plugin a nivel de administrador. Primero, la función wc_rb_get_fresh_nonce() (registrada a través de los hooks wp_ajax y wp_ajax_nopriv) permite a cualquier usuario generar un nonce válido de WordPress para cualquier nombre de acción arbitrario simplemente proporcionando el parámetro nonce_name, sin comprobaciones de capacidad. Segundo, la función wc_rep_shop_settings_submission() solo verifica el nonce (wcrb_main_setting_nonce) pero no realiza ninguna comprobación de capacidad current_user_can() antes de actualizar más de 15 opciones del plugin a través de update_option(). Esto hace posible que atacantes autenticados, con acceso de nivel de suscriptor y superior, modifiquen todas las configuraciones del plugin, incluyendo el nombre de la empresa, correo electrónico, logotipo, etiqueta del menú, configuraciones de GDPR y más, primero generando un nonce válido a través del endpoint wc_rb_get_fresh_nonce y luego llamando al gestor de envío de configuraciones.

21 Mar 2026, 00:16

Type Values Removed Values Added
New CVE

Information

Published : 2026-03-21 00:16

Updated : 2026-04-22 21:32


NVD link : CVE-2026-3567

Mitre link : CVE-2026-3567

CVE.ORG link : CVE-2026-3567


JSON object : View

Products Affected

No product.

CWE
CWE-862

Missing Authorization