Skip to main content

JTL-Connector EUVDEUVD-2026-100800

| CVE-2026-87855 CRITICAL
Unrestricted Upload of File with Dangerous Type (CWE-434)
2026-10-14 Wordfence GHSA-7mjr-phqx-8hgq
9.8
CVSS 3.1 · Vendor: Wordfence
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Reach plugin connector endpoint
  2. Delivery
    Send empty jtlauth parameter
  3. Exploit
    Bypass authentication in startSession()
  4. Execution
    Upload executable PHP via saveImage()
  5. Persist
    Request uploaded file to run code
  6. Impact
    Achieve RCE and site takeover

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A06:2025 - Insecure Design
ASVS 5.0
V5 - File Handling File type validation, storage isolation
MITRE ATT&CK

2 techniques across 2 tactics: Command and Control, Persistence

The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up.

Exploitation Conditions

No special conditions beyond having the JTL-Connector for WooCommerce plugin (version 2.4.3 or earlier) installed and active on an internet-reachable WordPress site - remote unauthenticated exploitation works against default configurations because startSession() treats an empty jtlauth parameter as a valid credential, so no authentication, no user interaction, and no non-default setting is required. The primary limiting factor is deployment scope: exploitation requires the specific JTL-Connector plugin to be present (a niche ERP integration), and the attacker must be able to reach the plugin's connector/image-push endpoint over the network. Successful RCE further assumes the web server executes uploaded PHP from the writable upload path, which is the default on typical WordPress hosts.

Impact

This is a genuine high-priority vulnerability, not a high-CVSS-but-low-real-risk case. The CVSS vector (AV:N/AC:L/PR:N/UI:N) is fully consistent with the description: a remote, unauthenticated attacker can exploit it with low complexity and no user interaction, and the C:H/I:H/A:H impact is justified because arbitrary file upload leading to code execution grants full control of the WordPress host. The root cause described - startSession() accepting an empty jtlauth parameter as valid credentials, combined with missing file-type validation in handleImagePush()/saveImage() - is an authentication-bypass-plus-unrestricted-upload chain (CWE-434), the most reliably weaponizable class of WordPress plugin flaw. No EPSS score, KEV listing, or public POC was provided in the input, so there is currently 'no public exploit identified at time of analysis'; the absence of these signals lowers the IMMEDIATE urgency somewhat but does not reduce the technical severity, and file-upload-to-RCE bugs in WordPress plugins are historically rapidly weaponized once disclosed. The one tempering factor is deployment footprint: this is a niche ERP-integration plugin, so widespread opportunistic mass-exploitation is less likely than for a ubiquitous plugin, but any exposed instance should be treated as critical.

Exploit ScenarioDerived

A remote, unauthenticated attacker sends a crafted request to the plugin's JTL-Connector endpoint with an empty jtlauth parameter, which startSession() wrongly accepts as valid, then abuses the image-push/saveImage() flow to upload a PHP file because handleImagePush() does not properly validate the file type. The attacker then requests the uploaded file directly to execute arbitrary code and take over the WordPress site. No public exploit was identified at time of analysis, but the described flaw is low-complexity and highly reliable.

Act Now Prioritize within 24-48h. Why: CRITICAL severity.
No patch listed yet 0.8% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Oct 14, 2026

Unauthenticated arbitrary file upload in the JTL-Connector for WooCommerce WordPress plugin (all versions up to and including 2.4.3) lets remote attackers upload executable files and achieve remote code execution with a CVSS 3.1 score of 9.8 (AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H). Exploitation is trivial against default configurations: startSession() accepts an empty jtlauth parameter as a valid credential, so no authentication, no user interaction, and no non-default setting is required - only that the plugin is installed and active and the connector endpoint is network-reachable. No public exploit code has been identified at time of analysis and the issue is not listed in CISA KEV, but the low attack complexity, unauthenticated vector, and default-configuration exploitability make this a genuine high-priority vulnerability rather than a high-score/low-risk case.

RemediationAI

No vendor-released patch identified at time of analysis - the available references all point to the vulnerable 2.4.3 source tree rather than a fixed release, so operators should track the Wordfence advisory (https://www.wordfence.com/threat-intel/vulnerabilities/id/ed869c1e-ae54-4db2-8147-39050a034c5e?source=cve) and the plugin's WordPress.org page for a patched version and update immediately once one ships. Until then, the strongest control is to deactivate and remove the JTL-Connector for WooCommerce plugin if the JTL ERP integration is not actively in use, which eliminates the exposure entirely at the cost of losing ERP synchronization. If the integration is required, restrict network access to the connector endpoint with a web server or WAF allowlist limited to the known JTL/ERP server addresses, accepting that legitimate connections from any other source (including mobile or dynamic-IP clients) will break. Reject at the edge any request to the connector path that omits jtlauth or supplies it empty, since the empty-value bypass is the precondition for the upload primitive. Harden the filesystem by disabling PHP execution in the WordPress uploads directory via nginx or Apache handler configuration, which is a compensating control that only helps if the payload lands there and does not protect against writes into other executable paths. Additionally, alert on newly created files in upload directories and on PHP processes spawned from uploaded content, and audit the site for webshells or unexpected PHP files while mitigations are in place.

Affected VersionsENISA

JTL-Connector for WooCommerce 0 ≤2.4.3

Affected Packages

euvd jtl_connector_for_woocommerce no fix

Source: OSV (Open Source Vulnerabilities)

Affects your stack

Affects 1 package in euvd

Checking this CVE against your own stacks and servers is part of the Basic plan and up.

Technical ContextAI · show details

The vulnerable component is a third-party WordPress plugin that bridges WooCommerce with JTL ERP systems; it ships a REST-style connector endpoint implemented in the plugin's Application layer (vendor/jtl/connector/src/Application/Application.php) with image handling in src/Controllers/ImageController.php. The root cause class is CWE-434, Unrestricted Upload of File with Dangerous Type, and it is reached through two chained defects rather than a single oversight. First, startSession() (roughly Application.php line 424/885 in the 2.4.3 tree) performs its credential check such that an empty jtlauth parameter is treated as valid, effectively issuing an unauthenticated connector session - this is a broken-authentication flaw that removes the prerequisite normally protecting the upload path. Second, handleImagePush() and saveImage() (referenced around ImageController.php line 632 and Application.php line 955) persist attacker-supplied content without adequate validation of file extension or MIME type, so a crafted push request can write an arbitrary file - including a .php payload - into a web-writable location. Because PHP is executed by default from writable upload directories on typical WordPress hosts, the stored file is directly reachable and executable over HTTP, converting the upload primitive into remote code execution as the web server user. The CPE cpe:2.3:a:ntbyk:jtl-connector_for_woocommerce:*:*:*:*:*:*:*:* confirms the affected product identity and that the CPE does not restrict to a fixed version, consistent with all releases through 2.4.3 being affected.

Know when Woocommerce gets its next vulnerability

  • Watch products and get an email when something new is published
  • Check this CVE against your own stack and servers
  • Exploit and PoC references, threat intelligence from 22 sources

No credit card · 7-day full trial

Severity by source

Vendor (Wordfence) PRIMARY 9.8 CRITICAL
AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
vuln.today AI 9.8 CRITICAL

Authentication bypass via empty jtlauth makes it network-reachable and unauthenticated (AV:N/PR:N/UI:N) with low complexity; unrestricted upload-to-RCE yields full host compromise (C/I/A:H).

3.1 AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
4.0 AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N

Primary rating from Vendor (Wordfence).

CVSS VectorVendor: Wordfence

Attack Vector
Network
Attack Complexity
Low
Privileges Required
None
User Interaction
None
Scope
Unchanged
Confidentiality
High
Integrity
High
Availability
High

DescriptionCVE.org

The JTL-Connector for WooCommerce plugin for WordPress is vulnerable to Arbitrary File Upload in all versions up to, and including, 2.4.3 via the saveImage() function. This is due to the startSession() function accepting an empty jtlauth parameter as a valid credential, combined with insufficient file type validation in handleImagePush(). This makes it possible for unauthenticated attackers to upload files that may be executable, which makes remote code execution possible.

Executive ViewAI

Why It Matters

The JTL-Connector for WooCommerce WordPress plugin (versions up to and including 2.4.3) contains a critical unauthenticated file upload vulnerability (CVE-2026-87855, CVSS 9.8) that allows remote attackers to execute arbitrary code on affected servers. Organizations using this plugin for their WooCommerce stores are at risk of full site compromise, data theft, and lateral movement, with exploitation requiring no authentication and minimal effort. As no vendor patch is currently available, immediate mitigation is essential to protect business operations and customer data.

Business Impact: Severe
Compensating Controls

Disable or remove the plugin if not essential; restrict network access to the connector endpoint to trusted IP addresses; implement WAF rules to block file upload attempts to the vulnerable endpoint; monitor logs for anomalous file uploads or unexpected code execution; enforce authentication at a reverse proxy or web server level for the connector endpoint. No vendor-released patch identified at time of analysis.

Threat Intelligence Overview

EPSS Score
0.8%
Top 45% exploitable
Prevalence
Low
niche JTL ERP-to-WooCommerce integration plugin, limited merchant footprint
Social Media
4
Sightings
Data Quality
5 sources
Confidence: Medium

How this decision was reached

The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.

SignalValue
Severity CRITICAL
CISA KEV No
Public POC No
EPSS 0.8%
Patch available No
Active threat No
Deciding rule
CRITICAL severity
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision
Out-of-Cycle
Exploitation
None
System Exposure· derived
Open
Automatable
Yes
Human Impact
Very High
Technical Impact
Total

Priority Score

50
Low Medium High Critical
KEV: 0
EPSS: +1
CVSS: +49
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

Malicious file upload attacks exploit insufficient validation when web applications accept user-provided files.

Remote Code Execution represents the critical moment when an attacker successfully runs arbitrary code on a target system without physical access.

CVE-2017-17058 HIGH POC
7.5 Nov 29

The WooCommerce plugin through 3.x for WordPress has a Directory Traversal Vulnerability via a /wp-content/plugins/wooco

CVE-2026-18143 CRITICAL POC
9.8 Sep 26

Unauthenticated arbitrary file upload in Addify's Request a Quote for WooCommerce plugin, affecting all versions up to a

CVE-2021-24212 CRITICAL POC
9.8 Apr 05

The WooCommerce Help Scout WordPress plugin before 2.9.1 (https://woocommerce.com/products/woocommerce-help-scout/) allo

CVE-2022-50972 CRITICAL POC
9.3 Jun 20

WooCommerce 7.1.0 contains a remote code execution vulnerability that allows attackers to execute arbitrary PHP code by

CVE-2025-10162 HIGH POC
8.6 Oct 07

Unauthenticated path traversal in OrderConvo (the "Admin and Customer Messages After Order for WooCommerce" plugin), aff

CVE-2026-81649 CRITICAL POC
9.1 Oct 11

Unauthenticated remote attackers can seize control of the payment configuration on WordPress stores running the Fundiin

CVE-2020-35627 HIGH POC
8.8 Dec 28

Ultimate WooCommerce Gift Cards 3.0.2 is affected by a file upload vulnerability in the Custom GiftCard Template that ca

CVE-2026-103307 HIGH POC
8.6 Oct 14

Unauthenticated attackers can exploit the Walletdoc Payment Gateway for WooCommerce plugin before version 1.8.5 to execu

CVE-2026-14962 HIGH POC
8.6 Sep 09

Unauthenticated SQL injection in the ELEX WooCommerce Request a Quote WordPress plugin (all versions before 2.4.1) allow

CVE-2026-92404 HIGH POC
7.5 Sep 19

Unauthenticated, network-reachable attackers can read the WooCommerce API consumer key and secret stored by the MgoSync

CVE-2023-34000 HIGH POC
7.5 Jun 14

Unauth. Rated high severity (CVSS 7.5), this vulnerability is remotely exploitable, no authentication required, low atta

CVE-2020-11497 HIGH POC
7.5 Aug 26

An issue was discovered in the NAB Transact extension 2.1.0 for the WooCommerce plugin for WordPress. Rated high severit

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy