CVE-2011-4906

9.8 CRITICAL

📋 TL;DR

This vulnerability in Joomla! 1.5.x before 1.5.13 allows attackers to upload arbitrary files including PHP scripts through the TinyMCE editor's file browser component. This leads to remote code execution on the web server. Any Joomla! site using the vulnerable version with the TinyMCE editor enabled is affected.

💻 Affected Systems

Products:
  • Joomla!
Versions: All versions before 1.5.13
Operating Systems: All
Default Config Vulnerable: ⚠️ Yes
Notes: Requires TinyMCE editor to be enabled and accessible. The vulnerability is in the file browser component of TinyMCE 3.0 included with Joomla!.

📦 What is this software?

⚠️ Risk & Real-World Impact

🔴

Worst Case

Complete server compromise allowing attackers to execute arbitrary code, steal data, deface websites, or use the server as a pivot point for further attacks.

🟠

Likely Case

Website defacement, data theft, malware distribution, or installation of backdoors for persistent access.

🟢

If Mitigated

Limited impact if file uploads are restricted, web application firewalls block malicious uploads, and proper file permissions prevent execution.

🌐 Internet-Facing: HIGH
🏢 Internal Only: MEDIUM

🎯 Exploit Status

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

Exploitation requires authentication to access the TinyMCE editor interface. Multiple public exploits exist.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: 1.5.13

Vendor Advisory: https://developer.joomla.org/security/news/301-20090722-core-file-upload.html

Restart Required: No

Instructions:

1. Backup your Joomla! site and database. 2. Download Joomla! 1.5.13 or later. 3. Replace all files with the new version. 4. Run any database update scripts if provided. 5. Test functionality.

🔧 Temporary Workarounds

Disable TinyMCE Editor

all

Disable the TinyMCE editor in Joomla! configuration to remove the vulnerable component.

Navigate to Joomla! Administrator > Site > Global Configuration > Site tab > Set Default Editor to 'No Editor' or another editor

Restrict File Uploads

linux

Configure web server to block PHP file uploads through the TinyMCE file browser.

Add to .htaccess: <FilesMatch "\.(php|php3|php4|php5|phtml|pl|py|jsp|asp|htm|html|shtml|sh|cgi)$">
  Deny from all
</FilesMatch>

🧯 If You Can't Patch

  • Implement strict file upload validation and filtering at the web application firewall level.
  • Restrict access to the TinyMCE editor interface to trusted IP addresses only.

🔍 How to Verify

Check if Vulnerable:

Check Joomla! version in administrator panel or examine includes/version.php file for version number.

Check Version:

cat includes/version.php | grep "RELEASE"

Verify Fix Applied:

Confirm version is 1.5.13 or later and test that file uploads through TinyMCE are properly validated.

📡 Detection & Monitoring

Log Indicators:

  • Unusual file uploads to TinyMCE directories
  • PHP file creation in upload directories
  • Multiple failed authentication attempts followed by successful login

Network Indicators:

  • POST requests to TinyMCE file upload endpoints with PHP files
  • Unusual outbound connections from web server

SIEM Query:

source="web_logs" AND (uri="/plugins/editors/tinymce/jscripts/tiny_mce/plugins/filemanager/upload.php" OR uri CONTAINS "tinymce/upload") AND (file_ext="php" OR file_ext="php3" OR file_ext="php4" OR file_ext="php5")

🔗 References

📤 Share & Export