SourceCodester Point of Sales CVE-2025-12293
MEDIUMSeverity by source
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/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X
Network-reachable endpoint, no auth or interaction required; limited C/I/A reflects partial data read/write, not full DB control or system takeover.
Primary rating from NVD.
CVSS VectorNVD
Lifecycle Timeline
2DescriptionCVE.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.
AnalysisAI
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.
Technical ContextAI
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.
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.
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
Share
External POC / Exploit Code
Leaving vuln.today