CVE-2025-70152

9.8 CRITICAL

📋 TL;DR

CVE-2025-70152 is an unauthenticated SQL injection vulnerability in the Community Project Scholars Tracking System 1.0 that allows attackers to execute arbitrary SQL commands. This affects all deployments of version 1.0 where the admin endpoints are accessible. Attackers can potentially compromise the entire database and application.

💻 Affected Systems

Products:
  • Community Project Scholars Tracking System
Versions: 1.0
Operating Systems: All
Default Config Vulnerable: ⚠️ Yes
Notes: All installations of version 1.0 are vulnerable by default. The vulnerable endpoints are part of the standard installation.

📦 What is this software?

⚠️ Risk & Real-World Impact

🔴

Worst Case

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

🟠

Likely Case

Unauthenticated attackers extracting sensitive user data, modifying records, or gaining administrative access to the system.

🟢

If Mitigated

Limited impact with proper input validation, parameterized queries, and authentication checks in place.

🌐 Internet-Facing: HIGH
🏢 Internal Only: HIGH

🎯 Exploit Status

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

Exploitation requires no authentication and uses simple SQL injection techniques. Public proof-of-concept demonstrates exploitation.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: Not available

Vendor Advisory: Not available

Restart Required: No

Instructions:

1. Download the source code from code-projects.org
2. Modify /admin/save_user.php and /admin/update_user.php
3. Implement parameterized queries using prepared statements
4. Add authentication checks to verify admin privileges
5. Validate all user inputs before processing

🔧 Temporary Workarounds

Web Application Firewall (WAF)

all

Deploy a WAF with SQL injection protection rules to block malicious requests to the vulnerable endpoints.

Access Restriction

all

Restrict access to /admin/ endpoints to trusted IP addresses only using .htaccess or web server configuration.

Order deny,allow
Deny from all
Allow from 192.168.1.0/24

🧯 If You Can't Patch

  • Disable or remove the vulnerable /admin/save_user.php and /admin/update_user.php endpoints
  • Implement network segmentation to isolate the application from sensitive systems

🔍 How to Verify

Check if Vulnerable:

Send a POST request to /admin/save_user.php with SQL injection payload in firstname parameter and check for database errors or unexpected responses.

Check Version:

Check the version number in the application's documentation or configuration files.

Verify Fix Applied:

Test the same SQL injection payloads after implementing fixes - they should be rejected or sanitized without affecting database operations.

📡 Detection & Monitoring

Log Indicators:

  • Unusual SQL syntax in POST parameters
  • Multiple failed login attempts followed by admin endpoint access
  • Database error messages in application logs

Network Indicators:

  • POST requests to /admin/save_user.php or /admin/update_user.php containing SQL keywords
  • Unusual database query patterns from the application server

SIEM Query:

source="web_logs" AND (url="/admin/save_user.php" OR url="/admin/update_user.php") AND (request_body CONTAINS "UNION" OR request_body CONTAINS "SELECT" OR request_body CONTAINS "INSERT")

🔗 References

📤 Share & Export