Description
phpMyFAQ is an open source FAQ web application. Prior to version 4.1.1, the MediaBrowserController::index() method handles file deletion for the media browser. When the fileRemove action is triggered, the user-supplied name parameter is concatenated with the base upload directory path without any path traversal validation. The FILTER_SANITIZE_SPECIAL_CHARS filter only encodes HTML special characters (&, ', ", <, >) and characters with ASCII value < 32, and does not prevent directory traversal sequences like ../. Additionally, the endpoint does not validate CSRF tokens, making it exploitable via CSRF attacks. This issue has been patched in version 4.1.1.
Remediation
References
Related Vulnerabilities
WordPress Plugin Translate Multilingual sites-TranslatePress Cross-Site Scripting (2.0.8)
WordPress Plugin Discounts Manager for Products Cross-Site Scripting (3.4.4)
WordPress Plugin Animate It! Cross-Site Scripting (2.3.3)
WordPress Plugin WP GuestMap Multiple Cross-Site Scripting Vulnerabilities (1.8)