CVE-2026-19803 Carga arbitraria de archivos no autenticada en Printcart Store vía 'url' de nbu_crop_image
El plugin Printcart Store para WordPress es vulnerable a carga arbitraria de archivos en todas las versiones hasta la 2.13.2. El manejador AJAX nbu_crop_image acepta un parámetro 'url' que convert_url_to_path() concatena al directorio de uploads sin normalizar ni quitar secuencias '../', y deriva el directorio y la extensión de salida del mismo path controlado por el atacante, sin llamar a stripImage() antes de writeImage(). Atacantes no autenticados pueden escribir contenido PHP en ubicaciones arbitrarias fuera…
CVSS 3.1
- Probabilidad de explotación · EPSS del 09/111,0 % · percentil 61
- Explotada activamenteNo confirmada
- Exploit públicoNo conocido
Afectados
printcart Printcart Store – Web to Print Product Designer for WooCommerce
hasta 2.13.2
Qué hacer
- Verificá si usás Printcart Store – Web to Print Product Designer for WooCommerce y en qué versión.
- Actualizá a la versión corregida que indique el fabricante en su aviso o aplicá su mitigación.
- Revisá registros y accesos de los sistemas expuestos para descartar un uso previo.
Calculadora CVSS
CVSS 3.1 · 9.8 CRÍTICA
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
- Vector de ataqueRed
- Complejidad del ataqueBaja
- Privilegios requeridosNinguno
- Interacción del usuarioNinguna
- AlcanceSin cambio
- ConfidencialidadAlta
- IntegridadAlta
- DisponibilidadAlta
Descripción original
The Printcart Store – Web to Print Product Designer for WooCommerce plugin for WordPress is vulnerable to Arbitrary File Upload in all versions up to, and including, 2.13.2. This is due to the `nbu_crop_image` AJAX handler accepting a user-supplied `url` parameter that `Nbdesigner_IO::convert_url_to_path()` concatenates onto the uploads base directory without normalizing or stripping `../` sequences, and then deriving both the output directory and output file extension via `pathinfo()` from the same attacker-controlled path — with no `stripImage()` call before `writeImage()` is invoked. This makes it possible for unauthenticated attackers to write attacker-controlled PHP content to arbitrary locations outside the uploads directory, resulting in remote code execution when the written file is subsequently requested. This vulnerability is only exploitable when the `nbdesigner_upload_popup_style` site option is set to `a` (Advanced Upload Popup), which causes the handler to be registered for unauthenticated requests; however, the required `save-design` nonce is printed on the fully public frontend `upload-design-file` page, making it trivially obtainable by any anonymous visitor once that configuration is active.
Referencias (7)
- www.wordfence.com/threat-intel/vulnerabilities/id/2525ed97-b701-4f95-8d8c-202e816723c5?so…
- plugins.trac.wordpress.org/browser/printcart-integration/tags/2.8.4/includes/class.advanc…
- plugins.trac.wordpress.org/browser/printcart-integration/tags/2.8.4/includes/class.advanc…
- plugins.trac.wordpress.org/browser/printcart-integration/tags/2.8.4/includes/class-util.p…
- plugins.trac.wordpress.org/browser/printcart-integration/tags/2.8.4/includes/class.advanc…
- plugins.trac.wordpress.org/browser/printcart-integration/tags/2.8.4/includes/class-util.p…
- plugins.trac.wordpress.org/changeset?reponame=&old=3747660%40printcart-integration&new=37…
Resumen traducido automáticamente de la descripción original. Fuente: Nureq Monitor. Cómo funciona.