CVE-2026-90901: Joomla Extension - joomshaper.com - Authenticated, Privileged SQL Injection in Media Image Deletion in Easy Store extension 1.0.0-3.0.0
Joomla Extension - joomshaper.com - Authenticated, Privileged SQL Injection in Media Image Deletion in Easy Store extension 1.0.0-3.0.0 - The checkout.searchGuestUser endpoint allowed querying guest checkout records solely by supplying an email address. The server returned complete shipping details (full name, phone number, street address, city, postal code, and country) directly from the #easystoreguests table with no authentication, session validation, or ownership checks. An unauthenticated attacker could iterate through email lists to enumerate guest customers and harvest sensitive Personally Identifiable Information (PII). Resolved by removing the unauthenticated server-side guest lookup endpoint entirely and migrating autofill functionality to client-side localStorage protected by explicit user consent.
Affected Software
Remediation
Recommended actions to resolve this vulnerability, in priority order.
- Configuration
Remove the unauthenticated guest lookup endpoint, including the checkout.searchGuestUser endpoint.
Easy Store unauthenticated server-side guest lookup endpoint = disabled/removed - Configuration
Migrate autofill functionality from server-side guest-record lookup to client-side localStorage protected by explicit user consent.
Easy Store guest checkout autofill = client-side localStorage with explicit user consent
Event History
Frequently Asked Questions
Who can exploit the exposed guest-record lookup?
An unauthenticated attacker can query the endpoint without a session, authentication, or ownership validation. They only need email addresses to look up guest checkout records.
What information could be disclosed?
The endpoint returned full name, phone number, street address, city, postal code, and country from the guest checkout table. Attackers could iterate through email lists to enumerate and harvest guest customer PII.
Which versions are affected?
The supplied version range is Easy Store 1.0.0 through 3.0.0. The data states the issue was resolved by removing the unauthenticated server-side guest lookup endpoint.
What configuration condition is required for exposure?
The affected behavior was an unauthenticated server-side guest lookup at the checkout.searchGuestUser endpoint. No additional configuration requirement is provided.