PHPGurukul Student Record System SQL Injection Vulnerability in Login Functionality

Vulnerability

A critical SQL injection vulnerability has been identified in PHPGurukul Student Record System version 3.20. The issue resides in the login.php file, specifically within the login process. The vulnerability is caused by inadequate input validation of the 'id' parameter, allowing attackers to inject malicious SQL queries. This exploitation can be done remotely and without authentication, posing a significant risk as it may lead to unauthorized database access, data manipulation, and extraction of sensitive information.

Impact

Exploitation of this vulnerability allows for SQL injection, enabling attackers to manipulate database queries. This could result in unauthorized access to the database, extraction or modification of data, and potentially bypassing authentication mechanisms.

Reproduction

The vulnerability can be reproduced by sending a POST request to login.php with an injected SQL payload in the 'id' parameter. Two types of SQL injection techniques can be used: time-based blind injection, which involves using a payload that makes the database wait for a few seconds before responding, and union-based injection, where the injected SQL query is crafted to retrieve data from the database by combining it with the original query.

Remediation

To address this vulnerability, it is recommended to implement prepared statements and parameter binding to prevent SQL injection. Additionally, input validation and filtering should be applied to ensure user input conforms to expected formats. Minimizing database user permissions and conducting regular security audits can also help enhance the overall security of the application.

Added: Jun 9, 2025, 7:46 PM
Updated: Jun 9, 2025, 7:46 PM

Vulnerability Rating

Custom Algorithm
spread
0.8
impact
5.6
exploitability
9.5
remediation
0.0
relevance
0.0
threat
6.4
urgency
2.9
incentive
10.0

Our algorithm analyzes dozens of metrics to generate these 8 key vulnerability categories, which are then combined to calculate the overall risk score.