제출 #636176: ZrLog 3.1.6 Improper Neutralization of Alternate XSS Syntax정보

제목ZrLog 3.1.6 Improper Neutralization of Alternate XSS Syntax
설명BUG Author: Vulnerability Details: Input Flow: User input is injected through the footerLink field in the theme configuration form (Path: Settings -> Theme Configuration -> ZrLog Default Theme Settings -> Footer Links). The frontend submits data to /api/admin/template/config via a POST request, while the previewConfigValue endpoint is used for real-time previews. Root Cause: Inadequate Input Handling: The frontend does not filter or escape special characters (e.g., <, >, &) from user input. The backend TemplateController.config() method directly parses the request body into a Map without implementing security validation (no sanitization, no Content Security Policy enforcement). Impact: An attacker can inject malicious scripts (e.g., XSS payloads) into the footerLink field. When other users (including administrators) access pages rendering the theme configuration (e.g., theme previews, public pages using the footer), the script executes, potentially leading to session hijacking, fake admin operations, or information leakage. Code Analysis (Key Files) Frontend Input Component: File: TemplateConfig/onFinish Role: Implements the theme configuration form (includes file uploads, color pickers, and the footerLink input field). Issue: Lack of input sanitization for special characters (e.g., <, >) in the footerLink field. Backend Handling: Controller: TemplateController.config() Issue: Directly parses the request body into a Map without validating or escaping user input. No Content Security Policy (CSP) or input validation mechanisms are enforced. Impact Severity: HIGH (Stored XSS can hijack admin sessions, inject fake UI elements, or steal sensitive data). Attack Vector: Authenticated users with access to theme configuration (common in admin panels) can exploit this vulnerability. Scope: Affects all pages rendering the theme’s footer (including public-facing pages if the theme is active). Recommendation Frontend: Implement input sanitization for the footerLink field (and all user-facing input fields) to escape special characters (e.g., replace < with <, > with >). Backend: Validate and sanitize input in TemplateController.config() before storing it. Enforce a strict Content Security Policy (CSP) to restrict unauthorized script execution. Testing: Conduct regular security testing (e.g., DAST/SAST) to identify and remediate similar input-handling vulnerabilities.
원천⚠️ https://github.com/SaaS5SaaS/CVE/issues/3
사용자
 SaaS5SaaS (UID 89104)
제출2025. 08. 16. PM 03:33 (10 개월 ago)
모더레이션2025. 08. 28. PM 04:50 (12 days later)
상태수락
VulDB 항목321765 [ZrLog 까지 3.1.5 Theme Configuration Form config footerLink 크로스 사이트 스크립팅]
포인트들20

Do you know our Splunk app?

Download it now for free!