Description
Joomla Extension - j2commerce.com - Arbitrary file read via `task=download` in J2Store 1.0.0-3.3.2, 4.0.0-4.0.22, 4.1.0-4.1.7 - `J2StoreModelOrderdownloads::getFilePath()` built the on-disk path to a purchased digital download by concatenating the configured attachment folder with the product file's stored `product_file_save_name`, using only `JPath::clean()` (which normalises separators but does not resolve or reject `..` segments) and a plain `JFile::exists()` check — never confirming the resolved path stayed inside the configured attachment folder. If a product file's `product_file_save_name` ever contained a `../` traversal segment — most plausibly via the CSRF-forgeable admin product-file save actions described in Issue 1, but equally by any future integration or bug that writes that field — any customer holding a valid download `token`/`pid` pair for that product file could have the traversal resolve to a path outside the attachment folder and download any file readable by the web server (e.g. `configuration.php`).
Published: 2026-09-15
Score: 8.7 High
EPSS: < 1% Very Low
KEV: No
Impact: Arbitrary File Read
Action: Immediate Patch
AI Analysis

Impact

This vulnerability arises from the J2Store 'download' feature that constructs file paths by concatenating a configured attachment directory with a product file's stored name. The concatenation uses only path normalization but does not reject or resolve '..' segments, and the resulting path is only checked with a basic file existence test. Because the stored name can contain directory traversal characters, a client with a valid download token can request a file whose resolved path lies outside the intended attachment folder, allowing read access to any file readable by the web server, such as Joomla's configuration file. The weakness is a file path traversal flaw (CWE-22).

Affected Systems

Joomla websites that install the 1.0.0-3.3.2, 4.0.0-4.0.22, or 4.1.0-4.1.7 releases of the J2Store extension from j2commerce.com are vulnerable. The issue exists across all Joomla installations that incorporate the affected versions of J2Store and have the download functionality enabled.

Risk and Exploitability

The CVSS score of 8.7 indicates a high severity vulnerability, and the EPSS score of less than 1% suggests a low probability of exploitation. The vulnerability is not listed in the CISA KEV catalog. Exploitation requires a valid download token and product ID; the likely attack vector is a remote web request to the J2Store download endpoint.

Generated by OpenCVE AI on September 17, 2026 at 08:47 UTC.

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Upgrade the J2Store extension to the latest released version that contains the path‑traversal fix.
  • Audit the product_file_save_name values in the J2Store database for any entries containing '..' or other traversal patterns and correct or remove them.
  • Temporarily disable the download feature (e.g., restrict the J2Store download endpoint or remove the route) until a patch is applied.
  • Strictly limit file permissions on the attachment directory so that the web server cannot read files outside this folder, reducing the risk of exposing sensitive files.

Generated by OpenCVE AI on September 17, 2026 at 08:47 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

References
History

Tue, 15 Sep 2026 22:15:00 +0000

Type Values Removed Values Added
First Time appeared J2commerce.com
J2commerce.com j2store Extension For Joomla
Vendors & Products J2commerce.com
J2commerce.com j2store Extension For Joomla

Tue, 15 Sep 2026 20:30:00 +0000

Type Values Removed Values Added
Metrics ssvc

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


Tue, 15 Sep 2026 19:00:00 +0000

Type Values Removed Values Added
Description Joomla Extension - j2commerce.com - Arbitrary file read via `task=download` in J2Store 1.0.0-3.3.2, 4.0.0-4.0.22, 4.1.0-4.1.7 - `J2StoreModelOrderdownloads::getFilePath()` built the on-disk path to a purchased digital download by concatenating the configured attachment folder with the product file's stored `product_file_save_name`, using only `JPath::clean()` (which normalises separators but does not resolve or reject `..` segments) and a plain `JFile::exists()` check — never confirming the resolved path stayed inside the configured attachment folder. If a product file's `product_file_save_name` ever contained a `../` traversal segment — most plausibly via the CSRF-forgeable admin product-file save actions described in Issue 1, but equally by any future integration or bug that writes that field — any customer holding a valid download `token`/`pid` pair for that product file could have the traversal resolve to a path outside the attachment folder and download any file readable by the web server (e.g. `configuration.php`).
Title Joomla Extension - j2commerce.com - Arbitrary file read via `task=download` in J2Store 1.0.0-3.3.2, 4.0.0-4.0.22, 4.1.0-4.1.7
Weaknesses CWE-22
References
Metrics cvssV4_0

{'score': 8.7, 'vector': 'CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:N/VA:N/SC:N/SI:N/SA:N'}


Subscriptions

J2commerce.com J2store Extension For Joomla
cve-icon MITRE

Status: PUBLISHED

Assigner: Joomla

Published:

Updated: 2026-09-15T19:29:50.326Z

Reserved: 2026-08-27T06:42:00.961Z

Link: CVE-2026-81568

cve-icon Vulnrichment

Updated: 2026-09-15T19:29:33.423Z

cve-icon NVD

Status : Deferred

Published: 2026-09-15T19:17:41.073

Modified: 2026-09-16T19:28:06.713

Link: CVE-2026-81568

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-09-17T09:00:17Z

Weaknesses
  • CWE-22

    Improper Limitation of a Pathname to a Restricted Directory ('Path Traversal')