Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessAuthenticate with low-privilege Moodle account
-
DeliveryAccess question bank web service
-
ExploitSubmit unsanitized input as SQL payload
-
ExecutionInjected query executes in database
-
ImpactRead, alter, or delete sensitive data
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 | Requires an authenticated Moodle account that has access to the question bank web service (PR:L) - exploitation is not possible for fully anonymous users. The specific feature gate is the question-bank web-service endpoint, which must be reachable and the attacker's account must be permitted to call it. No user interaction is needed (UI:N) and the vector is network-reachable (AV:N) with low complexity (AC:L). Limiting factors: the requirement for valid low-privilege credentials and for the web service to be exposed/enabled; the precise affected version range is unspecified, so defenders should confirm their Moodle version against the MDL-89383 fix before assessing exposure. |
| Impact | This is a credible, exploitable issue but not an emergency. The CVSS 3.1 vector (AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H, base 8.8) describes a network-reachable, low-complexity SQL injection requiring only low-privilege authentication and no user interaction - serious once an attacker holds any valid account with question-bank web-service access. However, the corroborating real-world signals are muted: EPSS is only 0.25% (14th percentile), the issue is NOT in CISA KEV, no public exploit code was identified, and CISA SSVC scores Exploitation as 'none' and Automatable as 'no' with only 'partial' Technical Impact. The 'partial' SSVC technical-impact rating sits in mild tension with the CVSS C:H/I:H/A:H 'total' impact; SSVC likely reflects that the attacker must already be authenticated and that compromise is scoped to the database rather than full system takeover. Net: a real, patch-worthy flaw (SQLi reaching sensitive data), but current evidence points to it being a priority driven by product ubiquity and impact severity, not by active or automatable exploitation. |
| Exploit ScenarioDerived | An attacker who holds any authenticated Moodle account with access to the question-bank web service submits crafted, unsanitized input to that service, injecting SQL that the application passes directly into database queries. By manipulating the query, the attacker reads, modifies, or deletes sensitive data (user records, grades, credentials/hashes) in the underlying database. No public proof-of-concept exploit was identified at time of analysis, and exploitation requires valid low-privilege credentials. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv2 – Oct 01, 2026
Authenticated SQL injection in Moodle's question bank web service allows a low-privilege user to inject unsanitized input into database queries, potentially exposing, modifying, or deleting sensitive data in the underlying database. The flaw carries a CVSS 3.1 base score of 8.8 (AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H), meaning any valid account that can reach the question bank web-service endpoint is a potential vector - exploitation by fully anonymous users is not possible, and the requirement for credentials and for the web service to be enabled/exposed are the main limiting factors. There is no public exploit identified at time of analysis, EPSS is low at 0.25% (14th percentile), and CISA SSVC rates exploitation as none with partial technical impact; this is a credible, exploitable issue but not an emergency.
Earlier versions of this analysis (1)
SQL injection in Moodle's question bank web service lets an authenticated user who holds question-management privileges - in practice a teacher, question author, or equivalent role rather than an ordinary student or anonymous visitor - feed unsanitized input directly into database queries, potentially viewing, altering, or deleting stored data. The flaw is network-reachable at low attack complexity with no victim interaction required, but the high-privilege prerequisite (CVSS PR:H, PR:L/PR:H class) is the main limiting factor, which is why the assessed severity is moderate (CVSS 5.5, C:H/I:L/A:N) rather than critical. No public exploit code was identified at time of analysis, and the upstream fix is tracked under Moodle issue MDL-89383.
RemediationAI
The primary fix is upstream: Moodle addressed this via MDL-89383, and the commit can be located in the Moodle git repository (http://git.moodle.org/gw?p=moodle.git&a=search&h=HEAD&st=commit&s=MDL-89383); since only a commit/PR pointer is available and no tagged release version is confirmed in the provided data, admins should apply the corresponding patched Moodle release from the vendor once identified and confirm the changelog references MDL-89383. Downstream consumers on Red Hat/Fedora should track the Red Hat advisory (https://access.redhat.com/security/cve/CVE-2026-102578) and Bugzilla (https://bugzilla.redhat.com/show_bug.cgi?id=2543632) for patched packages. Where immediate patching is not possible, compensating controls include disabling the question bank web service if it is not operationally required (trade-off: breaks any external integrations relying on that endpoint), restricting web-service access to trusted IP ranges or dedicated service accounts via Moodle's web services configuration (trade-off: limits legitimate users and requires network/identity plumbing), and removing the question bank capability from low-trust authenticated roles so PR:L accounts cannot reach the vulnerable endpoint (trade-off: may disrupt legitimate authoring workflows). Note that these controls reduce reachability of the endpoint but do not fix the underlying injection, so patching remains the definitive remedy.
Affects your stack
Find out whether the stacks and servers you run are on an affected version.
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
The vulnerability is a classic SQL injection (CWE-89) in Moodle, the widely deployed open-source PHP learning management system. The CPE data (cpe:2.3:a:moodle:moodle) confirms multiple Moodle product entries are affected, and the tags (PHP, SQLi, Information Disclosure, Moodle) point to unsanitized user input being concatenated into database queries rather than passed through parameterized statements. The specific attack surface is the question bank web service endpoint, which Moodle exposes for programmatic interaction with quiz/question repositories; an authenticated caller reaching that endpoint can supply crafted input that alters the structure of the executed SQL. Because the impact on confidentiality, integrity, and availability is all rated High, successful injection could allow reading arbitrary data from the database, tampering with stored records, or destroying data - the exact scope depends on the database privileges of the Moodle application account. The precise affected version range is not specified in the available data, so defenders should correlate their deployed Moodle version and plugin set against the upstream fix referenced by MDL-89383.
Know when Moodle 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
AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
Network-reachable SQLi requiring only low-privilege authenticated web-service access (PR:L), no interaction, with read/alter/delete of DB data giving full C/I/A impact within an unchanged scope.
Primary rating from Vendor (fedora).
CVSS VectorNVD
Lifecycle Timeline
3DescriptionNVD
A flaw was found in Moodle. An authenticated attacker with access to the question bank web service can submit unsanitized input directly into database queries, resulting in a SQL (Structured Query Language) injection vulnerability. This issue could allow an attacker to view, alter, or delete sensitive data stored in the underlying database.
Executive ViewAI
Moodle's question bank web service is affected by an authenticated SQL injection vulnerability (CVE-2026-102578) that could allow a low-privilege user to access, modify, or delete sensitive data. Although no public exploit or active exploitation has been identified, the absence of a vendor patch means organizations with this web service enabled face a credible risk from internal or compromised accounts. Leadership should prioritize restricting access to the vulnerable service and monitoring for anomalous database activity until a fix is available.
Disable the question bank web service if not essential; restrict access to trusted IP addresses; enforce least privilege and MFA; deploy WAF with SQL injection signatures; monitor database and application logs for anomalous queries; maintain offline backups.
Threat Intelligence Overview
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.
What every action level means
SSVC AssessmentENISA
Priority Score
Attack Technique
SQL injection exploits the way applications construct database queries by mixing user input directly into SQL statements.
Information disclosure occurs when an application unintentionally exposes sensitive data that aids attackers in reconnaissance or directly compromises security.
Affected Products (CPE)NVD
Moodle through 2.5.2 allows remote authenticated administrators to execute arbitrary programs by configuring the aspell
A command execution vulnerability exists in the default legacy spellchecker plugin in Moodle 3.10. Rated critical severi
A flaw was found in Moodle. Rated high severity (CVSS 8.1), this vulnerability is remotely exploitable, no authenticatio
In Moodle 2.x and 3.x, SQL injection can occur via user preferences. Rated critical severity (CVSS 9.8), this vulnerabil
The Moodle LMS Jmol plugin version 6.1 and earlier contains a path traversal vulnerability in jsmol.php. The query param
Multiple cross-site scripting (XSS) vulnerabilities in Moodle through 2.2.11, 2.3.x before 2.3.9, 2.4.x before 2.4.6, an
Unrestricted file upload vulnerability in the double extension support in the "image" module in Moodle 3.1.2 allows remo
Unrestricted file upload vulnerability in the "legacy course files" and "file manager" modules in Moodle 3.1.2 allows re
moodle before versions 3.5.2, 3.4.5, 3.3.8, 3.1.14 is vulnerable to an XML import of ddwtos could lead to intentional re
An issue was discovered in Moodle 3.x. Rated high severity (CVSS 8.8), this vulnerability is remotely exploitable, low a
Moodle 3.1.2 allows remote attackers to obtain sensitive information via unspecified vectors, related to a "SQL Injectio
Moodle 3.10.3 contains a persistent cross-site scripting vulnerability in the calendar event subtitle field that allows
EUVD-2026-89717
GHSA-hvr9-w78p-rcfj
NVD
CVE.org
EPSS
Vulnrichment
Exploit-DB