CVE-2026-104799 Escalada de privilegios en la ruta REST wcfm-profile-settings del plugin Mobile builder
El plugin Mobile builder para WordPress, en todas las versiones hasta la 1.4.2 inclusive, es vulnerable a escalada de privilegios en el handler REST wcfmmp_profile_settings() expuesto en POST /mobile-builder/v1/wcfm-profile-settings. Un fallo de comparación laxa en PHP en la verificación de claves permitidas, junto con un permission_callback que solo comprueba que el usuario exista, permite a atacantes autenticados con nivel Subscriber o superior pasar un arreglo data sin sanitizar a update_user_meta() y…
CVSS 3.1
- Probabilidad de explotación · EPSS del 09/110,4 % · percentil 33
- Explotada activamenteNo confirmada
- Exploit públicoNo conocido
Afectados
rnlab Mobile builder
hasta 1.4.2
Qué hacer
- Verificá si usás Mobile builder y en qué versión.
- Actualizá a la versión corregida que indique el fabricante en su aviso o aplicá su mitigación.
- Revisá registros y accesos de los sistemas expuestos para descartar un uso previo.
Calculadora CVSS
CVSS 3.1 · 8.8 ALTA
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
- Vector de ataqueRed
- Complejidad del ataqueBaja
- Privilegios requeridosBajos
- Interacción del usuarioNinguna
- AlcanceSin cambio
- ConfidencialidadAlta
- IntegridadAlta
- DisponibilidadAlta
Descripción original
The Mobile builder plugin for WordPress is vulnerable to Privilege Escalation in all versions up to, and including, 1.4.2 via the `wcfmmp_profile_settings()` REST handler exposed at `POST /mobile-builder/v1/wcfm-profile-settings`. This is due to a PHP loose-comparison logic flaw in the meta key allow-list check — `strpos( $key, 'mobile_builder' ) == 0` evaluates to `true` for any key that does *not* contain the substring `'mobile_builder'` because `strpos()` returns `false` on no match and `false == 0` is `true` in PHP — combined with a `permission_callback` (`user_permissions_check`) that grants access to any authenticated user by only verifying `$user->exists()`. This makes it possible for authenticated attackers, with Subscriber-level access and above, to pass an unsanitized `data` array via the `key` and `data` parameters directly to `update_user_meta()`, overwriting arbitrary user meta on their own account — including the `wp_capabilities` meta key — to grant themselves Administrator-level privileges.
Referencias (7)
- www.wordfence.com/threat-intel/vulnerabilities/id/bc1a233e-ea62-4fb0-98eb-6b2aa893555d?so…
- plugins.trac.wordpress.org/browser/mobile-builder/trunk/api/class-mobile-builder-wcfm.php…
- plugins.trac.wordpress.org/browser/mobile-builder/trunk/api/class-mobile-builder-wcfm.php…
- plugins.trac.wordpress.org/browser/mobile-builder/trunk/api/class-mobile-builder-wcfm.php…
- plugins.trac.wordpress.org/browser/mobile-builder/trunk/api/class-mobile-builder-wcfm.php…
- plugins.trac.wordpress.org/browser/mobile-builder/trunk/api/class-mobile-builder-wcfm.php…
- plugins.trac.wordpress.org/browser/mobile-builder/trunk/api/class-mobile-builder-wcfm.php…
Resumen traducido automáticamente de la descripción original. Fuente: Nureq Monitor. Cómo funciona.