| 제목 | imvks786 student_management_system 1.0 Broken Access Control |
|---|
| 설명 | The student deletion endpoint (`see.php`) processes the `del` parameter and immediately executes a `DELETE` query **before** checking the logged‑in user’s permission level. The relevant code flow:
```php
// see.php:7-8
if (isset($_GET['submit'])){
if(mysqli_query($con,"DELETE FROM student WHERE ID =".$_GET['del']."")){
// ... later, after deletion ...
// see.php:17-20
$usr=$_SESSION['username'];
$r=mysqli_query($con,"SELECT Permission from login WHERE username='$usr'");
$ro=mysqli_fetch_assoc($r);
$uper=$ro['Permission'];
```
Because the deletion query runs first, a user with only VIEW permission (e.g., the default admin1/admin account) can delete any student record simply by crafting a GET request with ?submit=submit&del=<id>. The subsequent permission check is only used for displaying a warning message; it does not prevent the destructive action. |
|---|
| 원천 | ⚠️ https://github.com/imvks786/student_management_system/issues/4 |
|---|
| 사용자 | kimoji (UID 98406) |
|---|
| 제출 | 2026. 05. 25. AM 06:22 (4 개월 ago) |
|---|
| 모더레이션 | 2026. 06. 07. PM 09:53 (14 days later) |
|---|
| 상태 | 수락 |
|---|
| VulDB 항목 | 369150 [imvks786 student_management_system 까지 9599b560ad3c3b83e75d328b76bedcd489ef1f46 Student Deletion Endpoint /see.php del 권한 상승] |
|---|
| 포인트들 | 20 |
|---|