CVE-2018-25341: Smartshop 1 SQL Injection via product.php id Parameter
Smartshop 1 contains a SQL injection vulnerability that allows unauthenticated attackers to execute arbitrary SQL queries by injecting malicious code through the id parameter. Attackers can send GET requests to product.php with union-based SQL injection payloads in the id parameter to extract sensitive database information including usernames and database names.
Security readout for executives and security teams
Plain-English summary
Smartshop 1, a free open-source e-commerce demo project, has a database flaw that lets anyone on the internet manipulate a product page URL to read data straight out of the site's database. No login is required. Because Smartshop is a hobbyist reference project rather than a supported commercial platform, exposure is typically limited to small deployments that copied the code.
Executive priority
Priority is elevated only if your organization runs a Smartshop-derived site publicly; otherwise informational. Where it applies, treat as a high-priority fix within the next patch cycle because unauthenticated data disclosure carries direct regulatory and reputational risk.
Technical view
The vulnerability is a classic union-based SQL injection (CWE-89) in product.php via the unsanitized id GET parameter of Smartshop 1.0. An unauthenticated remote attacker can append crafted SQL to the id value to alter the executed query and disclose database contents such as usernames and schema names. CVSS 4.0 base score is 8.8 (AV:N/AC:L/PR:N/UI:N/VC:H/VI:L/VA:N).
Likely exposure
Exposure is narrow: Smartshop is a small open-source demo shop distributed via GitHub and Behance, not a widely deployed commercial product. Risk concentrates on developers, students, or small sites that cloned the project and left it exposed to the internet without modification.
Exploitation context
A public proof-of-concept exists on Exploit-DB (44823) and the VulnCheck advisory documents union-based extraction against product.php?id=. The flaw is not listed in CISA KEV and there is no cited evidence of active in-the-wild exploitation, but the low complexity and public PoC make opportunistic scanning realistic.
Researcher notes
CWE-89 union-based SQLi in product.php id parameter, unauthenticated, network-reachable. Vendor field lists Behance, but Smartshop originates from the smakosh GitHub project used as a portfolio piece; no formal vendor advisory or patch is cited. Confirm exact commit baseline before signing off on remediation, and note CVSS 4.0 vector reflects high confidentiality but limited integrity/availability impact.
Mitigation direction
Inventory any deployments derived from the Smartshop GitHub repository or Behance release.
Take exposed Smartshop instances offline or place them behind authentication until remediated.
Refactor product.php to use parameterized queries or prepared statements for the id parameter.
Add a WAF rule blocking SQL metacharacters and UNION patterns on id.
Check upstream Smartshop repository for community patches before redeploying.
Validation and detection
Grep the codebase for direct concatenation of $_GET['id'] into SQL in product.php and related files.
Review web server and database logs for suspicious id values containing UNION, SELECT, or quote characters.
Run an authenticated SAST or SQLi scanner against product.php in a staging copy.
Confirm database accounts used by the app have least-privilege access to limit disclosure impact.
Generated from the cited source records. This long-tail analysis has not been individually reviewed by a named human.
Potential ATT&CK relevance
Conservative CVE-to-ATT&CK context
These mappings and lookup hints may be relevant to the vulnerability behavior, CWE, affected product, or exposure path. Glexia-inferred context is not an official MITRE, ATT&CK, CWE, or CVE Program mapping.
ATT&CK lookup starting points
Use these exact CWE pages and searches to review the Glexia ATT&CK library from this CVE's weakness and description context.
cwe · medium confidence lookup
CWE-89: Database access and collection lookup
Injection into data stores can inform collection, data access, and exfiltration detection reviews. Open the exact CWE lookup page first, then review the ATT&CK searches from that MITRE weakness context. This is a Glexia lookup hint, not an official ATT&CK mapping.
The CVE wording references database injection or access, so collection and exfiltration review may help. This is a Glexia inferred lookup path, not an official MITRE, ATT&CK, or CVE Program mapping.
These fields come from the CVE record and ADP containers, not from Glexia's Take. They preserve time-varying source decisions such as CISA SSVC, KEV status, CVSS metrics, and provider references.
We collect every scored CVSS vector available in the official CNA and ADP containers. When more than one version is present, the table keeps the source vectors side by side instead of collapsing them into the highest score.
CWE links open Glexia weakness intelligence pages with official CWE context, developer remediation guidance, and related CVE mappings.
CWE-89 · source CWE mapping
Improper Neutralization of Special Elements used in an SQL Command ('SQL Injection')
Improper Neutralization of Special Elements used in an SQL Command ('SQL Injection') represents a recurring weakness pattern that can create exploitable paths when design, validation, or implementation controls are missing.