CVE-2024-10449

7.3 HIGH

📋 TL;DR

This critical SQL injection vulnerability in Codezips Hospital Appointment System 1.0 allows attackers to manipulate database queries through the Username parameter in /loginAction.php. Attackers can remotely execute arbitrary SQL commands, potentially compromising the entire database. All deployments of Hospital Appointment System 1.0 are affected.

💻 Affected Systems

Products:
  • Codezips Hospital Appointment System
Versions: 1.0
Operating Systems: Any OS running PHP
Default Config Vulnerable: ⚠️ Yes
Notes: All installations of version 1.0 are vulnerable. The vulnerability exists in the default installation.

📦 What is this software?

⚠️ Risk & Real-World Impact

🔴

Worst Case

Complete database compromise including patient records, appointment data, and administrative credentials leading to data theft, system takeover, and potential ransomware deployment.

🟠

Likely Case

Unauthorized access to sensitive patient data, appointment manipulation, and potential privilege escalation to administrative accounts.

🟢

If Mitigated

Limited data exposure if proper input validation and parameterized queries are implemented, with database permissions restricted to minimum necessary.

🌐 Internet-Facing: HIGH - The vulnerability is remotely exploitable via the login page which is typically internet-facing in hospital appointment systems.
🏢 Internal Only: MEDIUM - Even internal systems could be targeted by malicious insiders or compromised internal devices.

🎯 Exploit Status

Public PoC: ⚠️ Yes
Weaponized: LIKELY
Unauthenticated Exploit: ⚠️ Yes
Complexity: LOW

Exploit details are publicly available on GitHub. SQL injection via login forms is a well-understood attack vector with many automated tools available.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: Unknown

Vendor Advisory: None found

Restart Required: No

Instructions:

No official patch available. Consider upgrading to a newer version if available, or implement workarounds.

🔧 Temporary Workarounds

Input Validation and Sanitization

all

Add server-side validation and sanitization for the Username parameter in /loginAction.php

Edit /loginAction.php to implement parameterized queries or prepared statements

Web Application Firewall (WAF)

all

Deploy WAF rules to block SQL injection patterns

Add WAF rule: deny requests containing SQL keywords in Username parameter

🧯 If You Can't Patch

  • Isolate the system behind a reverse proxy with strict input filtering
  • Implement network segmentation to limit database access from the application server only

🔍 How to Verify

Check if Vulnerable:

Test the login page with SQL injection payloads like ' OR '1'='1 in the Username field

Check Version:

Check application version in admin panel or readme files

Verify Fix Applied:

Attempt SQL injection after implementing fixes and verify proper error handling and query execution

📡 Detection & Monitoring

Log Indicators:

  • Multiple failed login attempts with SQL keywords
  • Unusual database query patterns from application server
  • Login attempts with special characters in Username field

Network Indicators:

  • HTTP POST requests to /loginAction.php containing SQL injection patterns
  • Unusual database port traffic from web server

SIEM Query:

source="web_logs" AND uri="/loginAction.php" AND (username="*' OR*" OR username="*;--*" OR username="*UNION*" OR username="*SELECT*" OR username="*INSERT*")

🔗 References

📤 Share & Export