CVE-2024-46373

8.8 HIGH

📋 TL;DR

Dedecms V5.7.115 contains a file upload vulnerability in the backend that allows authenticated attackers to upload malicious files and execute arbitrary code. This affects websites running this specific version of Dedecms content management system. Attackers can gain full control of the affected web server.

💻 Affected Systems

Products:
  • Dedecms
Versions: V5.7.115
Operating Systems: All platforms running PHP
Default Config Vulnerable: ⚠️ Yes
Notes: Requires backend access, but default installations are vulnerable. The vulnerability exists in the file upload functionality of the admin panel.

📦 What is this software?

⚠️ Risk & Real-World Impact

🔴

Worst Case

Complete server compromise leading to data theft, ransomware deployment, lateral movement to other systems, and persistent backdoor installation.

🟠

Likely Case

Website defacement, data exfiltration, malware distribution, and unauthorized administrative access to the CMS.

🟢

If Mitigated

Limited impact with proper file upload restrictions, but still potential for privilege escalation if other vulnerabilities exist.

🌐 Internet-Facing: HIGH - Web applications are directly accessible from the internet, making them prime targets for exploitation.
🏢 Internal Only: MEDIUM - Internal systems could be compromised through phishing or insider threats, but attack surface is smaller.

🎯 Exploit Status

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

Exploitation requires backend/admin credentials. Public proof-of-concept code is available in the GitHub reference.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: Update to latest Dedecms version (check vendor site)

Vendor Advisory: Not specified in provided reference

Restart Required: No

Instructions:

1. Backup your website and database. 2. Download the latest Dedecms version from official source. 3. Replace vulnerable files with patched versions. 4. Verify file permissions and remove any suspicious uploaded files.

🔧 Temporary Workarounds

Restrict File Upload Types

all

Configure web server to block upload of executable file types

# For Apache: Add to .htaccess
<FilesMatch "\.(php|phtml|php3|php4|php5|php7|phps|php8|inc|exe|bat|cmd|sh|pl|cgi)">
    Order Allow,Deny
    Deny from all
</FilesMatch>
# For Nginx: Add to server block
location ~* \.(php|phtml|php3|php4|php5|php7|phps|php8|inc|exe|bat|cmd|sh|pl|cgi)$ {
    deny all;
}

Disable Backend Upload Function

linux

Temporarily disable the vulnerable upload functionality

# Rename or remove the vulnerable upload handler file
mv /path/to/dedecms/upload/handler.php /path/to/dedecms/upload/handler.php.disabled

🧯 If You Can't Patch

  • Implement strict file upload validation: only allow specific file types, check file signatures, and rename uploaded files
  • Restrict backend access: Implement IP whitelisting, strong authentication, and monitor admin panel access logs

🔍 How to Verify

Check if Vulnerable:

Check if running Dedecms V5.7.115 by examining version files or admin panel footer

Check Version:

grep -r "V5.7.115" /path/to/dedecms/ or check /data/common.inc.php for version info

Verify Fix Applied:

Test file upload functionality with malicious files to ensure they are rejected

📡 Detection & Monitoring

Log Indicators:

  • Unusual file uploads to backend/admin paths
  • Multiple failed login attempts to admin panel
  • Execution of PHP files from upload directories

Network Indicators:

  • POST requests to upload endpoints with suspicious file extensions
  • Outbound connections from web server to unknown IPs

SIEM Query:

source="web_logs" AND (uri_path="/dede/upload*" OR uri_path="/admin/upload*") AND (file_extension="php" OR file_extension="exe" OR file_extension="sh")

🔗 References

📤 Share & Export