CVE-2020-20919

7.2 HIGH

📋 TL;DR

This vulnerability allows remote attackers to upload malicious files through the theme.php file in Pluck CMS, potentially leading to arbitrary code execution and sensitive information disclosure. It affects Pluck CMS v.4.7.10-dev2 installations. Attackers can exploit this without authentication to compromise the web server.

💻 Affected Systems

Products:
  • Pluck CMS
Versions: v.4.7.10-dev2
Operating Systems: All
Default Config Vulnerable: ⚠️ Yes
Notes: Only affects the specific development version mentioned. Production versions may have different code.

📦 What is this software?

⚠️ Risk & Real-World Impact

🔴

Worst Case

Complete system compromise with remote code execution, data theft, and potential lateral movement within the network.

🟠

Likely Case

Webshell deployment leading to website defacement, data exfiltration, and server compromise.

🟢

If Mitigated

File upload attempts blocked or logged with no successful exploitation.

🌐 Internet-Facing: HIGH
🏢 Internal Only: MEDIUM

🎯 Exploit Status

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

The vulnerability is in a development version, but exploitation is straightforward once identified.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: Later versions (avoid v.4.7.10-dev2)

Vendor Advisory: https://github.com/pluck-cms/pluck/issues/85

Restart Required: No

Instructions:

1. Upgrade to a stable release of Pluck CMS. 2. Remove or replace the vulnerable theme.php file. 3. Verify no malicious files were uploaded.

🔧 Temporary Workarounds

Restrict file uploads

all

Implement strict file type validation and upload restrictions

Disable theme.php access

linux

Block access to the vulnerable theme.php file via web server configuration

# Apache: <Location /theme.php> Require all denied </Location>
# Nginx: location = /theme.php { deny all; }

🧯 If You Can't Patch

  • Implement web application firewall (WAF) rules to block file upload exploits
  • Monitor file upload directories for suspicious files and restrict write permissions

🔍 How to Verify

Check if Vulnerable:

Check if running Pluck CMS v.4.7.10-dev2 by examining version files or admin panel

Check Version:

Check Pluck CMS version in admin panel or version.txt file

Verify Fix Applied:

Verify upgraded to non-vulnerable version and test file upload functionality

📡 Detection & Monitoring

Log Indicators:

  • Unusual file uploads to theme.php
  • POST requests to theme.php with file parameters
  • Webshell creation in upload directories

Network Indicators:

  • HTTP POST requests to theme.php endpoint
  • File upload patterns to unexpected locations

SIEM Query:

source="web_logs" AND uri="/theme.php" AND method="POST" AND (file_upload OR multipart)

🔗 References

📤 Share & Export