CVSS Vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:L
Lifecycle Timeline
4Description
A vulnerability was found in code-projects School Fees Payment System 1.0. It has been rated as critical. This issue affects some unknown processing of the file /student.php. The manipulation of the argument ID leads to sql injection. The attack may be initiated remotely. The exploit has been disclosed to the public and may be used.
Analysis
CVE-2025-6403 is a critical SQL injection vulnerability in code-projects School Fees Payment System version 1.0, specifically in the /student.php file's ID parameter. An unauthenticated remote attacker can exploit this to execute arbitrary SQL queries, potentially leading to unauthorized data access, modification, or deletion of student and payment records. The vulnerability has been publicly disclosed with working exploits available, and while the CVSS score of 7.3 indicates medium-to-high severity, the SQL injection vector combined with public PoC availability presents significant real-world risk for deployed instances.
Technical Context
This vulnerability stems from CWE-74 (Improper Neutralization of Special Elements in Output Used by a Downstream Component, also known as 'Injection'), manifesting as SQL injection in a PHP-based web application. The School Fees Payment System processes student records via the /student.php endpoint, which fails to properly sanitize or parameterize the 'ID' parameter before incorporating it into SQL queries. The root cause is insufficient input validation and lack of prepared statements or parameterized queries. The application likely uses direct string concatenation to build SQL queries (e.g., `SELECT * FROM students WHERE id = ` + $_GET['ID']), allowing attackers to inject SQL metacharacters (quotes, semicolons, SQL keywords) to manipulate query logic. This is a classic injection flaw in PHP applications that predate modern ORM frameworks and secure coding practices.
Affected Products
code-projects School Fees Payment System, version 1.0 (all installations). Likely CPE: cpe:2.3:a:code-projects:school_fees_payment_system:1.0:*:*:*:*:*:*:*. No vendor advisory or official patch documentation is referenced, suggesting this is either abandoned software or the vendor has not issued formal security guidance. Affected deployments are those with publicly or internally accessible instances of /student.php. Educational institutions using this system for student/parent portals are at highest risk due to sensitive data exposure.
Remediation
Immediate actions: (1) **Apply input validation**: Implement strict whitelist validation for the ID parameter (numeric-only if ID is an integer); (2) **Use prepared statements**: Replace all dynamic SQL with parameterized queries using mysqli_prepare() or PDO prepared statements with bound parameters; (3) **Code example (PHP/PDO)**: `$stmt = $pdo->prepare('SELECT * FROM students WHERE id = ?'); $stmt->execute([$_GET['ID']]);` instead of `SELECT * FROM students WHERE id = ` . $_GET['ID']; (4) **WAF/IDS rules**: Deploy Web Application Firewall rules to block SQL injection patterns (quotes, SQL keywords, comment syntax) in the ID parameter; (5) **Principle of least privilege**: Ensure database user credentials for the application have minimal necessary permissions (SELECT only on student records, no DROP/ALTER); (6) **Check for vendor patches**: Contact code-projects or review their repository for security updates—if no patch exists, consider migration to maintained alternatives (e.g., open-source school management systems with active security patching). No official CVE patch link is provided; remediation requires manual code review and patching by the deploying organization.
Priority Score
Share
External POC / Exploit Code
Leaving vuln.today
EUVD-2025-18809