CVE-2025-11074

7.3 HIGH

📋 TL;DR

This SQL injection vulnerability in Project Monitoring System 1.0 allows attackers to execute arbitrary SQL commands through the login form. Attackers can potentially bypass authentication, access sensitive data, or compromise the database server. All deployments of Project Monitoring System 1.0 with the vulnerable login.php file are affected.

💻 Affected Systems

Products:
  • code-projects Project Monitoring System
Versions: 1.0
Operating Systems: All
Default Config Vulnerable: ⚠️ Yes
Notes: Any installation with the default login.php file is vulnerable. The vulnerability exists in the authentication mechanism.

📦 What is this software?

⚠️ Risk & Real-World Impact

🔴

Worst Case

Complete database compromise leading to data theft, authentication bypass, privilege escalation, and potential remote code execution on the database server.

🟠

Likely Case

Authentication bypass allowing unauthorized access to the monitoring system, followed by data exfiltration from the database.

🟢

If Mitigated

Failed login attempts logged, but no successful exploitation due to input validation or WAF protection.

🌐 Internet-Facing: HIGH
🏢 Internal Only: MEDIUM

🎯 Exploit Status

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

Exploit details are publicly available on GitHub. The vulnerability requires no authentication and can be exploited with basic SQL injection techniques.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: Unknown

Vendor Advisory: https://code-projects.org/

Restart Required: No

Instructions:

No official patch available. Consider implementing workarounds or migrating to a supported alternative.

🔧 Temporary Workarounds

Input Validation and Parameterized Queries

all

Modify login.php to use prepared statements with parameterized queries instead of concatenating user input into SQL statements.

Replace vulnerable SQL queries with prepared statements using PDO or mysqli with bound parameters

Web Application Firewall (WAF)

all

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

Configure WAF rules to detect and block SQL injection patterns in login requests

🧯 If You Can't Patch

  • Isolate the system behind a firewall with strict access controls and monitor all login attempts
  • Implement network segmentation to limit database server access only to necessary systems

🔍 How to Verify

Check if Vulnerable:

Test the login form with SQL injection payloads like ' OR '1'='1 in username/password fields and observe if authentication is bypassed or errors reveal SQL details.

Check Version:

Check the software version in the application interface or review the source code files for version indicators.

Verify Fix Applied:

After implementing parameterized queries, test with the same SQL injection payloads to confirm they no longer bypass authentication or cause SQL errors.

📡 Detection & Monitoring

Log Indicators:

  • Unusual SQL syntax in login attempt logs
  • Multiple failed login attempts with SQL keywords
  • Successful logins from unexpected IP addresses

Network Indicators:

  • HTTP POST requests to /login.php containing SQL injection patterns
  • Unusual database query patterns from the application server

SIEM Query:

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

🔗 References

📤 Share & Export