Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessObtain high-privilege admin/DB access
-
ExploitInject SQL into gID via set_function/use_function
-
ExecutionExecute crafted query in configuration.php
-
ImpactLimited data read/modify
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A05:2025 - Injection
ASVS 5.0
V1 - Encoding and Sanitization Parameterized queries, prepared statements
MITRE ATT&CK
2 techniques across 2 tactics: Initial Access, Persistence The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up. |
| Exploitation Conditions | Exploitation requires the attacker to control the set_function/use_function values that feed the gID argument in admin/configuration.php. Per the vendor, these are NOT editable through any normal Zen Cart admin UI and can only be set at plugin-install time via SQL or through direct database access - effectively requiring pre-existing database write access or equivalent high administrative privilege. This precondition (reflected as PR:H/AC:H) is the primary limiting factor and means default, properly-configured installations are not remotely exploitable by ordinary authenticated users or anonymous attackers. |
| Impact | This is a low-priority issue despite the CWE-89 SQL injection classification, and the signals are internally consistent rather than conflicting. The provided CVSS 4.0 vector (AV:N/AC:H/AT:N/PR:H/UI:N/VC:L/VI:L/VA:L) yields a base score of only 2.1, reflecting high attack complexity, high required privileges, and limited impact on all three dimensions. Critically, the vendor explicitly states that the vulnerable set_function/use_function values controlling the gID argument are not editable through any normal admin UI - they are set only at plugin-install time via SQL or through direct database access. That vendor statement corroborates the PR:H/AC:H rating: an attacker who can already write to the database has little need for this injection path. A public exploit (POC) exists via VulDB/GitHub, so publicly available exploit code exists; however, this is NOT the same as active exploitation. There is no CISA KEV listing and no EPSS score was supplied, but given the steep preconditions, real-world mass exploitation is implausible - this is best characterized as a theoretical/low-value finding rather than an operational threat. |
| Exploit ScenarioDerived | An attacker who already holds high administrative privileges and the ability to influence set_function/use_function values (normally only possible at plugin-install time via SQL or via direct database access) could manipulate the gID argument passed to the eval path in admin/configuration.php to inject SQL. Public exploit code is referenced (GHSA-233f-2p5c-vfgw), but the attacker essentially needs pre-existing database/admin write access, making the practical gain marginal. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Oct 12, 2026
SQL injection in Zen Cart 2.2.2's Admin Panel (admin/configuration.php) lets an attacker influence the SQL executed through the eval-based handling of set_function/use_function values reached via the gID argument. Exploitation is deliberately hard to reach: per the vendor, set_function/use_function are not editable through any normal admin UI and can only be introduced at plugin-install time via SQL or through direct database access, so the practical precondition is pre-existing database write access or equivalent high administrative privilege (CVSS 3.1 AV:N/AC:H/PR:H/UI:N/S:U/C:L/I:L/A:L; CVSS 4.0 base 2.1). Publicly available exploit code exists, but there is no evidence of active exploitation, and this is assessed as a low-priority issue rather than a remotely reachable flaw in default, properly configured installations.
RemediationAI
No vendor-released patch is identified in the available advisory data, so remediation centers on eliminating the precondition and reducing exposure. The decisive control is to ensure that only trusted, reviewed plugin SQL can write to the configuration table: audit the configuration records for unexpected or malformed set_function/use_function values, remove rows that contain executable fragments, and gate all plugin installations through a change-control process with code review of the install SQL - the trade-off is additional plugin intake friction and possible breakage of legitimate plugin configuration rendering. Restrict access to the Admin Panel to trusted networks or an allowlisted set of source IPs and enforce individual least-privilege admin accounts rather than shared privileged logins; be aware that IP allowlisting can lock out roaming administrators and may require a VPN or bastion fallback. Because the payload is stored rather than passed in a request parameter, generic request-inspection WAF rules are unlikely to fire reliably, so detection is better served by file-integrity and database auditing on the configuration table, plus alerting on unexpected eval/stack traces in admin/configuration.php. Database-write access should be limited to a small number of administrative accounts, since any principal who can write to the configuration table effectively holds the precondition for this issue. Consult https://vuldb.com/vuln/416604, https://vuldb.com/vuln/416604/cti and https://cdkkx.github.io/posts/GHSA-233f-2p5c-vfgw.html for the current vendor and researcher guidance, and re-check patch status before assuming a fix is available.
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
Zen Cart is a PHP-based e-commerce platform whose admin configuration subsystem stores rows describing how each setting should be rendered and validated, including the set_function and use_function fields. In admin/configuration.php, these stored values (selected through the gID parameter) are passed into PHP's eval(), and because the values ultimately derive from database content they can carry SQL/PHP fragments that are interpreted rather than treated as data - a CWE-89 (SQL injection) condition with a code-evaluation aspect. The important nuance is the provenance of the payload: these fields are populated by plugin installation SQL or by direct database manipulation, not by any ordinary admin screen, which makes this effectively a second-order/self-inflicted injection requiring the attacker to already control high-value configuration data. The CPE entry (cpe:2.3:a:n/a:zen_cart:*:*:*:*:*:*:*) is version-wildcarded and does not constrain the affected range, so version scoping rests on the reported 2.2.2 product version and the Admin Panel component, tagged PHP/SQLi.
Know when Zen Cart 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:H/AT:N/PR:H/UI:N/VC:L/VI:L/VA:L/SC:N/SI:N/SA:N/E:P
Vendor confirms the injectable values require direct DB access or plugin-install SQL, so PR:H and AC:H; impact is limited SQLi, hence C/I/A all Low.
Primary rating from Vendor (VulDB).
CVSS VectorVendor: VulDB
Lifecycle Timeline
2DescriptionCVE.org
A vulnerability was identified in Zen Cart 2.2.2. Affected by this vulnerability is the function eval of the file admin/configuration.php of the component Admin Panel. The manipulation of the argument gID leads to sql injection. The attack may be initiated remotely. The attack is considered to have high complexity. The exploitation appears to be difficult. The exploit is publicly available and might be used. The vendor explains: "set_function/use_function are not editable through any normal admin UI (only at plugin-install time via SQL, or via direct database access)".
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.
Directory traversal vulnerability in Zen Cart 1.5.4 allows remote attackers to include and execute arbitrary local files
Zen Cart 1.5.7b allows admins to execute arbitrary OS commands by inspecting an HTML radio input element (within the mod
Zen Cart 1.6.0 has XSS in the main_page parameter to index.php. Rated medium severity (CVSS 6.1), this vulnerability is
The LinkPoint module in Zen Cart does not verify that the server hostname matches a domain name in the subject's Common
The Authorize.Net eCheck module in Zen Cart does not verify that the server hostname matches a domain name in the subjec
The PayPal Payments Pro module in Zen Cart does not verify that the server hostname matches a domain name in the subject
The PayPal IPN functionality in Zen Cart does not verify that the server hostname matches a domain name in the subject's
Zen Cart e-commerce stores up to and including version 2.2.2 mishandle attacker-supplied payment data in the PayPal IPN
The traverseStrictSanitize function in admin_dir/includes/classes/AdminRequestSanitizer.php in ZenCart 1.5.5e mishandles
Zen Cart findPluginAdminPage Local File Inclusion Remote Code Execution Vulnerability. Rated high severity (CVSS 8.1), t
In index.php in Zen Cart 1.6.0, the products_id parameter can cause XSS. Rated medium severity (CVSS 6.1), this vulnerab
SQL injection in Zen Cart 2.2.2 and earlier within the admin/modules.php Module Configuration interface allows an authen
EUVD-2026-97335
GHSA-8x88-3qr3-v8qh
NVD
CVE.org
EPSS
VulDB
Exploit-DB