CVE-2025-10594
📋 TL;DR
This SQL injection vulnerability in SourceCodester Online Student File Management System 1.0 allows attackers to manipulate database queries through the stud_id parameter in /admin/delete_student.php. Attackers can potentially read, modify, or delete sensitive student data. Organizations using this specific software version are affected.
💻 Affected Systems
- SourceCodester Online Student File Management System
📦 What is this software?
⚠️ Risk & Real-World Impact
Worst Case
Complete database compromise leading to data theft, data manipulation, or complete system takeover via SQL injection to execute arbitrary commands.
Likely Case
Unauthorized access to sensitive student records, grade manipulation, or deletion of student data from the database.
If Mitigated
Limited impact with proper input validation and database permissions restricting damage to non-critical data.
🎯 Exploit Status
Exploit details published on GitHub, requires admin access to reach vulnerable endpoint.
🛠️ Fix & Mitigation
✅ Official Fix
Patch Version: Unknown
Vendor Advisory: https://www.sourcecodester.com/
Restart Required: No
Instructions:
Check vendor website for updated version or security advisory. If unavailable, implement input validation and parameterized queries.
🔧 Temporary Workarounds
Input Validation and Sanitization
PHPAdd server-side validation to ensure stud_id parameter contains only expected numeric values before processing.
PHP example: if(!is_numeric($_GET['stud_id'])) { die('Invalid input'); }
Web Application Firewall (WAF)
allDeploy WAF rules to block SQL injection patterns targeting the vulnerable endpoint.
🧯 If You Can't Patch
- Restrict access to /admin/ directory using IP whitelisting or authentication requirements
- Implement database user with minimal permissions (read-only where possible)
🔍 How to Verify
Check if Vulnerable:
Test /admin/delete_student.php endpoint with SQL injection payloads like ' OR '1'='1 in stud_id parameter
Check Version:
Check system documentation or admin panel for version information
Verify Fix Applied:
Attempt SQL injection tests after fixes; successful blocks indicate remediation
📡 Detection & Monitoring
Log Indicators:
- Unusual database queries from web server
- Multiple failed delete attempts with malformed stud_id parameters
- Admin panel access from unexpected IPs
Network Indicators:
- HTTP requests to /admin/delete_student.php with SQL keywords in parameters
SIEM Query:
source="web_logs" AND uri="/admin/delete_student.php" AND (param="stud_id" AND value MATCH "'|OR|UNION|SELECT")