Description
The Printcart Store (PCDesigner / NB Designer) plugin for WooCommerce is vulnerable to unauthenticated arbitrary file upload leading to remote code execution in all versions up to, and including, 2.9.1 The nbdesigner_copy_image_from_url AJAX action is registered for logged-out callers (wp_ajax_nopriv_), and its Google Drive branch rebuilds the destination filename from the raw, attacker-supplied gapi[name] parameter — bypassing the jpg/jpeg/png/gif allow-list applied on the other branch — and writes the fetched bytes to a web-accessible directory (wp-content/uploads/nbdesigner/temp/). This makes it possible for unauthenticated attackers to write a .php file to a web-served, PHP-executing location and, by supplying their own Google Drive file and OAuth token as the content source, execute arbitrary code on the server. The required save-design nonce is handed to anonymous callers by the nbd_check_use_logged_in endpoint, so it presents no barrier.
Published: 2026-10-14
Score: 9.8 Critical
EPSS: < 1% Very Low
KEV: No
Impact: Remote Code Execution
Action: Immediate Patch
AI Analysis

Impact

The Printcart Store – Web to Print Product Designer for WooCommerce plugin is vulnerable to unauthenticated arbitrary file upload, allowing an attacker to place a PHP file in a web‑accessible location and execute it on the server. The nbdesigner_copy_image_from_url AJAX action is exposed to anonymous callers and, in its Google Drive branch, rebuilds the destination filename from the attacker supplied gapi[name] parameter, bypassing the allowed jpg/jpeg/png/gif filters applied elsewhere. The fetched contents are written to wp‑content/uploads/nbdesigner/temp/, a directory that serves PHP files. An attacker can supply a malicious PHP file via a Google Drive link and OAuth token, resulting in remote code execution without any authentication.

Affected Systems

Affected Systems The vulnerability affects all installations of the Printcart Store – Web to Print Product Designer for WooCommerce plugin up to and including version 2.9.1. Any WordPress site running WooCommerce with this plugin can be compromised if the affected version is in use.

Risk and Exploitability

The CVSS score is 9.8, indicating critical severity. The EPSS score is below 1 %, showing a very low current exploitation probability, but the vulnerability is not listed in CISA’s KEV catalog. Attackers can trigger the flaw via the unauthenticated AJAX endpoint nbdesigner_copy_image_from_url, upload a malicious PHP file to the temporary directory, and execute arbitrary code on the server. The absence of authentication or nonce checks removes any significant barriers, making exploitation straightforward for anyone with internet access to the site.

Generated by OpenCVE AI on October 16, 2026 at 01:47 UTC.

Remediation

No solution or workaround provided in the CVE record.

OpenCVE Recommended Actions

  • Upgrade Printcart Store – Web to Print Product Designer for WooCommerce to version 2.9.2 or later.
  • Restrict the wp‑content/uploads/nbdesigner/temp directory so that PHP files are not executable, for example by adding an .htaccess rule or adjusting file permissions.
  • Review and audit the plugin’s AJAX endpoints to ensure no unauthenticated file uploads remain; disable the nbdesigner_copy_image_from_url action for unauthenticated users if possible.
  • Monitor site logs for attempts to upload files to the temporary directory and block offending IP addresses.

Generated by OpenCVE AI on October 16, 2026 at 01:47 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Thu, 15 Oct 2026 13:30:00 +0000

Type Values Removed Values Added
Metrics ssvc

{'options': {'Automatable': 'yes', 'Exploitation': 'none', 'Technical Impact': 'total'}, 'version': '2.0.3'}


Wed, 14 Oct 2026 01:45:00 +0000

Type Values Removed Values Added
Description The Printcart Store (PCDesigner / NB Designer) plugin for WooCommerce is vulnerable to unauthenticated arbitrary file upload leading to remote code execution in all versions up to, and including, 2.9.1 The nbdesigner_copy_image_from_url AJAX action is registered for logged-out callers (wp_ajax_nopriv_), and its Google Drive branch rebuilds the destination filename from the raw, attacker-supplied gapi[name] parameter — bypassing the jpg/jpeg/png/gif allow-list applied on the other branch — and writes the fetched bytes to a web-accessible directory (wp-content/uploads/nbdesigner/temp/). This makes it possible for unauthenticated attackers to write a .php file to a web-served, PHP-executing location and, by supplying their own Google Drive file and OAuth token as the content source, execute arbitrary code on the server. The required save-design nonce is handed to anonymous callers by the nbd_check_use_logged_in endpoint, so it presents no barrier.
Title Printcart Store - Web to Print Product Designer for WooCommerce (PCDesigner) <= 2.9.1 - Unauthenticated Arbitrary File Upload to Remote Code Execution via nbdesigner_copy_image_from_url
Weaknesses CWE-434
References
Metrics cvssV3_1

{'score': 9.8, 'vector': 'CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H'}


Subscriptions

No data.

cve-icon MITRE

Status: PUBLISHED

Assigner: Wordfence

Published:

Updated: 2026-10-14T17:55:31.470Z

Reserved: 2026-09-17T19:44:23.737Z

Link: CVE-2026-93388

cve-icon Vulnrichment

Updated: 2026-10-14T17:55:26.714Z

cve-icon NVD

Status : Deferred

Published: 2026-10-14T02:17:01.720

Modified: 2026-10-14T18:19:35.843

Link: CVE-2026-93388

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-10-16T02:00:16Z

Weaknesses
  • CWE-434

    Unrestricted Upload of File with Dangerous Type