CVE-2018-5974

9.8 CRITICAL

📋 TL;DR

This vulnerability allows attackers to perform SQL injection attacks through the catid array parameter in SimpleCalendar 3.1.9 for Joomla!. Attackers can execute arbitrary SQL commands on the database, potentially compromising the entire Joomla! installation. All Joomla! sites using SimpleCalendar 3.1.9 are affected.

💻 Affected Systems

Products:
  • SimpleCalendar for Joomla!
Versions: 3.1.9
Operating Systems: All
Default Config Vulnerable: ⚠️ Yes
Notes: Only affects Joomla! installations with SimpleCalendar component installed.

📦 What is this software?

⚠️ Risk & Real-World Impact

🔴

Worst Case

Complete database compromise leading to data theft, privilege escalation, remote code execution, and full system takeover.

🟠

Likely Case

Database information disclosure, data manipulation, and potential administrative access to the Joomla! site.

🟢

If Mitigated

Limited impact with proper input validation and parameterized queries preventing SQL injection.

🌐 Internet-Facing: HIGH
🏢 Internal Only: MEDIUM

🎯 Exploit Status

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

Public exploit code available, requires no authentication, and is easy to execute.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: 3.1.10 or later

Vendor Advisory: https://extensions.joomla.org/extension/simplecalendar/

Restart Required: No

Instructions:

1. Log into Joomla! admin panel
2. Navigate to Extensions > Manage
3. Update SimpleCalendar to version 3.1.10 or later
4. Clear Joomla! cache

🔧 Temporary Workarounds

Input Validation Filter

all

Add input validation to filter catid parameter values to integers only

Modify component code to validate catid parameter as integer before processing

WAF Rule

all

Implement web application firewall rules to block SQL injection patterns in catid parameter

Add WAF rule: Detect and block SQL injection patterns in catid parameter

🧯 If You Can't Patch

  • Disable SimpleCalendar component entirely if not needed
  • Implement strict network segmentation and limit database access

🔍 How to Verify

Check if Vulnerable:

Check Joomla! admin panel > Extensions > Manage > SimpleCalendar version

Check Version:

Check Joomla! database: SELECT manifest_cache FROM #__extensions WHERE element = 'com_simplecalendar'

Verify Fix Applied:

Confirm SimpleCalendar version is 3.1.10 or later in Joomla! admin panel

📡 Detection & Monitoring

Log Indicators:

  • Unusual SQL queries in database logs
  • Multiple requests with catid parameter containing SQL syntax

Network Indicators:

  • HTTP requests with catid parameter containing SQL keywords (UNION, SELECT, etc.)

SIEM Query:

source="web_logs" AND (catid="*UNION*" OR catid="*SELECT*" OR catid="*FROM*" OR catid="*WHERE*")

🔗 References

📤 Share & Export