ZeroHour

CVE-2026-78065

moderate

Authenticated IDOR in J2Store leaks guest checkout addresses on Joomla

CVSS 4.0
7.1 high
EPSS
<1%p11
Published
()
Modified
AI analysis

J2Store, a Joomla e-commerce extension, contains an insecure direct object reference (CWE-639) in its editAddress() function: the ownership check that redirects non-owners away only ran when the loaded address row had a non-empty user_id belonging to another user. Guest-checkout orders create address rows with an empty user_id, so the check never fired for them; any logged-in account that guesses a small, sequential address_id value had the guest customer's full name, street address, and phone number rendered prefilled into the edit form. An attacker with any low-privileged account on the site can therefore enumerate and read personal information of guest customers. Any Joomla site running J2Store 1.0.0-3.3.21, 4.0.0-4.0.21, or 4.1.0-4.1.6 with guest checkout enabled is affected. Exploitation has not been observed: there is no public proof of concept, the CVE is not in CISA KEV, and EPSS puts 30-day exploitation probability at 0.2%.

What to do: Upgrade J2Store to a release newer than the affected versions of the branch in use (later than 3.3.21, 4.0.21, or 4.1.6). As an interim mitigation, disable guest checkout or restrict which user roles can reach the address-edit endpoint. Check access logs for a single authenticated account rapidly requesting sequential address_id values, which would indicate enumeration of guest customer records.

Affected
j2commerce.com J2Store1.0.0 through 3.3.21 (3.x branch)
j2commerce.com J2Store4.0.0 through 4.0.21 (4.0.x branch)
j2commerce.com J2Store4.1.0 through 4.1.6 (4.1.x branch)
Estimated exposure
moderateplausibly tens of thousands of Joomla storefronts running J2Store, of which only those with guest checkout enabled are exposed (order-of-magnitude estimate) — No install count was provided in the source data; the estimate is based on J2Store being one of the more widely deployed shopping-cart extensions in the Joomla ecosystem, with guest checkout being a common but not universal configuration.

Order-of-magnitude estimate by the model from install counts, market share and public scan data it knows; verify before quoting.

Description

Joomla Extension - j2commerce.com - Guest checkout address disclosure to any authenticated user (IDOR) in J2Store 1.0.0-3.3.21, 4.0.0-4.0.21, 4.1.0-4.1.6 - `editAddress()` redirected non-owners away only when the loaded address row had a **non-empty** `user_id` belonging to someone else. Guest-checkout address rows have an empty `user_id`, so that check never triggered for them — any logged-in account guessing a small, sequential `address_id` got a guest customer's full name, street address, and phone number rendered prefilled into the edit form.

Ecosystems
Joomla
Weakness
CWE-639
Vector
CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:H/VI:N/VA:N/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X

In the news

No ingested article mentions this CVE yet.