Submit #833942: Kushan2k student-management-system 1.0 SQL Injectioninfo

TitelKushan2k student-management-system 1.0 SQL Injection
BeschreibungThe certificate verification endpoint (`GradeController.php`) accepts a `nic` (National Identity Card) number via POST and passes it directly to the `getStatus()` method in `User.php`. That method embeds the input into an SQL query without any parameterisation or escaping: ```php // config/User.php $res = $this->db->query("... WHERE student.NIC={$index} OR student.student_id='{$index}' OR registrations.cetificate_no='{$index}'"); ``` The resulting student ID is then written to the session and the user is redirected to the mycourse page: // controllers/GradeController.php $nic = htmlspecialchars($_POST['nic']); $id = $user->getStatus($nic); if($id!=null && $id>0){ $_SESSION['user_id'] = $id; header("Location:../view/mycourse.view.php",true); } An attacker can inject a boolean-based payload (e.g., 0 OR 1=1 --) into the nic parameter. This alters the query to return the first student ID matching the always‑true condition, thereby bypassing the intended certificate verification entirely. The session is then populated with that student’s ID, and the attacker can view that student’s personal information, enrolled courses, and other sensitive data.
Quelle⚠️ https://github.com/Kushan2k/student-management-system/issues/2
Benutzer
 ChenI (UID 98309)
Einreichung20.05.2026 08:23 (vor 22 Tagen)
Moderieren07.06.2026 11:38 (18 days later)
StatusAkzeptiert
VulDB Eintrag369095 [Kushan2k student-management-system bis f16a4ceaddd6729c4b306ed4641cda3176c1ef2a Certificate Verification Endpoint GradeController.php getStatus nic SQL Injection]
Punkte20

Do you want to use VulDB in your project?

Use the official API to access entries easily!