CVE-2025-6915

6.3 MEDIUM

📋 TL;DR

A critical SQL injection vulnerability exists in PHPGurukul Student Record System 3.2's /register.php file, allowing remote attackers to manipulate database queries through the session parameter. This affects all deployments of version 3.2 that expose the vulnerable endpoint. Attackers can potentially access, modify, or delete sensitive student and system data.

💻 Affected Systems

Products:
  • PHPGurukul Student Record System
Versions: Version 3.2
Operating Systems: Any OS running PHP
Default Config Vulnerable: ⚠️ Yes
Notes: All installations of version 3.2 are vulnerable if /register.php is accessible

📦 What is this software?

⚠️ Risk & Real-World Impact

🔴

Worst Case

Complete database compromise leading to data theft, data destruction, or full system takeover via SQL injection to RCE chaining

🟠

Likely Case

Unauthorized access to sensitive student records, personal information, and system credentials stored in the database

🟢

If Mitigated

Limited data exposure if proper input validation and WAF rules are in place

🌐 Internet-Facing: HIGH - The vulnerability is remotely exploitable and affects a web-facing application
🏢 Internal Only: MEDIUM - Internal attackers could exploit this to escalate privileges or access sensitive data

🎯 Exploit Status

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

Exploit details are publicly available on GitHub, making this easily weaponizable

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: Unknown

Vendor Advisory: https://phpgurukul.com/

Restart Required: No

Instructions:

No official patch available. Consider upgrading to a newer version if available or implementing workarounds.

🔧 Temporary Workarounds

Input Validation and Sanitization

all

Add parameterized queries and input validation to /register.php

Edit /register.php to replace raw SQL with prepared statements using PDO or mysqli

Web Application Firewall Rules

all

Block SQL injection patterns targeting /register.php

Add WAF rule: deny requests to /register.php containing SQL keywords in parameters

🧯 If You Can't Patch

  • Restrict access to /register.php using IP whitelisting or authentication
  • Implement database user with minimal privileges (read-only if possible)

🔍 How to Verify

Check if Vulnerable:

Test /register.php with SQL injection payloads in session parameter or check if running version 3.2

Check Version:

Check system documentation or admin panel for version information

Verify Fix Applied:

Test that SQL injection payloads no longer execute and return error messages

📡 Detection & Monitoring

Log Indicators:

  • Unusual SQL errors in application logs
  • Multiple requests to /register.php with special characters

Network Indicators:

  • HTTP requests to /register.php containing SQL keywords (UNION, SELECT, etc.)

SIEM Query:

source="web_logs" AND uri="/register.php" AND (payload="' OR " OR payload="UNION" OR payload="SELECT")

🔗 References

📤 Share & Export