CVE-2026-25126
Published: 29 January 2026
Summary
CVE-2026-25126 is a high-severity Improper Input Validation (CWE-20) vulnerability in Polarlearn Polarlearn. Its CVSS base score is 7.1 (High).
Operationally, exploitation aligns with the MITRE ATT&CK technique Exploit Public-Facing Application (T1190); ranked at the 6.6th percentile by exploit likelihood (below the median); it is not currently listed in the CISA KEV catalog; a public proof-of-concept is referenced.
Threat & Defense at a Glance
Threat & Defense Details
Likely Mitigating ControlsAI
Per-CVE control mapping for this CVE has not run yet; the list below is derived from the weakness types (CWEs) cited in the NVD entry.
Security testing and developer training directly verify and enforce proper input validation, reducing exploitability of injection and malformed-data weaknesses.
Security testing and evaluation at multiple SDLC stages directly detects missing or flawed input validation, with the required remediation process ensuring fixes are applied.
Directly implements checks on information inputs to reject invalid data before processing.
Spam protection mechanisms perform filtering and detection on inbound/outbound messages, directly compensating for missing or weak input validation of unsolicited content.
MITRE ATT&CK Enterprise TechniquesAI
Why these techniques?
Improper input validation in the exposed vote API enables exploitation of a public-facing application (T1190) by authenticated network attackers; the resulting business-logic bypass directly permits adversaries to insert malformed values and manipulate persisted vote records (T1565.001).
NVD Description
PolarLearn is a free and open-source learning program. Prior to version 0-PRERELEASE-15, the vote API route (`POST /api/v1/forum/vote`) trusts the JSON body’s `direction` value without runtime validation. TypeScript types are not enforced at runtime, so an attacker can send arbitrary…
more
strings (e.g., `"x"`) as `direction`. Downstream (`VoteServer`) treats any non-`"up"` and non-`null` value as a downvote and persists the invalid value in `votes_data`. This can be exploited to bypass intended business logic. Version 0-PRERELEASE-15 fixes the vulnerability.
Deeper analysisAI
CVE-2026-25126 is an improper input validation vulnerability (CWE-20) affecting PolarLearn, a free and open-source learning program, in versions prior to 0-PRERELEASE-15. The issue resides in the vote API route at POST /api/v1/forum/vote, which trusts the JSON body's `direction` value without runtime validation. Although TypeScript types define expected values, they are not enforced at runtime, allowing attackers to submit arbitrary strings such as "x". Downstream processing in VoteServer interprets any non-"up" and non-null value as a downvote and persists the invalid value in `votes_data`, enabling bypass of intended business logic. The vulnerability has a CVSS v3.1 base score of 7.1 (AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:H/A:N).
An authenticated attacker with low privileges (PR:L) can exploit this over the network (AV:N) with low complexity and no user interaction required. By sending a crafted JSON payload with an invalid `direction` value, the attacker bypasses validation, triggers unintended downvote logic, and stores malformed data. This results in high integrity impact (I:H) through business logic manipulation, alongside low confidentiality impact (C:L), but no availability disruption (A:N).
The PolarLearn security advisory (GHSA-ghpx-5w2p-p3qp) and fixing commit (e6227d94d0e53e854f6a46480db8cd1051184d41) confirm that upgrading to version 0-PRERELEASE-15 resolves the issue by implementing proper runtime validation of the `direction` field.
Details
- CWE(s)