Skip to content
KitploitKITPLOIT
HerramientasExploitsBlog
Log in
Enviar
HerramientasExploitsBlog
Enviar

¡Herramientas de Hacking, PenTest y Ciberseguridad para tu Arsenal de Seguridad!

Kitploit es un directorio de herramientas de hacking, ciberseguridad y pentesting. Descubre las últimas actualizaciones de proyectos para encontrar vulnerabilidades, analizar sistemas, automatizar pruebas y fortalecer tu seguridad.

FeedsContactoPrivacidad© 2026 Kitploit

Directorio de Herramientas

Categorías

Ver todas las categorías
Loading categories
CVE-2026-11387-WooCommerce-SMS-OTP — SMS & OTP para WooCommerce, Notificaciones de Pedidos y Recuperación de Carrito Abandonado, plugin para WordPress; SMS Alert <3.9.6; Escalada de Privilegios No Autenticada (Restablecimiento Forzado de Contraseña) | Kitploit
Herramientas/GitHubGitHub/abraxas/cve-2026-11387-woocommerce-sms-otp
Escalada de PrivilegiosAnálisis de VulnerabilidadesExplotaciónExplotación de Aplicaciones WebSeguridad WebPruebas de PenetraciónAutenticación
GitHub

Más Populares

Ver todos →

Descubre las herramientas más usadas por nuestra comunidad.

Explora todas las herramientas

Explora nuestra colección de herramientas

Ver todas las herramientas →
Compartir
abraxas/cve-2026-11387-woocommerce-sms-otp

CVE-2026-11387-WooCommerce-SMS-OTP

SMS & OTP para WooCommerce, Notificaciones de Pedidos y Recuperación de Carrito Abandonado, plugin para WordPress; SMS Alert <3.9.6; Escalada de Privilegios No Autenticada (Restablecimiento Forzado de Contraseña)

Ver Repositorio
438hace 16 díasAún no revisado

Abraxas Labs

CVE-2026-11387

SMS Alert ≤ 3.9.5 - escalada de privilegios no autenticada mediante restablecimiento de contraseña arbitrario

Una vulnerabilidad crítica de autenticación incorrecta en el plugin de WordPress SMS Alert - SMS & OTP for WooCommerce, Order Notifications & Abandoned Cart Recovery. Cuando la verificación por OTP está habilitada para el restablecimiento de contraseñas, un atacante no autenticado puede establecer una nueva contraseña para un usuario que tenga un número de teléfono registrado —incluidos los administradores— sin demostrar la posesión de dicho teléfono.

CVECVE-2026-11387
CWECWE-287: Autenticación incorrecta
CVSS 3.19.8 Crítica (AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H)
FabricanteCozy Vision Technologies Pvt. Ltd.
ProductoSMS Alert (sms-alert)
AfectadosTodas las versiones hasta la 3.9.5
Parcheado3.9.6 (27 de junio de 2026)
CNAWordfence

Este repositorio contiene una prueba de concepto de Abraxas Labs para pruebas autorizadas únicamente: divulgación al fabricante, reproducción en laboratorio o un host para el que se tenga permiso por escrito de evaluación.


Resumen

SMS Alert engancha el flujo de contraseña perdida de WooCommerce / WordPress de modo que un código de un solo uso enviado por SMS debería condicionar la nueva contraseña. En las versiones afectadas, el manejador detrás de option=smsalert-change-password-form aplica smsalert_user_newpwd sin comprobar que el solicitante haya completado la verificación por OTP o que sea el propietario de la cuenta.

El registro oficial del CVE también señala que la misma falta de comprobación de identidad puede utilizarse para cambiar la dirección de correo electrónico de la víctima y luego tomar el control de la cuenta mediante un restablecimiento normal. Cualquiera de las dos vías constituye una toma de control de cuenta no autenticada.

Los sitios solo están expuestos cuando ambas condiciones son verdaderas:

  1. La verificación por OTP para el restablecimiento de contraseñas está habilitada en el plugin.
  2. El usuario objetivo tiene un número de teléfono almacenado para OTP (a menudo billing_phone).

En esas condiciones, el impacto es el compromiso total de la cuenta elegida. La toma de control de un administrador supone el compromiso total del sitio.


Impacto

CondiciónResultado
Acceso de red no autenticadoNo se requieren credenciales de WordPress
El objetivo es un comprador / suscriptorToma de control de la cuenta de ese cliente
El objetivo es un administradorEscalada de privilegios a wp-admin, instalación de plugins/temas, malware persistente

La confidencialidad, la integridad y la disponibilidad son todas altas: el atacante puede leer pedidos y datos personales, cambiar el contenido y los usuarios del sitio, y dejar fuera al propietario legítimo.


Notas técnicas

El restablecimiento de contraseña con SMS Alert se parece aproximadamente a esto:

lost-password request  →  OTP to the user’s phone  →  verified change-password POST

El paso roto es el último. El plugin enruta según $_REQUEST['option'] == 'smsalert-change-password-form' (véase class-wpresetpassword.php en la 3.9.5) y luego escribe la contraseña enviada. No vincula ese POST a una sesión OTP previa, un nonce o una comprobación de capacidad que demostraría que el solicitante es el usuario nombrado en el restablecimiento.

Esta prueba de concepto se mantiene en ese manejador:

  1. Disparo de contraseña perdida - POST a WooCommerce /my-account/lost-password/ y /wp-login.php?action=lostpassword con wc_reset_password establecido, de modo que se entra en la ruta de restablecimiento del plugin para el nombre de usuario de la víctima.
  2. Establecimiento de contraseña no autenticado - POST option=smsalert-change-password-form más smsalert_user_newpwd / smsalert_user_cnfpwd a /, /my-account/lost-password/ y la acción lost-password de wp-login. Una cabecera Location que contenga password-reset=true se trata como éxito.
  3. Comprobación de inicio de sesión - si la redirección no confirmó el restablecimiento, el script prueba wp-login.php con la nueva contraseña para que una ejecución en laboratorio pueda distinguir una toma de control real de un fallo (opción OTP desactivada, o sin teléfono en el usuario).

No se envía ningún OTP. Ese es el fallo.


Prueba de concepto

CVE-2026-11387-WooCommerce-SMS-OTP-Abraxas-Labs.py es un pequeño cliente de Python 3: banner en color y luego los tres pasos anteriores. Solo se comunica con la URL que se le pasa en la línea de comandos.

Requisitos

  • Python 3.9+
  • requests

En macOS con Homebrew Python (PEP 668), use un venv en lugar de un pip install del sistema:

python3 -m venv .venv
.venv/bin/pip install requests

Uso

CVE-2026-11387-WooCommerce-SMS-OTP-Abraxas-Labs.py <base_url> <victim_username> [new_password]
.venv/bin/python3 CVE-2026-11387-WooCommerce-SMS-OTP-Abraxas-Labs.py \
  https://shop.example \
  admin

Un tercer argumento establece la contraseña que se aplicará; el valor predeterminado es abr4x4s#L4b5.

Sin argumentos, el script imprime el banner y el uso, y luego sale con 1. Es una forma segura de confirmar que el cliente arranca.

Condiciones previas del laboratorio

El sitio WordPress objetivo debe ejecutar SMS Alert ≤ 3.9.5, con OTP activado en el restablecimiento, y el nombre de usuario de la víctima debe tener ya un número de teléfono para OTP. Contra un sitio parcheado 3.9.6+ o un usuario sin teléfono, se espera que la comprobación de inicio de sesión falle.

No apunte esto a ningún host que no posea o para el que no tenga autorización por escrito para probar.


Mitigación

  • Parche: actualice SMS Alert a la 3.9.6 o posterior desde el directorio de plugins de WordPress.org.
  • Solución temporal: desactive la verificación por OTP para el restablecimiento de contraseñas hasta que se aplique la actualización. Eso elimina la ruta de código vulnerable.
  • Tras un incidente sospechado, rote las contraseñas de cualquier cuenta que tuviera un número de teléfono registrado (especialmente los administradores), revise los usuarios y los plugins, y trate las sesiones de wp-admin de la ventana relevante como no confiables.

Referencias

  • CVE-2026-11387
  • Aviso de Wordfence
  • NVD
  • Aviso de GitHub GHSA-ggpj-jphc-wmc4
  • Código fuente del plugin, 3.9.5: class-ultimatemember.php (Trac)

Descargo de responsabilidad

Solo para uso educativo y de investigación. No ejecute, despliegue ni utilice este material contra ningún host a menos que tenga permiso explícito por escrito tanto de la parte que aloja este repositorio como del propietario de los sistemas objetivo.

Descargar herramienta