CVE-2023-43345

8.6 HIGH

📋 TL;DR

A stored cross-site scripting (XSS) vulnerability in opensolution Quick CMS v6.7 allows attackers to inject malicious scripts into the 'Content - Name' parameter in the Pages Menu component. When users view affected pages, the scripts execute in their browsers, potentially stealing session cookies or performing actions on their behalf. This affects all Quick CMS v6.7 installations with the vulnerable component enabled.

💻 Affected Systems

Products:
  • opensolution Quick CMS
Versions: v6.7
Operating Systems: All
Default Config Vulnerable: ⚠️ Yes
Notes: The vulnerability exists in the default installation when the Pages Menu component is used. No special configuration is required for exploitation.

📦 What is this software?

⚠️ Risk & Real-World Impact

🔴

Worst Case

Attackers could steal administrator session cookies, gain administrative access, deface websites, install backdoors, or redirect users to malicious sites, potentially leading to complete system compromise.

🟠

Likely Case

Attackers inject malicious JavaScript that steals user session cookies or credentials when users visit compromised pages, leading to account takeover and unauthorized access.

🟢

If Mitigated

With proper input validation and output encoding, malicious scripts are neutralized before reaching users, preventing execution while maintaining functionality.

🌐 Internet-Facing: HIGH
🏢 Internal Only: MEDIUM

🎯 Exploit Status

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

Exploitation requires local access or authenticated user privileges to inject scripts into the 'Content - Name' parameter. The public proof-of-concept demonstrates straightforward injection.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: Unknown

Vendor Advisory: Unknown

Restart Required: No

Instructions:

No official patch is available. Consider upgrading to a newer version if available, or implement workarounds such as input validation and output encoding.

🔧 Temporary Workarounds

Implement Input Validation

all

Add server-side validation to sanitize or reject malicious input in the 'Content - Name' parameter.

Edit the relevant PHP files to add input sanitization functions like htmlspecialchars() or filter_var()

Enable Content Security Policy (CSP)

all

Implement CSP headers to restrict script execution sources and mitigate XSS impact.

Add 'Content-Security-Policy' header to web server configuration or PHP files

🧯 If You Can't Patch

  • Disable or restrict access to the Pages Menu component if not essential
  • Implement web application firewall (WAF) rules to block XSS payloads in the affected parameter

🔍 How to Verify

Check if Vulnerable:

Test by injecting a simple XSS payload like <script>alert('XSS')</script> into the 'Content - Name' parameter and check if it executes when viewing the page.

Check Version:

Check the CMS version in the admin panel or by examining the software files for version indicators.

Verify Fix Applied:

After applying fixes, repeat the XSS test to ensure scripts are properly sanitized and do not execute.

📡 Detection & Monitoring

Log Indicators:

  • Unusual entries in access logs showing script tags or encoded payloads in POST requests to pages management endpoints
  • Multiple failed login attempts followed by successful access to admin pages

Network Indicators:

  • HTTP requests containing script tags or JavaScript code in the 'Content - Name' parameter
  • Unexpected outbound connections from the server after page updates

SIEM Query:

source="web_logs" AND (url="*admin/pages*" AND (param="*<script>*" OR param="*javascript:*"))

🔗 References

📤 Share & Export