Severity by source
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:A/VC:H/VI:H/VA:N/SC:L/SI:L/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X
Attacker needs no credentials to craft the link (PR:N) but victim must actively click it (UI:R); successful exploitation changes scope to the admin's browser session with full session compromise potential (S:C, C:H, I:H).
Primary rating from Vendor (Fluid Attacks).
CVSS VectorVendor: Fluid Attacks
Lifecycle Timeline
3DescriptionCVE.org
LimeSurvey Community Edition 7.0.5 contains an authenticated reflected cross-site scripting vulnerability in the HTML editor popup endpoint. The text and name query parameters are passed through a blacklist sanitizer and then rendered without context-appropriate output encoding.
AnalysisAI
Reflected XSS in LimeSurvey Community Edition 7.0.5 allows an unauthenticated attacker to execute arbitrary JavaScript in the browser session of an authenticated administrator by delivering a crafted URL targeting the HTML editor popup endpoint. The text and name query parameters bypass a blacklist-based sanitizer and are rendered unencoded across at least four distinct output contexts - an HTML title element, a JavaScript window.status assignment, and multiple document.getElementById() calls - confirmed by the patch commit diff. No public exploit has been identified at time of analysis, but an upstream fix is available as a merged GitHub commit and a vendor patch is listed as available.
Technical ContextAI
The vulnerability resides in application/views/admin/htmleditor/pop_editor_view.php, the popup view for LimeSurvey's CKEditor-based HTML editing interface. CWE-79 (Improper Neutralization of Input During Web Page Generation) applies: the root cause is reliance on a blacklist sanitizer rather than context-appropriate output encoding. The commit diff (a8993bfd05c4a11255b8400ed9c41a2c22e93aa4) reveals four distinct injection sinks: the <title> HTML context (fixed with CHtml::encode()), a window.status JavaScript string assignment, and three window.opener.document.getElementById() JavaScript identifier contexts (all fixed with CJavaScript::encode()). The multi-context nature of the flaw - covering both HTML and JavaScript execution contexts - compounds the risk and indicates the blacklist control was fundamentally insufficient. The affected CPE is cpe:2.3:a:limesurvey:limesurvey:*:*:*:*:*:*:*:*, with the wildcard version range suggesting earlier releases sharing the same vulnerable template may also be affected.
RemediationAI
Apply the upstream fix available at commit a8993bfd05c4a11255b8400ed9c41a2c22e93aa4 in the LimeSurvey GitHub repository (https://github.com/LimeSurvey/LimeSurvey/commit/a8993bfd05c4a11255b8400ed9c41a2c22e93aa4), which replaces blacklist-based sanitization with context-appropriate encoding - CHtml::encode() for HTML contexts and CJavaScript::encode() for JavaScript string and identifier contexts - across all affected sinks in pop_editor_view.php. Upstream fix available via commit; a formally tagged patched release version has not been independently confirmed from available data, so verify the commit is included in any LimeSurvey release being considered before upgrading. As a compensating control where immediate patching is not feasible, restrict access to the HTML editor popup endpoint (/admin/htmleditor/popupeditor or equivalent) to trusted internal IP ranges via web server ACL or WAF rule - note this disables the HTML editor popup for all users, including administrators. Adding a restrictive Content-Security-Policy header that disallows inline scripts provides partial impact reduction but does not eliminate the vulnerability. Refer to the Fluid Attacks advisory at https://fluidattacks.com/es/advisories/mercedes for researcher-provided detail.
More in Limesurvey
View allLimeSurvey before 4.1.12+200324 contains a path traversal vulnerability in application/controllers/admin/LimeSurveyFileM
The downloadZip function in application/controllers/admin/export.php in LimeSurvey through 3.16.1+190225 allows a relati
An issue was discovered in TCPDF before 6.2.22. Rated critical severity (CVSS 9.8), this vulnerability is remotely explo
An issue in the js_localize.php function of LimeSurvey v6.6.2 and before allows attackers to execute arbitrary code via
Lime Survey <= 6.5.12 is vulnerable to Cross Site Request Forgery (CSRF). Rated high severity (CVSS 8.8), this vulnerabi
SQL injection vulnerability in Limesurvey (a.k.a PHPSurveyor) before 1.91+ Build 120224 and earlier allows remote attack
SQL injection vulnerability in CPDB in application/controllers/admin/participantsaction.php in LimeSurvey 2.05+ Build 14
LimeSurvey before v5.0.4 was discovered to contain a SQL injection vulnerability via the component /application/views/th
Server-side request forgery in LimeSurvey through versions 6.17.10 and 7.0.4 exposes internal network infrastructure and
Cross Site Scripting (XSS) vulnerability in Lime Survey Community Edition Version v.5.3.32+220817, allows remote attacke
The "File upload question" functionality in LimeSurvey 3.x-LTS through 3.27.18 allows XSS in assets/scripts/modaldialog.
A cross-site scripting (XSS) vulnerability in admin/translate/translateheader_view.php in LimeSurvey 3.19.1 and earlier
Same weakness CWE-79 – Cross-site Scripting (XSS)
View allShare
External POC / Exploit Code
Leaving vuln.today
EUVD-2026-58731
GHSA-r82m-pqrh-phxp