CVE-2024-27185

9.1 CRITICAL

📋 TL;DR

This vulnerability in Joomla's pagination class allows attackers to inject arbitrary parameters into pagination links, which can poison caching systems. This affects all Joomla installations using the vulnerable pagination component, potentially exposing cached content to unauthorized users or manipulation.

💻 Affected Systems

Products:
  • Joomla CMS
Versions: 4.4.0 through 4.4.3 and 5.0.0 through 5.0.3
Operating Systems: All
Default Config Vulnerable: ⚠️ Yes
Notes: Requires pagination functionality to be used and caching enabled. Affects both frontend and backend pagination.

📦 What is this software?

⚠️ Risk & Real-World Impact

🔴

Worst Case

Attackers could poison cache servers to serve malicious content to all users, potentially leading to credential theft, malware distribution, or defacement of cached pages.

🟠

Likely Case

Attackers manipulate cached content to display unauthorized information or redirect users to malicious sites through poisoned pagination links.

🟢

If Mitigated

With proper cache controls and input validation, impact is limited to potential cache invalidation or minor content manipulation.

🌐 Internet-Facing: HIGH
🏢 Internal Only: MEDIUM

🎯 Exploit Status

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

Exploitation requires understanding of cache poisoning techniques but is straightforward once understood. The advisory includes technical details that could facilitate exploitation.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: Joomla 4.4.4 and 5.0.4

Vendor Advisory: https://developer.joomla.org/security-centre/942-20240802-core-cache-poisoning-in-pagination.html

Restart Required: No

Instructions:

1. Backup your Joomla installation and database. 2. Update to Joomla 4.4.4 or 5.0.4 via the Joomla Update component. 3. Clear all caches after update. 4. Verify the update was successful.

🔧 Temporary Workarounds

Disable Caching

all

Temporarily disable Joomla caching to prevent cache poisoning attacks.

Navigate to System → Global Configuration → System tab → Cache Settings → Set Cache Handler to 'No Caching'

Disable Pagination

all

Remove pagination functionality from vulnerable components if not essential.

Edit component settings to disable pagination or limit items per page to avoid pagination

🧯 If You Can't Patch

  • Implement WAF rules to block suspicious pagination parameter patterns
  • Configure cache servers to ignore or sanitize pagination parameters

🔍 How to Verify

Check if Vulnerable:

Check Joomla version in Administrator panel → System → System Information → Joomla Version

Check Version:

Check Joomla version file: cat /path/to/joomla/libraries/src/Version.php | grep 'public \$RELEASE'

Verify Fix Applied:

Verify version is 4.4.4 or higher (for Joomla 4) or 5.0.4 or higher (for Joomla 5)

📡 Detection & Monitoring

Log Indicators:

  • Unusual pagination parameters in access logs
  • Cache server logs showing unexpected parameter variations

Network Indicators:

  • HTTP requests with manipulated pagination parameters
  • Cache poisoning patterns in traffic

SIEM Query:

web_access_logs WHERE url CONTAINS 'start=' OR 'limit=' AND parameter_count > expected_normal

🔗 References

📤 Share & Export