¿Qué es la vulnerabilidad?
El plugin Basel Post Types para WordPress es vulnerable a bypass de autenticación en todas las versiones hasta la 1.18 inclusive. El problema ocurre por un error de codificación (comillas faltantes) en la función BASEL_Auth::get_config() que hace que PHP evalúe el valor de la constante SECURE_AUTH_SALT en lugar de su nombre, lo que hace que la verificación siempre falle y recurra permanentemente a una sal estática hardcodeada (2NlBUibcszrVtNmDnxqDbwCOpLWq91eatIz6O1O) que es visible públicamente en el código fuente del tema.
¿Cómo funciona el ataque?
Al ser esta sal estática y conocida, un atacante puede calcular una firma Opauth válida completamente offline y enviar un callback falsificado (?opauth) al endpoint no autenticado init hook procesado por register_or_login. Esto permite que atacantes no autenticados se autentiquen como cualquier usuario existente de WordPress (incluidos administradores) mediante la falsificación de un callback vinculado a un correo electrónico de cuenta objetivo conocido, evitando todas las verificaciones de contraseña, autenticación multifactor y comprobaciones de propiedad, y recibiendo una cookie de sesión completamente autenticada a través de wc_set_customer_auth_cookie().
Requisitos para la explotación
- WooCommerce debe estar activo
- Al menos un proveedor de inicio de sesión social de Basel (Facebook, Google o VKontakte) debe estar configurado con un
app_idyapp_secretválidos en la configuración del tema
Impacto y severidad
La vulnerabilidad tiene una calificación CVSS de 9.8 (CRITICAL) y está clasificada como CWE-287: Improper Authentication. No está incluida en el catálogo CISA KEV en el momento de este reporte.
| CVE | CVE-2026-89324 |
|---|---|
| Severidad | CRITICAL |
| CVSS | 9.8 / 10 |
| CWE | CWE-287 |
| Exposición (Shodan) | sin hosts expuestos detectados actualmente |
Técnica MITRE ATT&CK
Mapeo automático best-effort por clase de vulnerabilidad (CWE) -- orientación, no certificación.