LiveActive security incident?Get immediate response
CVE Record

CVE-2026-15022: Tutor LMS <= 4.0.0 - Authenticated (Subscriber+) SQL Injection via Stored Quiz Answer Array

The Tutor LMS – eLearning and online course solution plugin for WordPress is vulnerable to generic SQL Injection via Stored Quiz Answer Array in all versions up to, and including, 4.0.0 due to insufficient escaping on the user supplied parameter and lack of sufficient preparation on the existing SQL query. This makes it possible for authenticated attackers, with custom-level access and above, to append additional SQL queries into already existing queries that can be used to extract sensitive information from the database. The payload is stored at quiz-attempt time via the wp_ajax_tutor_quiz_abandon handler, but the injected SQL executes only when a privileged user or Tutor REST API key holder requests the /wp-json/tutor/v1/quiz-attempt-details/{id} endpoint, making this a second-order (stored) injection chain.

MediumCVSS 6.5Not KEV-listedUpdated
Glexia's TakeAutomated analysismoderate

Security readout for executives and security teams

Plain-English summary

Tutor LMS for WordPress has a stored, second-order SQL injection in quiz handling up to version 4.0.0. An authenticated low-privilege user can plant data during quiz abandonment, and database exposure can occur later when a privileged user or Tutor REST API key holder views quiz attempt details.

Executive priority

Treat this as a near-term remediation item for any production learning site using Tutor LMS. It is not rated critical and active exploitation is not evidenced here, but it can expose sensitive database information through normal quiz workflows.

Technical view

The issue is CWE-89 SQL injection caused by insufficient escaping and query preparation around a stored quiz answer array. The payload is stored through wp_ajax_tutor_quiz_abandon and executes when /wp-json/tutor/v1/quiz-attempt-details/{id} is requested by a privileged user or Tutor REST API key holder. CVSS 3.1 is 6.5 with high confidentiality impact.

Likely exposure

Exposure is likely limited to WordPress sites running Tutor LMS versions up to and including 4.0.0, especially sites allowing subscriber-level users to take quizzes. Risk increases where administrators or API integrations routinely retrieve quiz attempt details.

Exploitation context

The source bundle does not show KEV listing or active exploitation evidence. Exploitation requires an authenticated account and depends on a later privileged or API-key-backed request to the quiz attempt details endpoint, making it a stored second-order injection chain rather than a simple direct request.

Researcher notes

Key mechanics are second-order storage at quiz abandonment and execution during privileged REST retrieval. The provided references point to REST_Quiz.php, Quiz.php, and QueryHelper.php in Tutor LMS 3.9.x, supporting review of query construction and data flow without assuming exploitability beyond the advisory.

Mitigation direction

  • Inventory WordPress sites using Tutor LMS and identify versions up to 4.0.0.
  • Check Themeum, Wordfence, or WordPress plugin guidance for the fixed release before upgrading.
  • Limit quiz access for untrusted users until remediation is confirmed.
  • Restrict and rotate Tutor REST API keys where quiz attempt access is unnecessary.
  • Review privileged account activity involving quiz attempt detail retrieval.

Validation and detection

  • Confirm whether Tutor LMS is installed and record the exact plugin version.
  • Check whether public registration or subscriber quiz participation is enabled.
  • Review logs for requests to wp_ajax_tutor_quiz_abandon and quiz-attempt-details endpoints.
  • Identify integrations or users holding Tutor REST API keys.
  • Validate remediation against vendor or Wordfence advisory details.
Prepared
Confidence
high
Sources
9

Generated from the cited source records. This long-tail analysis has not been individually reviewed by a named human.

Potential ATT&CK relevance

Conservative CVE-to-ATT&CK context

These mappings and lookup hints may be relevant to the vulnerability behavior, CWE, affected product, or exposure path. Glexia-inferred context is not an official MITRE, ATT&CK, CWE, or CVE Program mapping.

ATT&CK lookup starting points

Use these exact CWE pages and searches to review the Glexia ATT&CK library from this CVE's weakness and description context.

cwe · medium confidence lookup

CWE-89: Database access and collection lookup

Injection into data stores can inform collection, data access, and exfiltration detection reviews. Open the exact CWE lookup page first, then review the ATT&CK searches from that MITRE weakness context. This is a Glexia lookup hint, not an official ATT&CK mapping.

Open ATT&CK lookup
description · low confidence lookup

Database behavior lookup

The CVE wording references database injection or access, so collection and exfiltration review may help. This is a Glexia inferred lookup path, not an official MITRE, ATT&CK, or CVE Program mapping.

Open ATT&CK lookup
cve · low confidence lookup

CVE-2026-15022 mapping review

Open the CVE-to-ATT&CK bridge for reviewed, inferred, or future official mappings tied to this CVE.

Open ATT&CK lookup
Vulnerability profileCVE Program record
Severity
Medium
CVSS
6.5 (3.1)
Known Exploited
No
Published

Vector: CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:N

Official CVE source material

CNA and ADP enrichment extracted from CVE v5

These fields come from the CVE record and ADP containers, not from Glexia's Take. They preserve time-varying source decisions such as CISA SSVC, KEV status, CVSS metrics, and provider references.

1CVSS vectors
5Timeline events
1ADP providers
8Source links

SSVC decision data

CISA-ADPCISA Coordinator
Timestamp
Version
2.0.3
Exploitation: noneAutomatable: noTechnical Impact: partial

CVSS vector scores

1 official score

We collect every scored CVSS vector available in the official CNA and ADP containers. When more than one version is present, the table keeps the source vectors side by side instead of collapsing them into the highest score.

ScoreVersionSeverityVectorExploitImpactSource
6.5CVSS 3.1MediumCVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:N2.83.6Wordfence

Vulnerability scoring details

Base CVSS 3.1 score

6.5Medium
CVSS 3.1 vector shape for CVE-2026-15022Attack VectorAttack ComplexityPrivileges RequiredUser InteractionScopeConfidentiality ImpactIntegrity ImpactAvailability Impact

Vector: CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:N

Attack Vector
NetworkAdjacentLocalPhysical
Attack Complexity
LowHigh
Privileges Required
NoneLowHigh
User Interaction
NoneRequired
Scope
ChangedUnchanged
Confidentiality Impact
HighLowNone
Integrity Impact
HighLowNone
Availability Impact
HighLowNone

Vulnerability timeline

Timeline events are normalized from CVE metadata, CNA source timelines, ADP timelines, and KEV metadata when present.

  1. CVE reservedCVE Program

    The CVE ID was reserved by the assigning CNA.

  2. Source timelineWordfence

    Vendor Notified

  3. Source timelineWordfence

    Disclosed

  4. CVE publishedCVE Program

    The CVE record was published.

  5. CVE updatedCVE Program

    The CVE record metadata indicates this as the latest update time.

ADP provider summaries

CISA-ADPCISA ADP Vulnrichment
other:ssvc
Affected products

Products and packages named in the record

VendorProductVersion / packageStatus
themeumTutor LMS – eLearning and online course solution0unaffected
Weakness

CWE details

CWE links open Glexia weakness intelligence pages with official CWE context, developer remediation guidance, and related CVE mappings.

CWE-89 · source CWE mapping

Improper Neutralization of Special Elements used in an SQL Command ('SQL Injection')

Improper Neutralization of Special Elements used in an SQL Command ('SQL Injection') represents a recurring weakness pattern that can create exploitable paths when design, validation, or implementation controls are missing.