Cyber Resilience

CVE-2026-31946

Auth Bypass in Frentix Openolat 10.5.4 – 20.2.5

Published
30 March 2026
Modified
02 April 2026
Patch / advisory
CVSS Score v3.1 9.8
Click a component to see what it means
Raw vectorCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
EPSS Score 0.0021 11th percentile
Risk Priority 69 floored blend · peak EPSS

Summary

CVE-2026-31946 is a critical-severity Improper Authentication (CWE-287) vulnerability in Frentix Openolat. Its CVSS base score is 9.8 (Critical).

Operationally, exploitation aligns with the MITRE ATT&CK technique Supply Chain Compromise (T1195); ranked at the 11th percentile by exploit likelihood (below the median); it is not currently listed in the CISA KEV catalog.

The strongest mitigations our analysis identified map to IA-2 (Identification and Authentication (Organizational Users)) and IA-3 (Device Identification and Authentication) — see the control section below for these in your framework.

Deeper analysis AI-assisted summary

Synthesised by an AI model from the NVD description and linked references — a reading aid, not an authoritative source.

CVE-2026-31946 affects OpenOlat, an open source web-based e-learning platform used for teaching, learning, assessment, and communication. The vulnerability resides in the OpenID Connect implicit flow implementation, where the JSONWebToken.parse() method silently discards the signature segment of compact JWTs (header.payload.signature). Additionally, the getAccessToken() methods in OpenIdConnectApi and OpenIdConnectFullConfigurableApi only validate claim-level fields such as issuer, audience, state, and nonce, without performing cryptographic signature verification against the Identity Provider's JWKS endpoint. This flaw impacts versions from 10.5.4 up to but not including 20.2.5, and carries a CVSS v3.1 base score of 9.8, linked to CWEs 287 (Improper Authentication) and 347 (Improper Verification of Cryptographic Signature).

Remote attackers require only network access to exploit this vulnerability, with low attack complexity, no privileges, no user interaction, and no scope change. By crafting a malicious JWT lacking a valid signature but with manipulated claims, an attacker can bypass authentication checks, obtain unauthorized access tokens, and potentially impersonate legitimate users. This enables high-impact compromise of confidentiality, integrity, and availability within the OpenOlat platform.

The GitHub security advisory at https://github.com/OpenOLAT/OpenOLAT/security/advisories/GHSA-v8vp-x4q4-2vch confirms the issue has been patched in OpenOlat version 20.2.5, recommending immediate upgrades for affected installations to restore proper JWT signature verification.

OWASP Top 10 for Web (2025)

EU & UK References

Vulnerability Data

OpenOlat is an open source web-based e-learning platform for teaching, learning, assessment and communication. From version 10.5.4 to before version 20.2.5, OpenOLAT's OpenID Connect implicit flow implementation does not verify JWT signatures. The JSONWebToken.parse() method silently discards the signature segment…

more

of the compact JWT (header.payload.signature), and the getAccessToken() methods in both OpenIdConnectApi and OpenIdConnectFullConfigurableApi only validate claim-level fields (issuer, audience, state, nonce) without any cryptographic signature verification against the Identity Provider's JWKS endpoint. This issue has been patched in version 20.2.5.

CWE(s)

Related Threats

MITRE ATT&CK Enterprise Techniques

T1195 Supply Chain Compromise Initial Access
Adversaries may manipulate products or product delivery mechanisms prior to receipt by a final consumer for the purpose of data or system compromise.
T1133 External Remote Services Persistence
Adversaries may leverage external-facing remote services to initially access and/or persist within a network.
T1190 Exploit Public-Facing Application Initial Access
Adversaries may attempt to exploit a weakness in an Internet-facing host or system to initially access a network.
T1195.002 Compromise Software Supply Chain Initial Access
Adversaries may manipulate application software prior to receipt by a final consumer for the purpose of data or system compromise.
T1542 Pre-OS Boot Stealth
Adversaries may abuse Pre-OS Boot mechanisms as a way to establish persistence on a system.
T1553 Subvert Trust Controls Defense Impairment
Adversaries may undermine security controls that will either warn users of untrusted activity or prevent execution of untrusted programs.
Derived from this CVE’s CWE(s) via the direct CWE→ATT&CK cross-walk.

CVEs Like This One

CVE-2024-25973Same product: Frentix Openolat
CVE-2024-25974Same product: Frentix Openolat
CVE-2024-28198Same product: Frentix Openolat
CVE-2026-28228Same product: Frentix Openolat
CVE-2023-49646Shared CWE-287, CWE-347
CVE-2026-1568Shared CWE-287, CWE-347
CVE-2026-33117Shared CWE-287, CWE-347
CVE-2026-49454Shared CWE-287, CWE-347
CVE-2026-25922Shared CWE-287, CWE-347
CVE-2026-48526Shared CWE-287, CWE-347

Affected Assets

frentix
openolat
10.5.4 — 20.2.5

Mitigating Controls

Control response

Prevent
Stop it (NIST 800-53)

Detect
Catch it (NIST detect / respond)

Harden
Shrink the surface (DISA STIG)
  • 22 hardening rules · 7 OS baselines
Validate
Prove the fix (OWASP ASVS)
  • V6.4.4
  • V6.5.4
  • V6.5.5
  • V6.5.7

Mitigating Controls (NIST 800-53 r5) AI

Mandates unique identification and authentication of organizational users before access, directly stopping improper authentication.

Requires unique identification and authentication of devices before establishing connections, preventing unauthenticated device claims.

Mandates unique identification and authentication of non-organizational users, directly addressing the weakness for external actors.

Manages authenticators with verification and secure distribution, reducing opportunities for improper authentication.

Requiring cryptographic protection mechanisms forces correct signature verification to be implemented for data protection.

Mandating integrity verification tools directly requires proper cryptographic signature checking to detect unauthorized changes.

Mitigating Controls (NIST CSF 2.0) AI

Derived directly from the weakness types (CWEs) cited in the NVD entry via our AI-authored CWE→CSF cross-walk (authority under review) — links open the control.

PR.AA-03 mostly match
prevents

PR.AA-03 directly enforces authentication mechanisms that eliminate most improper-authentication defects, yet CWE-287 spans additional vectors (missing checks, flawed protocols, session handling) that one control does not fully close.

PR.AA-04 mostly match
prevents

PR.AA-04 directly enables verification of identity assertions (mostly preventing CWE-287 in that scope) yet leaves many other authentication failure modes unaddressed (only partial prevention overall).

PR.DS-01 mostly match
prevents

Digital signatures are explicitly cited to protect integrity of data-at-rest, so proper verification directly mitigates the weakness.

PR.DS-02 mostly match
prevents

Digital signatures are explicitly cited to protect integrity of data-in-transit, so proper verification directly mitigates the weakness.

ID.RA-09 partial match
prevents

Requires assessing authenticity and integrity of acquired assets, which commonly relies on signature verification but is limited to pre-acquisition.

PR.AA-01 partial match
prevents

PR.AA-01 supplies and governs credentials/tokens that authentication relies on, removing some weak-credential cases, yet leaves verification logic, missing checks, and protocol flaws untouched.

Mitigating Controls (ISO/IEC 27001:2022 Annex A) AI

Derived directly from the weakness types (CWEs) cited in the NVD entry via our AI-authored CWE→ISO cross-walk (authority under review) — links open the control.

prevents

Requiring authentication methods whose strength matches the sensitivity of the data and mandating multi-factor authentication directly blocks attempts to access resources without proving identity.

prevents

Verifying user identity before issuing replacement credentials and forcing changes after compromise reduces the likelihood that authentication bypass can be achieved through stolen or weak credentials.

prevents

Mandating segregated approval and oversight for non-human identities reduces the chance that weak or orphaned credentials can be exploited for unauthorized authentication.

mitigates

Requiring authentication mechanisms and technical parameters for secure connections ensures that network services verify user identity before granting access, preventing exploitation of missing or weak authentication.

prevents

Establishing approved cryptographic solutions and usage practices lowers the probability that signature-verification steps will be omitted or incorrectly implemented.

prevents

Security requirements specified early and verified through testing drive the consistent implementation of authentication mechanisms, decreasing the likelihood that authentication steps are omitted or incorrectly applied.

Hardening callouts derived

Configuration rules from DISA STIG baselines that bear on weaknesses of the type cited by this CVE. Each rule is shown with the relationship its mapping actually records, against the CWE it was authored against. Derived via CVE→CWE over `controls_xwalks` (authoritative rows only; rows rated `none` are excluded).

Oracle Linux 8 (3 rules)
  • V-248574 YUM must be configured to prevent the installation of patches, service packs, device drivers, or OL 8 system components that have not been digitally signed using a certificate that is recognized and approved by the organization. prevents CWE-347
  • V-248575 OL 8 must prevent the installation of software, patches, service packs, device drivers, or operating system components of local packages without verification they have been digitally signed using a certificate that is issued by a Certificate Authority (CA) that is recognized and approved by the organization. prevents CWE-347
  • V-248827 OL 8 must not have the rsh-server package installed. prevents CWE-287
Oracle Linux 9 (2 rules)
  • V-271525 OL 9 must have GPG signature verification enabled for all software repositories. prevents CWE-347
  • V-271523 OL 9 must check the GPG signature of locally installed software packages before installation. prevents CWE-347
RHEL 7 (5 rules)
  • V-204425 The Red Hat Enterprise Linux operating system must be configured so that the SSH daemon does not allow authentication using an empty password. prevents CWE-287
  • V-204442 The Red Hat Enterprise Linux operating system must not have the rsh-server package installed. prevents CWE-287
  • V-204447 The Red Hat Enterprise Linux operating system must prevent the installation of software, patches, service packs, device drivers, or operating system components from a repository without verification they have been digitally signed using a certificate that is issued by a Certificate Authority (CA) that is recognized and approved by the organization. prevents CWE-347
RHEL 8 (2 rules)
  • V-230264 RHEL 8 must prevent the installation of software, patches, service packs, device drivers, or operating system components from a repository without verification they have been digitally signed using a certificate that is issued by a Certificate Authority (CA) that is recognized and approved by the organization. prevents CWE-347
  • V-230492 RHEL 8 must not have the rsh-server package installed. prevents CWE-287
RHEL 9 (1 rule)
  • V-257822 RHEL 9 must have GPG signature verification enabled for all software repositories. prevents CWE-347
Ubuntu 22.04 (1 rule)
  • V-260470 Ubuntu 22.04 LTS, when booted, must require authentication upon booting into single-user and maintenance modes. prevents CWE-287
Ubuntu 24.04 (2 rules)
  • V-270675 Ubuntu 24.04 LTS when booted must require authentication upon booting into single-user and maintenance modes. prevents CWE-287
  • V-270714 Ubuntu 24.04 LTS must not allow accounts configured in Pluggable Authentication Modules (PAM) with blank or null passwords. prevents CWE-287

References