Skip to main content

SourceCodester Point of Sales CVE-2025-12293

MEDIUM
Improper Neutralization of Special Elements in Output Used by a Downstream Component ('Injection') (CWE-74)
2025-10-27 cna@vuldb.com
5.5
CVSS 4.0 · Vendor: vuldb
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Send HTTP request to /category.php
  2. Exploit
    Inject SQL payload via Category parameter
  3. Execution
    Bypass unsanitized query logic
  4. Impact
    Extract or manipulate database records

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A05:2025 - Injection
ASVS 5.0
V1 - Encoding and Sanitization Input neutralization, injection prevention
Exploitation Conditions

The injection point is the Category parameter submitted to /category.php, and no authentication, special configuration, or user interaction is required - confirmed by the CVSS 4.0 vector (PR:N/UI:N/AC:L/AT:N). Remote unauthenticated exploitation is possible against any internet-accessible deployment of SourceCodester Point of Sales 1.0 in its default configuration. Exploitation is bounded by actual deployment of this specific PHP application; the software is primarily distributed as an academic or student project via SourceCodester, significantly limiting real-world exposure. No non-default feature flag or configuration setting is cited as a precondition in the CVE description or references.

Impact

The CVSS 4.0 base score of 5.5 is internally consistent with an AV:N/AC:L/AT:N/PR:N/UI:N vector paired with limited system impact (VC:L/VI:L/VA:L) and no subsequent-system impact (SC:N/SI:N/SA:N). The E:P threat modifier confirms a proof-of-concept is publicly available, which modestly elevates practical risk above the base score. However, the EPSS score of 0.03% at the 8th percentile is notably low and signals that mass automated exploitation has not been observed, likely because SourceCodester Point of Sales is primarily an academic or student demo application with minimal production deployment. The absence from CISA KEV further supports this interpretation. The realistic priority is low for most organizations; it becomes relevant only for any environment that has inadvertently deployed this application on an internet-accessible server. There is no CVSS vector conflict requiring escalation - description, CVSS, and EPSS are mutually consistent in characterizing a real but narrowly impactful vulnerability.

Exploit ScenarioDerived

An unauthenticated remote attacker sends an HTTP request to /category.php with a crafted value in the Category parameter - for example, appending a SQL fragment such as ' OR '1'='1 or a UNION-based payload - causing the backend SQL query to return unintended data or execute attacker-controlled logic. A public proof-of-concept is documented in the GitHub issue at https://github.com/J-Fy2767/CVE/issues/4, lowering the technical barrier to exploitation. Depending on database permissions, the attacker may enumerate tables, extract credentials or transaction records, or manipulate data.

This Month Plan within 30 days. Why: MEDIUM severity (CVSS 4.0-6.9).
No patch listed yet 0.0% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Jul 25, 2026

SQL injection in SourceCodester Point of Sales 1.0 (by janobe) via the Category parameter in /category.php allows remote, unauthenticated attackers to manipulate backend database queries with no user interaction required. The CVSS 4.0 base vector (AV:N/AC:L/AT:N/PR:N/UI:N) confirms exploitation is straightforward and requires no privileges, though impact is limited (VC:L/VI:L/VA:L), indicating partial data exposure and manipulation rather than full system compromise. A publicly available proof-of-concept exists - reflected in the E:P threat modifier - yet the very low EPSS score of 0.03% (8th percentile) and absence from CISA KEV indicate no public exploit identified at time of analysis has driven widespread automated attacks.

RemediationAI

No vendor-released patch has been identified at time of analysis for SourceCodester Point of Sales 1.0. The definitive fix is to refactor /category.php to use PHP PDO or MySQLi prepared statements with parameterized queries for the Category parameter, which eliminates the injection surface entirely. As a compensating control, deploying a WAF rule to block SQL metacharacter sequences (e.g., single quotes, UNION, OR 1=1 patterns) in the Category parameter can reduce exploitation success but is bypassable and should not substitute for code-level remediation. If the application is internet-accessible and not required for active operations, taking it offline is the most effective risk reduction - particularly given its academic-use-case nature. Restricting the database user account to SELECT-only permissions on the minimum required tables limits data manipulation and deletion impact even if injection is achieved. See vulnerability details at https://vuldb.com/?id.329961 and the proof-of-concept reference at https://github.com/J-Fy2767/CVE/issues/4.

Affects your stack

Find out whether the stacks and servers you run are on an affected version.

Checking this CVE against your own stacks and servers is part of the Basic plan and up.

Technical ContextAI · show details

SourceCodester Point of Sales 1.0 is a PHP-based retail management application developed by janobe and distributed via SourceCodester (CPE: cpe:2.3:a:janobe:point_of_sales:1.0:*:*:*:*:*:*:*). The vulnerable file /category.php accepts a Category parameter and incorporates it into a SQL query without adequate sanitization or parameterization, a classic failure classified under CWE-74 (Improper Neutralization of Special Elements in Output Used by a Downstream Component - Injection). This root cause encompasses the broader injection family, where untrusted input is passed to an interpreter - in this case an SQL engine - allowing an attacker to alter query logic. The PHP tag in the intelligence confirms the server-side language, and the SQLi tag confirms the specific injection subtype rather than a secondary injection class.

Know when Point Of Sales 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

Vendor (vuldb) PRIMARY 5.5 MEDIUM
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:L/VI:L/VA:L/SC:N/SI:N/SA:N/E:P
vuln.today AI 7.3 HIGH

Network-reachable endpoint, no auth or interaction required; limited C/I/A reflects partial data read/write, not full DB control or system takeover.

3.1 AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:L
4.0 AV:N/AC:L/AT:N/PR:N/UI:N/VC:L/VI:L/VA:L/SC:N/SI:N/SA:N

Primary rating from Vendor (vuldb).

CVSS VectorVendor: vuldb

Attack Vector
Network
Attack Complexity
Low
Attack Requirements
None
Privileges Required
None
User Interaction
None
Vulnerable system: Confidentiality
Low
Vulnerable system: Integrity
Low
Vulnerable system: Availability
Low
Subsequent system: Confidentiality
None
Subsequent system: Integrity
None
Subsequent system: Availability
None

DescriptionCVE.org

A vulnerability was identified in SourceCodester Point of Sales 1.0. This issue affects some unknown processing of the file /category.php. Such manipulation of the argument Category leads to sql injection. It is possible to launch the attack remotely. The exploit is publicly available and might be used.

Threat Intelligence Overview

EPSS Score
0.0%
Top 92% exploitable
Prevalence
Rare
niche academic demo POS app, negligible production deployment footprint
Exploit
POC
Public exploit code exists
Data Quality
5 sources
Confidence: Medium

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.

SignalValue
Severity MEDIUM
CISA KEV No
Public POC Yes
EPSS 0.0%
Patch available No
Active threat No
Deciding rule
MEDIUM severity (CVSS 4.0-6.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision· derived
Scheduled
Exploitation· derived
Poc
System Exposure· derived
Open
Automatable· derived
Yes
Human Impact· derived
Medium

Priority Score

48
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +28
PoC: +20
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

SQL injection exploits the way applications construct database queries by mixing user input directly into SQL statements.

Affected Products (CPE)CVE.org

cpe:2.3:a:janobe:point_of_sales:1.0:*:*:*:*:*:*:*

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy