CVE-2024-24098

7.8 HIGH

📋 TL;DR

CVE-2024-24098 is an SQL injection vulnerability in the News Feed feature of Code-projects Scholars Tracking System 1.0, allowing attackers to execute arbitrary SQL commands. This affects users running the vulnerable version of this PHP-based web application, potentially leading to unauthorized data access or manipulation.

💻 Affected Systems

Products:
  • Code-projects Scholars Tracking System
Versions: 1.0
Operating Systems: Any OS running PHP (e.g., Linux, Windows)
Default Config Vulnerable: ⚠️ Yes
Notes: The vulnerability is present in the default installation of version 1.0, as it involves improper handling of user input in the News Feed component.

📦 What is this software?

⚠️ Risk & Real-World Impact

🔴

Worst Case

Attackers could gain full database access, leading to data theft, modification, or deletion, and potentially achieve remote code execution on the underlying server.

🟠

Likely Case

Unauthorized access to sensitive data such as user credentials, personal information, or academic records stored in the database.

🟢

If Mitigated

With proper input validation and parameterized queries, the risk is minimized to no impact, preventing SQL injection attacks.

🌐 Internet-Facing: HIGH, as the vulnerability is in a web application feature that is typically exposed to the internet, making it accessible to remote attackers.
🏢 Internal Only: MEDIUM, as internal users could exploit it if the system is not properly segmented, but external exposure increases the primary risk.

🎯 Exploit Status

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

Exploitation is straightforward due to the nature of SQL injection, and public proof-of-concept code is available, increasing the likelihood of weaponization.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: Not available

Vendor Advisory: Not available

Restart Required: No

Instructions:

No official patch is provided; users should apply workarounds or consider alternative software. If a patch becomes available, update to the fixed version and review the vendor's instructions.

🔧 Temporary Workarounds

Implement Input Validation and Parameterized Queries

all

Modify the PHP code to sanitize user inputs and use prepared statements to prevent SQL injection in the News Feed feature.

Edit the relevant PHP files (e.g., news_feed.php) to replace raw SQL queries with parameterized queries using PDO or MySQLi.

Apply Web Application Firewall (WAF) Rules

all

Deploy a WAF to block SQL injection attempts targeting the News Feed endpoint.

Configure WAF rules (e.g., ModSecurity) to detect and block patterns like 'OR 1=1' or 'UNION SELECT' in HTTP requests.

🧯 If You Can't Patch

  • Restrict network access to the application to trusted IPs only using firewall rules.
  • Disable or remove the News Feed feature if it is not essential for operations.

🔍 How to Verify

Check if Vulnerable:

Test the News Feed input fields with SQL injection payloads (e.g., ' OR '1'='1) and observe if database errors or unexpected data are returned.

Check Version:

Check the application's version by reviewing source code files or configuration settings, as there may not be a direct command; look for version indicators in files like index.php or README.

Verify Fix Applied:

After applying workarounds, retest with SQL injection payloads to ensure no errors or unauthorized data access occurs.

📡 Detection & Monitoring

Log Indicators:

  • Unusual SQL error messages in web server logs (e.g., PHP warnings about SQL syntax)
  • Multiple failed login attempts or unexpected database queries from the News Feed endpoint.

Network Indicators:

  • HTTP requests containing SQL keywords (e.g., SELECT, UNION, DROP) directed at the News Feed URL.

SIEM Query:

Example: source="web_server" AND (message:"SQL syntax" OR message:"mysql error") AND url:"/news_feed"

🔗 References

📤 Share & Export