CVE-2025-64046

6.1 MEDIUM

📋 TL;DR

OpenRapid RapidCMS 1.3.1 contains a cross-site scripting (XSS) vulnerability in the /system/update-run.php endpoint. This allows attackers to inject malicious scripts that execute in users' browsers when they visit the vulnerable page. Administrators and users accessing the CMS update functionality are primarily affected.

💻 Affected Systems

Products:
  • OpenRapid RapidCMS
Versions: 1.3.1
Operating Systems: All
Default Config Vulnerable: ⚠️ Yes
Notes: Only affects systems with the /system/update-run.php endpoint accessible.

📦 What is this software?

⚠️ Risk & Real-World Impact

🔴

Worst Case

Attackers could steal administrator session cookies, perform actions as administrators (like content modification or plugin installation), or redirect users to malicious sites.

🟠

Likely Case

Session hijacking of administrators or users, defacement of the CMS interface, or credential theft through phishing-style attacks.

🟢

If Mitigated

Limited impact if proper input validation and output encoding are implemented, or if the vulnerable endpoint is restricted to trusted users only.

🌐 Internet-Facing: HIGH
🏢 Internal Only: MEDIUM

🎯 Exploit Status

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

The GitHub gist provides technical details that could be used to craft an exploit. XSS vulnerabilities are commonly weaponized due to their simplicity.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: Unknown

Vendor Advisory: http://rapidcms.com

Restart Required: No

Instructions:

No official patch available. Consider upgrading to a newer version if released, or apply workarounds.

🔧 Temporary Workarounds

Disable or Restrict Access to update-run.php

all

Block or remove access to the vulnerable endpoint to prevent exploitation.

# Example: Rename or move the file
mv /path/to/system/update-run.php /path/to/system/update-run.php.disabled
# Example: Use .htaccess to deny access (Apache)
<Files "update-run.php">
    Order allow,deny
    Deny from all
</Files>

Implement Input Validation and Output Encoding

all

Manually patch the PHP file to sanitize user inputs and encode outputs.

# Edit update-run.php to add input sanitization, e.g., using htmlspecialchars() around outputs.

🧯 If You Can't Patch

  • Implement a web application firewall (WAF) with XSS protection rules.
  • Restrict network access to the CMS system to trusted IPs only.

🔍 How to Verify

Check if Vulnerable:

Check if /system/update-run.php exists and is accessible. Test by injecting a simple script payload (e.g., <script>alert('test')</script>) into parameters and see if it executes.

Check Version:

Check the CMS version in the admin panel or configuration files (e.g., look for version indicators in /config files or database).

Verify Fix Applied:

After applying workarounds, verify that /system/update-run.php is no longer accessible or that script injections no longer execute.

📡 Detection & Monitoring

Log Indicators:

  • Unusual requests to /system/update-run.php with script tags or encoded payloads in parameters.
  • Multiple failed access attempts if endpoint is blocked.

Network Indicators:

  • HTTP requests containing <script>, javascript:, or encoded characters (like %3C) targeting the vulnerable endpoint.

SIEM Query:

source="web_logs" AND uri="/system/update-run.php" AND (query CONTAINS "<script>" OR query CONTAINS "javascript:")

🔗 References

📤 Share & Export