GreenCMS Stored Cross-Site Scripting Vulnerability in Menu Management Component

Vulnerability

A stored cross-site scripting vulnerability has been identified in GreenCMS version 2.3.0603. The issue arises from inadequate input sanitization in the 'Link' parameter of the menu management feature within the administration panel. Although the 'htmlspecialchars()' function is applied, the omission of the 'ENT_QUOTES' flag fails to escape single quotes, allowing authenticated attackers to inject malicious JavaScript by manipulating the attribute with a single quote and adding an event handler. This vulnerability only impacts unsupported products.

Impact

Exploitation of this vulnerability allows for stored cross-site scripting, where injected scripts are executed in the context of the user viewing the menu, potentially leading to session hijacking, credential theft, unauthorized administrative actions, or website defacement.

Reproduction

To reproduce this vulnerability, log into the GreenCMS admin panel and navigate to 'Custom Management' then 'Menu Management'. Create or edit a menu item and insert a payload, such as a JavaScript URL followed by a single quote to close the attribute, into the 'Link' parameter. Save the menu item and then view it on the frontend to trigger the cross-site scripting payload.

Remediation

Replace the vulnerable input sanitization code in '/Admin/Controller/CustomController.class.php' with 'htmlspecialchars($link, ENT_QUOTES)' to properly escape single quotes. Additionally, consider implementing a Content Security Policy, validating URL formats, using prepared statements for database operations, and conducting regular security audits.

Added: Dec 8, 2025, 12:17 PM
Updated: Dec 8, 2025, 7:31 PM

Vulnerability Rating

Custom Algorithm
spread
1.0
impact
1.7
exploitability
6.5
remediation
7.7
relevance
1.3
threat
6.4
urgency
2.9
incentive
1.7

Our algorithm analyzes dozens of metrics to generate these 8 key vulnerability categories, which are then combined to calculate the overall risk score.