CVE-2024-29303

9.8 CRITICAL

📋 TL;DR

This vulnerability allows attackers to execute arbitrary SQL commands through the delete admin users function in SourceCodester PHP Task Management System 1.0. Attackers can potentially delete, modify, or extract sensitive data from the database. Organizations using this specific version of the task management system are affected.

💻 Affected Systems

Products:
  • SourceCodester PHP Task Management System
Versions: 1.0
Operating Systems: Any OS running PHP
Default Config Vulnerable: ⚠️ Yes
Notes: Requires admin panel access to reach the vulnerable delete function.

📦 What is this software?

⚠️ Risk & Real-World Impact

🔴

Worst Case

Complete database compromise leading to data theft, data destruction, privilege escalation to admin, and potential remote code execution via database functions.

🟠

Likely Case

Unauthorized deletion of admin accounts, data exfiltration of user credentials and sensitive task information, and potential system takeover.

🟢

If Mitigated

Limited to unauthorized data viewing if proper input validation and parameterized queries are implemented.

🌐 Internet-Facing: HIGH
🏢 Internal Only: MEDIUM

🎯 Exploit Status

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

Exploit requires admin authentication to access the vulnerable endpoint, but SQL injection payloads are simple and well-documented.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: Not available

Vendor Advisory: Not available

Restart Required: No

Instructions:

No official patch exists. Replace with secure alternative software or implement custom fixes.

🔧 Temporary Workarounds

Input Validation and Sanitization

all

Implement strict input validation and parameterized queries for all user inputs in the delete admin users function.

Modify PHP code to use prepared statements with PDO or mysqli

Web Application Firewall (WAF)

all

Deploy a WAF with SQL injection protection rules to block malicious payloads.

Configure WAF to block SQL injection patterns

🧯 If You Can't Patch

  • Isolate the system on a segmented network with strict access controls
  • Disable or restrict access to the admin panel from untrusted networks

🔍 How to Verify

Check if Vulnerable:

Test the delete admin users function with SQL injection payloads like ' OR '1'='1 in user ID parameter.

Check Version:

Check the software version in the admin panel or configuration files.

Verify Fix Applied:

Verify that SQL injection payloads no longer execute and return proper error messages or no results.

📡 Detection & Monitoring

Log Indicators:

  • Unusual SQL error messages in application logs
  • Multiple failed delete attempts with suspicious parameters
  • Admin user deletions from unexpected IP addresses

Network Indicators:

  • HTTP POST requests to admin delete endpoint containing SQL keywords like UNION, SELECT, OR

SIEM Query:

source="web_logs" AND (uri="/admin/delete_user.php" OR uri LIKE "%/admin/delete%") AND (request_body LIKE "%OR%" OR request_body LIKE "%UNION%" OR request_body LIKE "%SELECT%")

🔗 References

📤 Share & Export