- Plugin: Motors <= 5.6.67 - Escalada de Privilegios no Autenticada mediante Actualización de Contraseña/Toma de Control de Cuenta
- Versión Vulnerable: <= 5.6.67
- CVE: CVE-2025-4322
- Gravedad: 9.8 (Crítica)
- ID CWE: CWE-620
- Nombre CWE: Cambio de Contraseña no Verificado
- Corregido: ✅ Sí
- Prioridad del Parche: 🔴 Crítica
- Fecha de Publicación: 19 de mayo de 2025
- Investigador: https://www.wordfence.com/threat-intel/vulnerabilities/researchers/friderika-baranyai
⚠️ Resumen de la Vulnerabilidad
El tema de WordPress Motors (hasta la versión 5.6.67 inclusive) contiene una falla crítica de autenticación en su funcionalidad de restablecimiento de contraseña.
Proporciona un mecanismo de actualización de contraseña en el front-end mediante endpoints, pero no valida correctamente la identidad del usuario ni la autorización antes de procesar los cambios de contraseña.
Como resultado, atacantes no autenticados pueden enviar solicitudes HTTP manipuladas que suministran un user_id, un hash_check arbitrario y una nueva contraseña (stm_new_password) para restablecer la contraseña de cualquier usuario, incluidos los administradores.
Si se explota, esto permite a los atacantes:
Obtener acceso administrativo,
Tomar el control de todo el sitio,
Desplegar backdoors persistentes o plugins maliciosos.
Esta falla es especialmente peligrosa porque no requiere inicio de sesión y, a menudo, no deja rastros evidentes a menos que se supervisen los registros.
🧪 Prueba de Concepto (PoC)
curl "https://local.ization/loginregister/?user_id=2&hash_check=%C0" --data "stm_new_password=randomizer" -XPOST -v -H 'User-Agent: Mozilla/5.0 (Linux; Android 6.0; Nexus 5 Build/MRA58N) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/136.0.0.0 Mobile Safari/537.36'
🛠️ ¿Dónde está el fallo?
- El tema Motors expone un controlador de restablecimiento de contraseña en el front-end mediante endpoints como /login, /register, /loginregister, etc.
- Este controlador acepta user_id, hash_check y stm_new_password a través de solicitudes HTTP POST no autenticadas
- El tema no verifica la identidad ni la autenticidad del solicitante
- Mientras un atacante suministre un hash_check válido o evadible, el sistema procesa los cambios de contraseña a ciegas
- No hay autenticación, validación de nonce ni comprobación de propiedad antes de actualizar las credenciales del usuario
🔐 Recomendación
- Deshabilitar o restringir el acceso a los endpoints de front-end como /loginregister/ o similares si no están en uso
- Implementar una validación estricta de identidad antes de procesar solicitudes de restablecimiento de contraseña (por ejemplo, comprobación de usuario conectado, validación segura de tokens)
- Evitar confiar en user_id o hash_check proporcionados por el cliente sin verificación en el servidor
- Aplicar actualizaciones a la última versión del tema Motors, o utilizar parcheo virtual (por ejemplo, mediante WAF) para bloquear solicitudes POST no autorizadas
- Auditar regularmente los endpoints de acceso público para detectar comportamientos inesperados o no documentados
⚠️ Descargo de responsabilidad
Este informe es solo para fines educativos y de pruebas de seguridad autorizadas.
La explotación de esta vulnerabilidad sin permiso puede violar límites legales y éticos.