CVE-2024-8161

9.8 CRITICAL

📋 TL;DR

A critical SQL injection vulnerability in ATISolutions CIGES allows remote attackers to execute arbitrary SQL queries through the idCentro parameter in the /modules/ajaxServiciosCentro.php endpoint. This enables complete database compromise including data theft, modification, or deletion. All organizations using CIGES versions below 2.15.5 are affected.

💻 Affected Systems

Products:
  • ATISolutions CIGES
Versions: All versions lower than 2.15.5
Operating Systems: Any OS running CIGES
Default Config Vulnerable: ⚠️ Yes
Notes: The vulnerability exists in the default installation and requires no special configuration to be exploitable.

⚠️ Manual Verification Required

This CVE does not have specific version information in our database, so automatic vulnerability detection cannot determine if your system is affected.

Why? The CVE database entry doesn't specify which versions are vulnerable (no version ranges provided by the vendor/NVD).

🔒 Custom verification scripts are available for registered users. Sign up free to download automated test scripts.

Recommended Actions:
  1. Review the CVE details at NVD
  2. Check vendor security advisories for your specific version
  3. Test if the vulnerability is exploitable in your environment
  4. Consider updating to the latest version as a precaution

⚠️ Risk & Real-World Impact

🔴

Worst Case

Complete database compromise leading to data exfiltration, data destruction, privilege escalation, and potential lateral movement to other systems.

🟠

Likely Case

Attackers extract sensitive data including user credentials, personal information, and business data for extortion or sale on dark web markets.

🟢

If Mitigated

With proper WAF rules and input validation, exploitation attempts are blocked, though the underlying vulnerability remains.

🌐 Internet-Facing: HIGH
🏢 Internal Only: MEDIUM

🎯 Exploit Status

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

SQL injection vulnerabilities are commonly weaponized quickly. The public advisory provides enough detail for attackers to craft exploits.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: 2.15.5

Vendor Advisory: https://www.incibe.es/en/incibe-cert/notices/aviso/sql-injection-vulnerability-cigesv2-system

Restart Required: Yes

Instructions:

1. Download CIGES version 2.15.5 or higher from official vendor sources. 2. Backup current installation and database. 3. Apply the update following vendor documentation. 4. Restart the CIGES service. 5. Verify functionality.

🔧 Temporary Workarounds

Web Application Firewall Rules

all

Implement WAF rules to block SQL injection patterns in the idCentro parameter

# Example ModSecurity rule: SecRule ARGS:idCentro "@detectSQLi" "id:1001,phase:2,deny,status:403"

Input Validation Filter

all

Add server-side validation to restrict idCentro parameter to expected values

# PHP example: if(!is_numeric($_GET['idCentro'])) { die('Invalid input'); }

🧯 If You Can't Patch

  • Block external access to /modules/ajaxServiciosCentro.php endpoint at network perimeter
  • Implement strict input validation and parameterized queries in application code

🔍 How to Verify

Check if Vulnerable:

Check CIGES version in admin panel or configuration files. If version is below 2.15.5, system is vulnerable.

Check Version:

Check CIGES configuration files or admin interface for version information

Verify Fix Applied:

After patching, verify version shows 2.15.5 or higher. Test the vulnerable endpoint with safe SQL injection test payloads to confirm blocking.

📡 Detection & Monitoring

Log Indicators:

  • Unusual SQL queries in application logs
  • Multiple requests to /modules/ajaxServiciosCentro.php with SQL syntax in parameters
  • Database error messages containing SQL fragments

Network Indicators:

  • HTTP requests to vulnerable endpoint with SQL keywords (UNION, SELECT, etc.) in parameters
  • Unusual database connection patterns from application server

SIEM Query:

source="web_logs" AND uri="/modules/ajaxServiciosCentro.php" AND (param="*UNION*" OR param="*SELECT*" OR param="*OR 1=1*")

🔗 References

📤 Share & Export