CVE-2026-2089

7.3 HIGH

📋 TL;DR

This SQL injection vulnerability in SourceCodester Online Class Record System 1.0 allows attackers to manipulate database queries through the ID parameter in /admin/subject/controller.php. Remote attackers can potentially access, modify, or delete sensitive data in the database. All users running the vulnerable version of this web application are affected.

💻 Affected Systems

Products:
  • SourceCodester Online Class Record System
Versions: 1.0
Operating Systems: All
Default Config Vulnerable: ⚠️ Yes
Notes: The vulnerability exists in the default installation and requires the admin interface to be accessible.

⚠️ Manual Verification Required

This CVE does not have specific version information in our database, so automatic vulnerability detection cannot determine if your system is affected.

Why? The CVE database entry doesn't specify which versions are vulnerable (no version ranges provided by the vendor/NVD).

🔒 Custom verification scripts are available for registered users. Sign up free to download automated test scripts.

Recommended Actions:
  1. Review the CVE details at NVD
  2. Check vendor security advisories for your specific version
  3. Test if the vulnerability is exploitable in your environment
  4. Consider updating to the latest version as a precaution

⚠️ Risk & Real-World Impact

🔴

Worst Case

Complete database compromise including data theft, data manipulation, authentication bypass, and potential remote code execution if database permissions allow.

🟠

Likely Case

Unauthorized access to sensitive student/teacher records, grade manipulation, and potential privilege escalation within the application.

🟢

If Mitigated

Limited impact with proper input validation and database permission restrictions, potentially only allowing data viewing without modification.

🌐 Internet-Facing: HIGH
🏢 Internal Only: MEDIUM

🎯 Exploit Status

Public PoC: ⚠️ Yes
Weaponized: LIKELY
Unauthenticated Exploit: ✅ No
Complexity: LOW

Exploit details are publicly available on GitHub, making this easily exploitable by attackers with basic SQL injection knowledge.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: Unknown

Vendor Advisory: https://www.sourcecodester.com/

Restart Required: No

Instructions:

No official patch available. Consider implementing input validation and parameterized queries in the affected file.

🔧 Temporary Workarounds

Web Application Firewall (WAF)

all

Deploy a WAF with SQL injection rules to block malicious requests to /admin/subject/controller.php

Input Validation Filter

all

Add input validation to sanitize the ID parameter before processing

// In /admin/subject/controller.php, add: $id = intval($_GET['ID']);

🧯 If You Can't Patch

  • Restrict access to /admin/ directory to trusted IP addresses only
  • Implement database user with minimal permissions (read-only if possible)

🔍 How to Verify

Check if Vulnerable:

Test the /admin/subject/controller.php endpoint with SQL injection payloads in the ID parameter

Check Version:

Check the application version in the admin panel or configuration files

Verify Fix Applied:

Verify that SQL injection payloads no longer execute and return appropriate error messages

📡 Detection & Monitoring

Log Indicators:

  • Unusual SQL error messages in application logs
  • Multiple failed login attempts followed by SQL payloads
  • Requests to /admin/subject/controller.php with suspicious ID parameters

Network Indicators:

  • SQL keywords in HTTP GET parameters
  • Unusual database query patterns from web server

SIEM Query:

source="web_logs" AND uri="/admin/subject/controller.php" AND (query="*UNION*" OR query="*SELECT*" OR query="*INSERT*" OR query="*DELETE*")

🔗 References

📤 Share & Export