Skip to main content

LimeSurvey CVE-2026-50636

| EUVDEUVD-2026-35770 HIGH
SQL Injection (CWE-89)
2026-06-09 VulnCheck GHSA-pr6f-87hf-hx24
8.7
CVSS 4.0 · Vendor: VulnCheck
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Recon
    Obtain low-priv survey account with tokens/update
  2. Delivery
    Reach enabled RemoteControl JSON/XML-RPC endpoint
  3. Exploit
    Call invite_participants with malicious token-ID array
  4. Install
    Break out of tid IN ('...') clause
  5. C2
    Append stacked UPDATE on lime_users via emulated prepares
  6. Execute
    Overwrite administrator bcrypt hash
  7. Impact
    Log in as global admin and exfiltrate response PII

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A05:2025 - Injection
ASVS 5.0
V1 - Encoding and Sanitization Parameterized queries, prepared statements
MITRE ATT&CK

2 techniques across 2 tactics: Initial Access, Persistence

The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up.

Exploitation Conditions

Exploitation requires that the LimeSurvey RemoteControl interface is explicitly enabled (RPCInterface set to 'json' or 'xml' in application/config/config.php), which is not the default configuration, and that the attacker holds a valid LimeSurvey account with the tokens/update permission on at least one survey whose token table can be targeted. The attacker must be able to reach the RemoteControl endpoint over the network and call invite_participants or remind_participants with a crafted $aTokenIds array. Stacked-query escalation specifically depends on the default PDO settings shipped by LimeSurvey (emulatePrepare = true) and a MySQL/MariaDB backend that has not had multi-statement support disabled - deployments on other database backends or with hardened PDO flags may still suffer single-statement injection but lose the ability to append arbitrary INSERT/UPDATE/DROP statements.

Impact

CVSS 4.0 vector (AV:N/AC:L/AT:N/PR:L/UI:N/VC:H/VI:H/VA:H) scores 8.7 and accurately reflects a network-reachable, low-complexity attack requiring only low-privilege authentication (a survey operator with the tokens/update permission) and no user interaction, yielding full confidentiality, integrity, and availability impact on the database. EPSS and CISA KEV data were not provided in the input, so probability of widespread exploitation and active-exploitation status are unconfirmed. The mitigating factor that the RemoteControl interface (RPCInterface = json/xml) is disabled by default narrows the exposed population, so this is best treated as a high-impact issue for organizations that have explicitly enabled RemoteControl - typically those automating survey/participant management - rather than a universal emergency. Tags ('SQLi', 'Oracle') and VulnCheck's advisory point to a credible time-based blind oracle technique; no public exploit identified at time of analysis.

Exploit ScenarioDerived

An attacker who has obtained or been granted a low-privilege LimeSurvey account with the tokens/update permission on any survey calls the invite_participants (or remind_participants) RemoteControl method and supplies a token-ID array whose element terminates the IN-clause string and appends a second statement such as UPDATE lime_users SET password=... WHERE uid=1. Because emulated prepared statements pass the concatenated payload to MySQL as a multi-statement batch, the administrator password hash is overwritten and the attacker logs in as a global admin; alternatively, a SLEEP()-based blind oracle extracts bcrypt hashes for offline cracking. No public exploit identified at time of analysis, but the patch diff publicly identifies the exact sink.

This Week Schedule remediation this week. Why: HIGH severity (CVSS 7.0-8.9).
Patch available 0.1% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Jun 09, 2026

SQL injection in LimeSurvey's RemoteControl API (invite_participants and remind_participants methods) allows an authenticated attacker with tokens/update permission on a survey to execute arbitrary stacked SQL queries against the application database. Because PDO emulated prepared statements are enabled and MySQL multi-statements are not disabled, attackers can read administrator bcrypt hashes via time-based blind techniques or directly overwrite credentials for instant account takeover. No public exploit identified at time of analysis; the upstream fix is published as LimeSurvey PR #5031, which replaces unsafe string concatenation with parameterized addInCondition().

RemediationAI

Upstream fix available (PR/commit); released patched version not independently confirmed - apply the change in https://github.com/LimeSurvey/LimeSurvey/pull/5031, which replaces unsafe addCondition() string concatenation with the parameterized addInCondition('tid', $aTokenIds) helper, and upgrade to the first tagged LimeSurvey release that includes that merge as soon as the vendor publishes it. Until a patched release is deployed, the highest-impact compensating control is to disable the RemoteControl interface by setting RPCInterface to off in application/config/config.php (side effect: any external automation that depends on JSON-RPC/XML-RPC will break). If RemoteControl must remain enabled, restrict access at the network layer to trusted source IPs, audit and minimize accounts that hold the tokens/update permission on surveys, and consider hardening PDO by disabling emulated prepared statements and MySQL multi-statement support so that a future injection cannot trivially escalate to stacked queries. Cross-reference the VulnCheck advisory at https://www.vulncheck.com/advisories/limesurvey-remotecontrol-invite-participants-remind-participants-sql-injection for additional vendor guidance.

Affected VersionsENISA

LimeSurvey 0 ≤7.0

Affected Packages

composer limesurvey/limesurvey no fix
euvd limesurvey no fix

Source: OSV (Open Source Vulnerabilities)

Affects your stack

Affects 2 packages in composer, euvd

Checking this CVE against your own stacks and servers is part of the Basic plan and up.

Technical ContextAI · show details

LimeSurvey is a widely deployed PHP-based open-source survey platform that exposes a JSON-RPC/XML-RPC RemoteControl API. The vulnerable sink is TokenDynamic::findUninvited() in application/models/TokenDynamic.php, which built a 'tid IN (...)' clause by implode()'ing the caller-supplied $aTokenIds array directly into SQL with no escaping (CWE-89, classic SQL injection). Compounding the flaw, LimeSurvey's PDO connection runs with emulatePrepare=true and does not toggle off MySQL multi-statement support, so a single injected payload can terminate the SELECT and append INSERT/UPDATE/DELETE/DROP/CREATE statements. The CPE cpe:2.3:a:limesurvey:limesurvey:*:*:*:*:*:*:*:* covers all versions prior to the fix landed in PR #5031.

Know when Limesurvey gets its next vulnerability

  • Watch products and get an email when something new is published
  • Check this CVE against your own stack and servers
  • Exploit and PoC references, threat intelligence from 22 sources

No credit card · 7-day full trial

Severity by source

Vendor (VulnCheck) PRIMARY 8.7 HIGH
CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N

Primary rating from Vendor (VulnCheck) · only source for this CVE.

CVSS VectorVendor: VulnCheck

Attack Vector
Network
Attack Complexity
Low
Attack Requirements
None
Privileges Required
Low
User Interaction
None
Vulnerable system: Confidentiality
High
Vulnerable system: Integrity
High
Vulnerable system: Availability
High
Subsequent system: Confidentiality
None
Subsequent system: Integrity
None
Subsequent system: Availability
None

Lifecycle Timeline

2
CVSS changed
Jun 09, 2026 - 18:22 NVD
8.8 (HIGH) 8.7 (HIGH)
CVE Published
Jun 09, 2026 - 17:34 nvd
HIGH 8.7

DescriptionCVE.org

The RemoteControl API methods invite_participants and remind_participants pass a caller-supplied token-ID array into TokenDynamic::findUninvited(), which concatenates the values directly into a tid IN ('...') SQL clause without parameterization or input validation. A remote, authenticated attacker holding the tokens/update permission on a survey can inject a crafted array element to perform SQL injection. Because LimeSurvey configures its PDO connection with emulated prepared statements (emulatePrepare = true) and does not disable MySQL multi-statements, the injection supports stacked queries: the attacker can append arbitrary additional statements (INSERT/UPDATE/DELETE/DROP/CREATE) after the original SELECT. This permits both arbitrary read of any data in the database, such as administrator bcrypt password hashes (lime_users), survey response PII, session records, and global settings, all recoverable via a SLEEP() time-based blind oracle, and arbitrary write/destruction of that data, including directly overwriting the administrator password hash for immediate account takeover or dropping/truncating tables. Reads and writes extend to any schema the application's database user can access. The RemoteControl interface (RPCInterface = json/xml) must be enabled, which is not the default.

Executive ViewAI

Why It Matters

LimeSurvey's RemoteControl API contains a SQL injection vulnerability (CVE-2026-50636, CVSS 8.7) that allows authenticated users with survey modification permissions to extract administrator credentials and gain administrative control of the platform. Organizations running LimeSurvey for survey distribution face operational and data security risk if threat actors exploit compromised or malicious survey accounts. The vulnerability requires prior authentication but enables rapid escalation to full administrative access without leaving audit trails.

Business Impact: High
Compensating Controls

Apply vendor patch.

Threat Intelligence Overview

EPSS Score
0.1%
Top 77% exploitable
Threat Intel
1
1 source
Data Quality
7 sources
Confidence: High
EUVD NVD CVE.org EPSS Vulnrichment GHSA GitHub VulDB

How this decision was reached

The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.

SignalValue
Severity HIGH
CISA KEV No
Public POC No
EPSS 0.1%
Patch available Yes
Active threat No
Deciding rule
HIGH severity (CVSS 7.0-8.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision
Scheduled
Exploitation
None
System Exposure· derived
Open
Automatable
No
Human Impact
High
Technical Impact
Total

Priority Score

44
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +44
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

SQL injection exploits the way applications construct database queries by mixing user input directly into SQL statements.

CVE-2020-11455 CRITICAL POC
9.8 Apr 01

LimeSurvey before 4.1.12+200324 contains a path traversal vulnerability in application/controllers/admin/LimeSurveyFileM

CVE-2019-9960 CRITICAL POC
9.8 Mar 24

The downloadZip function in application/controllers/admin/export.php in LimeSurvey through 3.16.1+190225 allows a relati

CVE-2018-17057 CRITICAL POC
9.8 Sep 14

An issue was discovered in TCPDF before 6.2.22. Rated critical severity (CVSS 9.8), this vulnerability is remotely explo

CVE-2024-42902 HIGH POC
8.8 Sep 03

An issue in the js_localize.php function of LimeSurvey v6.6.2 and before allows attackers to execute arbitrary code via

CVE-2024-39063 HIGH POC
8.8 Jul 09

Lime Survey <= 6.5.12 is vulnerable to Cross Site Request Forgery (CSRF). Rated high severity (CVSS 8.8), this vulnerabi

CVE-2012-4927 HIGH POC
7.5 Sep 15

SQL injection vulnerability in Limesurvey (a.k.a PHPSurveyor) before 1.91+ Build 120224 and earlier allows remote attack

CVE-2014-5017 HIGH POC
7.5 Jul 21

SQL injection vulnerability in CPDB in application/controllers/admin/participantsaction.php in LimeSurvey 2.05+ Build 14

CVE-2022-43279 HIGH POC
7.2 Nov 15

LimeSurvey before v5.0.4 was discovered to contain a SQL injection vulnerability via the component /application/views/th

CVE-2026-63107 MEDIUM POC
6.3 Jul 20

Server-side request forgery in LimeSurvey through versions 6.17.10 and 7.0.4 exposes internal network infrastructure and

CVE-2024-24506 MEDIUM POC
6.1 Apr 03

Cross Site Scripting (XSS) vulnerability in Lime Survey Community Edition Version v.5.3.32+220817, allows remote attacke

CVE-2021-42112 MEDIUM POC
6.1 Oct 08

The "File upload question" functionality in LimeSurvey 3.x-LTS through 3.27.18 allows XSS in assets/scripts/modaldialog.

CVE-2019-17660 MEDIUM POC
6.1 Oct 16

A cross-site scripting (XSS) vulnerability in admin/translate/translateheader_view.php in LimeSurvey 3.19.1 and earlier

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy