平台
other
组件
openolat
修复版本
10.5.5
CVE-2026-31946 是 OpenOLAT 中的一个身份验证绕过漏洞。OpenOLAT 的 OpenID Connect 隐式流实现未验证 JWT 签名,导致攻击者可以绕过身份验证。受影响的版本包括 10.5.4 到 20.2.5 之前的版本。此漏洞已在 20.2.5 版本中修复。
OpenOLAT的CVE-2026-31946漏洞允许攻击者通过JWT令牌操作来破坏OpenOLAT(一个开源的基于Web的电子学习平台)的安全性。具体来说,10.5.4到20.2.5之前的OpenOLAT版本中OpenID Connect的隐式流程实现没有验证JWT签名。这意味着攻击者可以创建看似合法的恶意JWT令牌,因为JSONWebToken.parse()方法会静默地忽略紧凑JWT的签名段(header.payload.signature)。缺少签名验证使得插入虚假声明成为可能,这可能导致用户身份冒充、未经授权访问敏感数据,甚至在服务器上执行任意代码,具体取决于如何使用这些被操纵的声明。这种影响在学生和教师的数据安全至关重要的环境中尤其严重。
如果攻击者能够向OpenOLAT发送OpenID Connect请求,则他们可以利用此漏洞。这可以通过使用将用户重定向到OpenOLAT登录页面的恶意网站或通过拦截网络流量来实现。一旦攻击者获得有效的JWT令牌,他们就可以操作签名和声明以获得对平台资源的未经授权的访问。利用难度取决于部署环境以及已实施的任何其他安全措施。缺少JWT签名验证是一个根本性的缺陷,即使对于技术专长有限的攻击者,也使得利用变得容易。
Educational institutions and organizations using OpenOLAT for online learning are at significant risk. Specifically, those relying on OpenID Connect for authentication and using versions between 10.5.4 and 20.2.4 are particularly vulnerable. Shared hosting environments where OpenOLAT instances are deployed alongside other applications could also be affected if proper isolation is not in place.
• linux / server: Monitor OpenOLAT logs for JWT requests lacking a signature or with invalid claims. Use journalctl -u openolat to filter for relevant log entries.
journalctl -u openolat | grep -i "JWT signature" -i "invalid claim"• generic web: Use curl to test OpenID Connect endpoints with crafted JWTs lacking signatures to see if they are accepted.
curl -H "Authorization: Bearer <malformed_jwt>" <openid_connect_endpoint>• database (mysql): If OpenOLAT stores JWTs in the database (check configuration), query the relevant tables for JWTs without a signature field or with suspicious claim values. (Specific query depends on OpenOLAT's database schema).
disclosure
漏洞利用状态
EPSS
0.03% (7% 百分位)
CISA SSVC
CVE-2026-31946的主要缓解措施是将OpenOLAT升级到20.2.5或更高版本。此版本包含一个修复程序,可以正确验证JWT签名,从而防止令牌操作。同时,作为临时措施,建议限制从不受信任的网络访问平台,并监控审计日志以查找可疑活动。此外,重要的是审查OpenID Connect配置,以确保使用必要的声明进行授权,并实施强大的安全策略来保护敏感数据。还建议进行定期的渗透测试,以识别和修复潜在的漏洞。
将 OpenOLAT 更新到版本 20.2.5 或更高版本。此版本通过正确验证 OIDC 隐式流中的 JWT 签名来修复身份验证绕过漏洞。
漏洞分析和关键警报直接发送到您的邮箱。
JWT(JSON Web Token)是一种安全地将信息作为JSON对象传输的开放标准。它通常用于身份验证和授权。
验证JWT签名可确保令牌未被攻击者篡改。如果没有验证,攻击者可以修改令牌以获得未经授权的访问。
作为临时措施,限制从不受信任的网络访问平台,并监控审计日志。
是的,所有使用OpenID Connect隐式流程并在10.5.4到20.2.5版本范围内的OpenOLAT安装都容易受到影响。
您可以在官方网站上找到有关OpenID Connect的更多信息:https://openid.net/
CVSS 向量