Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessObtain authenticated admin session
-
DeliverySubmit couponBulkUpdate with malicious ID list
-
ExploitInjected SQL breaks out of IN() clause
-
ExecutionDatabase reads/writes arbitrary data
-
ImpactFull DB confidentiality/integrity compromise
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A05:2025 - Injection
ASVS 5.0
V1 - Encoding and Sanitization Input neutralization, injection prevention
|
| Exploitation Conditions | Requires an authenticated Joomla administrator with access to the Easy Store (com_easystore) component's coupon management, and the Easy Store extension version 1.0.0 through 3.0.0 must be installed. The attacker reaches the flaw via the administrative task administrator/index.php?option=com_easystore&task=coupon.couponBulkUpdate by supplying non-integer, SQL-bearing values in the bulk coupon ID input. The primary limiting factor is the high privilege requirement (administrator), which sharply narrows the attacker population and reduces net escalation value since Joomla admins already have extensive database access. |
| Impact | This is a genuine SQL injection (the input reports CWE-74 injection; the described flaw is classic CWE-89 SQLi) but its real-world priority is moderate-to-low, not the 8.6 headline suggests. The CVSS 4.0 vector (AV:N/AC:L/AT:N/PR:H/UI:N/VC:H/VI:H/VA:H) drives the high score through full C/I/A impact, but the critical mitigating factor is PR:H - exploitation requires an already-authenticated Joomla administrator. In Joomla an administrator typically already has broad database and configuration access, so the SQLi mainly upgrades an admin to cleaner arbitrary DB read/write rather than granting a fresh boundary crossing. Corroborating low-urgency signals: EPSS is 0.25% (14th percentile), SSVC decides Exploitation=none, Automatable=no, Technical Impact=partial, there is no CISA KEV listing, and no public exploit code. All signals are consistent - high nominal severity but low likelihood and limited privilege escalation value. No conflicting data was found; the CVSS network vector is consistent with an admin HTTP endpoint (administrator/index.php). |
| Exploit ScenarioDerived | An attacker who already holds (or has phished/compromised) a Joomla administrator account with access to the Easy Store component crafts a request to administrator/index.php?option=com_easystore&task=coupon.couponBulkUpdate, embedding SQL syntax inside the coupon ID list instead of plain integers. Because the IDs are concatenated directly into a raw IN (...) clause, the injected syntax executes against the database, enabling data exfiltration or modification beyond the coupon table. No public exploit code is identified at time of analysis, and exploitation is not automatable per SSVC. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv2 – Sep 25, 2026
Authenticated SQL injection in the Easy Store extension for Joomla (versions 1.0.0 through 3.0.0) allows a Joomla administrator to inject arbitrary SQL through the coupon bulk update task at administrator/index.php?option=com_easystore&task=coupon.couponBulkUpdate. The flaw is a genuine injection (reported as CWE-74, functionally classic CWE-89 SQLi) where coupon IDs are concatenated straight into raw SQL IN (...) clauses instead of being cast to integers or parameterized. Exploitation is confirmed to require high privilege (PR:H in the assessed CVSS:3.1 vector), and there is no public exploit identified at time of analysis and no CISA KEV listing; EPSS is low at 0.25% (14th percentile), so despite the 8.6 headline score the practical priority is moderate-to-low because Joomla administrators already hold broad database-level trust.
Earlier versions of this analysis (1)
SQL injection in the EasyStore extension for Joomla (versions 1.0.0 through 3.0.0) allows an authenticated Joomla backend administrator to inject arbitrary SQL syntax through the coupon bulk update task at administrator/index.php?option=com_easystore&task=coupon.couponBulkUpdate, because the supplied coupon/product IDs were concatenated directly into a raw SQL IN (...) clause without sanitization or parameter binding. The decisive limitation is the high privilege prerequisite: the attacker must already hold administrator rights, making this an insider or post-compromise data-exfiltration vector rather than an unauthenticated remote flaw - our assessment scores it CVSS 3.1 AV:N/AC:L/PR:H/UI:N with high confidentiality, low integrity and no availability impact, and explicitly notes that the vendor CVSS 4.0 vector's PR:N metric contradicts that prerequisite. There is no public exploit identified at time of analysis, and exploitation requires only that the EasyStore extension be installed and the coupon feature reachable in the backend; the flaw is a real but modest-priority issue whose raw 8.2 HIGH score overstates practical risk.
RemediationAI
Vendor fix identified: the bulk coupon update handler was hardened by casting all submitted coupon IDs to integers (array_map('intval', ...)) and switching to parameterized ->whereIn() query construction; a released patched version number is not independently confirmed in the available data, so administrators should update Easy Store to the latest release beyond 3.0.0 from https://www.joomshaper.com/easystore and verify the installed version afterwards. If an immediate upgrade is not possible, compensating controls with their trade-offs are: restrict the Joomla administrator group so that only trusted accounts hold com_easystore management rights and strip coupon-management ACL from lower-privileged backend users (this reduces the authenticated attack surface but does not remove the flaw for remaining admins); uninstall or unpublish the Easy Store extension on sites that do not use its coupon features (eliminates exposure but removes e-commerce functionality); and deploy WAF/reverse-proxy rules that reject non-integer values in the coupon bulk update ID parameter while alerting on requests to task=coupon.couponBulkUpdate with SQL metacharacters (a detection layer that can be bypassed by encoding tricks and may generate false positives on legitimate bulk operations). Also review Joomla and database logs for anomalous SQL errors or unexpected coupon-table modifications that could indicate prior abuse by an over-privileged account.
Affected VersionsENISA
Affected Packages
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
Easy Store (com_easystore) is a third-party e-commerce component for Joomla published by Joomshaper. The vulnerable code path is the coupon bulk update task, which routes admin-supplied coupon identifier input into raw SQL IN (...) clauses built in ProductCoupon.php and CouponsModel.php using direct string concatenation, providing neither type validation nor parameter binding. The reported CWE-74 (improper neutralization of special elements in output used by a downstream component) describes the injection class neutrally, while the concrete defect is SQL injection (CWE-89): untrusted input crossing into a SQL query interpreter. Because the query is executed with the database privileges of the Joomla application, a successful injection can read or modify data across the site's MySQL/MariaDB schema, not just the coupon tables. The CPE cpe:2.3:a:joomshaper.com:easy_store_extension_for_joomla:*:*:*:*:*:*:*:* confirms the affected package is the Joomshaper Easy Store extension itself rather than core Joomla. The vendor fix replaces the concatenation with strict integer casting (array_map('intval', ...)) on all submitted IDs and rebuilds the clauses via parameterized ->whereIn() construction, which removes attacker control over SQL syntax.
Know when PHP 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
CVSS:4.0/AV:N/AC:L/AT:N/PR:H/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N
Network admin HTTP endpoint with low complexity but PR:H (administrator required); SQLi yields full arbitrary DB read/write so C/I/A all High, scope unchanged (same DB).
Primary rating from Vendor (Joomla).
CVSS VectorVendor: Joomla
Lifecycle Timeline
2DescriptionCVE.org
Joomla Extension - joomshaper.com - Authenticated, Privileged SQL Injection in Coupon Bulk Update in Easy Store extension 1.0.0-3.0.0 - The coupon bulk update task (administrator/index.php?option=com_easystore&task=coupon.couponBulkUpdate) took input IDs and directly concatenated them into raw SQL IN (...) clauses in ProductCoupon.php and CouponsModel.php without sanitization or parameterization. An authenticated administrator could manipulate the query through injected SQL syntax. Resolved by strictly casting all IDs to integers (array_map('intval', ...)) and adopting parameterized ->whereIn() query construction.
Executive ViewAI
A SQL injection vulnerability in the Easy Store extension for Joomla (versions 1.0.0 through 3.0.0) lets an authenticated Joomla administrator execute arbitrary database queries through the coupon bulk update function. Because exploitation requires full administrator rights - a level of access that already carries broad database trust - the practical risk is moderate, but any compromise or misuse of admin credentials could expose or alter store and customer data. Leadership should note that no vendor-released patch is currently available, so risk must be managed through access restrictions and monitoring.
No vendor-released patch identified at time of analysis. Interim mitigations: restrict administrator interface access to trusted IP ranges and enforce MFA, disable the coupon bulk update feature or the com_easystore component if unused, deploy WAF rules filtering SQL metacharacters on the option=com_easystore&task=coupon.couponBulkUpdate endpoint, enforce least privilege on Joomla administrator accounts, and monitor Joomla and database audit logs for anomalous SQL activity.
Threat Intelligence Overview
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.
What every action level means
SSVC AssessmentENISA
Priority Score
Attack Technique
SQL injection exploits the way applications construct database queries by mixing user input directly into SQL statements.
In PHP versions 7.1.x below 7.1.33, 7.2.x below 7.2.24 and 7.3.x below 7.3.11 in certain configurations of FPM setup it
sapi/cgi/cgi_main.c in PHP before 5.3.12 and 5.4.x before 5.4.2, when configured as a CGI script (aka php-cgi), does not
(1) boardData102.php, (2) boardData103.php, (3) boardDataJP.php, (4) boardDataNA.php, and (5) boardDataWW.php in Netgear
The '/common/download_agent_installer.php' script in the Quest KACE System Management Appliance 8.0.318 is accessible by
ProjectSend versions prior to r1720 are affected by an improper authentication vulnerability. Rated critical severity (C
Roundcube Webmail contains a critical PHP object deserialization vulnerability (CVE-2025-49113, CVSS 9.9) that allows au
Util/PHP/eval-stdin.php in PHPUnit before 4.8.28 and 5.x before 5.6.3 allows remote attackers to execute arbitrary PHP c
Palo Alto Networks PAN-OS management web interface contains an authentication bypass allowing unauthenticated attackers
Nagios XI version xi-5.7.5 is affected by OS command injection. Rated high severity (CVSS 8.8), this vulnerability is re
Nagios XI version xi-5.7.5 is affected by OS command injection. Rated high severity (CVSS 8.8), this vulnerability is re
The get_referers function in /opt/ws/bin/sblistpack in Sophos Web Appliance before 3.7.9.1 and 3.8 before 3.8.1.1 allows
The Backup Migration plugin for WordPress is vulnerable to Remote Code Execution in all versions up to, and including, 1
EUVD-2026-85552
GHSA-jfxm-xpj3-6w92
NVD
CVE.org
EPSS
Vulnrichment
Exploit-DB