CVE-2025-7752
📋 TL;DR
This critical SQL injection vulnerability in code-projects Online Appointment Booking System 1.0 allows attackers to execute arbitrary SQL commands via the 'did' parameter in /admin/deletedoctor.php. Attackers can potentially access, modify, or delete database content including sensitive appointment and user data. All installations of version 1.0 with the vulnerable file accessible are affected.
💻 Affected Systems
- code-projects Online Appointment Booking System
📦 What is this software?
⚠️ Risk & Real-World Impact
Worst Case
Complete database compromise leading to data theft, data destruction, authentication bypass, and potential remote code execution if database functions allow it.
Likely Case
Unauthorized access to sensitive appointment data, patient information, and administrative credentials stored in the database.
If Mitigated
Limited impact with proper input validation, parameterized queries, and database user privilege restrictions in place.
🎯 Exploit Status
Exploit details are publicly available. Attack requires access to admin functionality but SQL injection is straightforward once authenticated.
🛠️ Fix & Mitigation
✅ Official Fix
Patch Version: Unknown
Vendor Advisory: https://code-projects.org/
Restart Required: No
Instructions:
1. Check vendor website for security updates. 2. If no patch available, implement parameterized queries. 3. Sanitize all user inputs. 4. Apply input validation for 'did' parameter.
🔧 Temporary Workarounds
Input Validation and Sanitization
allAdd server-side validation to ensure 'did' parameter contains only numeric values
// PHP example: if(!is_numeric($_GET['did'])) { die('Invalid input'); }
Web Application Firewall Rule
allBlock SQL injection patterns targeting /admin/deletedoctor.php
ModSecurity rule: SecRule REQUEST_URI "@contains /admin/deletedoctor.php" "id:1001,phase:2,deny,status:403,msg:'SQLi attempt detected'"
🧯 If You Can't Patch
- Restrict access to /admin/deletedoctor.php using IP whitelisting or authentication requirements
- Implement database user privilege separation to limit potential damage from SQL injection
🔍 How to Verify
Check if Vulnerable:
Test /admin/deletedoctor.php?did=1' OR '1'='1 and observe if SQL error or unexpected behavior occurs
Check Version:
Check system documentation or configuration files for version information
Verify Fix Applied:
Attempt SQL injection payloads and verify they are rejected or properly handled without database errors
📡 Detection & Monitoring
Log Indicators:
- SQL syntax errors in application logs
- Multiple failed requests to /admin/deletedoctor.php
- Unusual database queries from web application user
Network Indicators:
- HTTP requests containing SQL keywords (SELECT, UNION, etc.) to /admin/deletedoctor.php
- Abnormal response patterns from the endpoint
SIEM Query:
source="web_logs" AND uri="/admin/deletedoctor.php" AND (message="*SQL*" OR message="*syntax*" OR message="*database*")