CVE-2026-104723 json
LifterLMS <= 10.2.1 - Authenticated (Custom+) PHP Object Injection via 'custom' Lesson Data
published 30d ago modified 27d ago also EUVD-2026-96108
- cvss
- 8.8
- version 3.1, CNA
- cisa kev
- Not listed
- not in CISA's catalog
- epss
- 0.4%
- EPSS 0.4% chance of exploitation in 30 days, percentile 37%
- public exploits
- 0
- none known
Summary
The LifterLMS – WP LMS for eLearning, Online Courses, & Quizzes plugin for WordPress is vulnerable to PHP Object Injection in all versions up to, and including, 10.2.1 via deserialization of untrusted input . This makes it possible for authenticated attackers, with custom-level access and above, to inject a PHP Object. No known POP chain is present in the vulnerable software, which means this vulnerability has no impact unless another plugin or theme containing a POP chain is installed on the site. If a POP chain is present via an additional plugin or theme installed on the target system, it may allow the attacker to perform actions like delete arbitrary files, retrieve sensitive data, or execute code depending on the POP chain present. This vulnerability is only exploitable during lesson creation when a temporary lesson ID triggers the custom metadata path, and requires the attacker to hold a role with the edit_course capability, such as Instructor, Instructor's Assistant, LMS Manager, or Administrator.
Is CVE-2026-104723 in your stack? Fencer shows which of your repositories are affected as soon as an advisory lands, and opens the fix as a pull request.
Check with FencerCISA SSVC
- Exploitation
- none
- Automatable
- no
- Technical impact
- total
- Assessed
- 29d ago
Exploit prediction
0.43% chance of exploitation in the next 30 days, higher than 37% of all scored CVEs (FIRST EPSS, 2026-11-09).
CVSS scores
| assigned by | version | score | vector |
|---|---|---|---|
| CNA | 3.1 | 8.8 | CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H |
Affected products
- lifterlms LifterLMS – WP LMS for eLearning, Online Courses, & Quizzes
Classification
- Weakness
-
- CWE-502 Deserialization of Untrusted Data
- Technology feeds
References
- wordfence.com /threat-intel/vulnerabilities/id/cc7893ee-414d-4796-bb34-4d83951b95bd?source=cve
- plugins.trac.wordpress.org /browser/lifterlms/tags/10.2.1/includes/admin/class.llms.admin.builder.php#L1218
- plugins.trac.wordpress.org /browser/lifterlms/tags/10.2.1/includes/admin/class.llms.admin.builder.php#L458
- plugins.trac.wordpress.org /browser/lifterlms/tags/10.2.1/includes/admin/class.llms.admin.builder.php#L993
- plugins.trac.wordpress.org /browser/lifterlms/tags/10.2.1/includes/admin/class.llms.admin.builder.php#L1576
- plugins.trac.wordpress.org /changeset/3729229/lifterlms/trunk/includes/admin/class.llms.admin.builder.php
Sources
- CVE List CVE-2026-104723
- NVD CVE-2026-104723
Fencer Intel keeps one entry per vulnerability: the CVE id wins, then GHSA, and records that alias each other are merged, except that two CVEs always keep separate entries. The same data is available as JSON.