CVE-2025-15109

7.3 HIGH

📋 TL;DR

This vulnerability allows remote attackers to upload arbitrary files to jackq XCMS systems due to insufficient validation in the upload.php component. This affects all deployments using XCMS up to commit 3fab5342cc509945a7ce1b8ec39d19f701b89261. Attackers can exploit this to upload malicious files including web shells.

💻 Affected Systems

Products:
  • jackq XCMS
Versions: All versions up to commit 3fab5342cc509945a7ce1b8ec39d19f701b89261
Operating Systems: All platforms running XCMS
Default Config Vulnerable: ⚠️ Yes
Notes: Affects the plupload example file in admin interface; rolling release model means no specific version numbers available.

⚠️ Manual Verification Required

This CVE does not have specific version information in our database, so automatic vulnerability detection cannot determine if your system is affected.

Why? The CVE database entry doesn't specify which versions are vulnerable (no version ranges provided by the vendor/NVD).

🔒 Custom verification scripts are available for registered users. Sign up free to download automated test scripts.

Recommended Actions:
  1. Review the CVE details at NVD
  2. Check vendor security advisories for your specific version
  3. Test if the vulnerability is exploitable in your environment
  4. Consider updating to the latest version as a precaution

⚠️ Risk & Real-World Impact

🔴

Worst Case

Complete system compromise through web shell upload leading to data theft, ransomware deployment, or persistent backdoor installation.

🟠

Likely Case

Unauthorized file upload leading to defacement, data exfiltration, or limited server-side code execution.

🟢

If Mitigated

Upload attempts are blocked or logged, preventing successful exploitation while maintaining system integrity.

🌐 Internet-Facing: HIGH
🏢 Internal Only: MEDIUM

🎯 Exploit Status

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

Exploit details published in issue tracker; remote unauthenticated attack possible via HTTP requests.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: Unknown

Vendor Advisory: None available

Restart Required: No

Instructions:

No official patch available. Vendor has been notified but not responded. Consider removing or securing the vulnerable file.

🔧 Temporary Workarounds

Remove vulnerable file

linux

Delete or restrict access to the vulnerable upload.php file

rm -f Public/javascripts/admin/plupload-2.1.2/examples/upload.php

Implement file upload restrictions

all

Add server-side validation for file uploads including file type checking and size limits

🧯 If You Can't Patch

  • Implement WAF rules to block suspicious file upload patterns
  • Restrict network access to XCMS admin interface using firewall rules

🔍 How to Verify

Check if Vulnerable:

Check if file exists: Public/javascripts/admin/plupload-2.1.2/examples/upload.php

Check Version:

git log --oneline -1

Verify Fix Applied:

Verify file is removed or modified with proper upload validation

📡 Detection & Monitoring

Log Indicators:

  • Unusual file uploads to upload.php
  • POST requests with executable file extensions
  • Large number of upload attempts

Network Indicators:

  • HTTP POST requests to /Public/javascripts/admin/plupload-2.1.2/examples/upload.php
  • Uploads of suspicious file types

SIEM Query:

source="web_access.log" AND uri="*upload.php" AND (file_extension="php" OR file_extension="jsp" OR file_extension="asp")

🔗 References

📤 Share & Export