威胁动态

CVE-2026-123551 — OpenAM 通知 WebSocket 允许未认证攻击者读取会话令牌:解析与对策(CVSS 10.0,已在 16.1.4 修复)

CVE-2026-123551 让未认证攻击者可通过 OpenAM 的通知 WebSocket 读取实时会话令牌(14.0.0 至 16.1.3,CVSS 10.0)。已在 16.1.4 修复。

发布于 2026-11-09 更新于 2026-11-09 最后核实 2026-11-09 3 分钟阅读
本页目录

这是一篇针对 OpenAM 中最高严重度(CVSS 10.0)漏洞的解析。OpenAM 是常用于单点登录(SSO)的访问管理产品。本文以防御视角,说明发生什么、谁受影响以及如何应对,不涉及攻击步骤。

公告摘要
CVE
CVE-2026-123551(GitHub 公告 GHSA-5c3q-hp86-xjr8)
严重度
CVSS v3.1 10.0(Critical);CVSS v4.0 也是 10.0(v4.0 评分来自 CVE 记录)
类型
会话令牌泄露(CWE-201)。公告另列出认证绕过(CWE-288)等
前提条件
无需认证;能通过网络到达 OpenAM 端口即可。据公告,默认设置即受影响
受影响版本
OpenAM(Open Identity Platform)14.0.0 至 16.1.3
修复
OpenAM 16.1.4
日期
公告:2026年10月22日 / CVE 记录:2026年11月8日
利用情况
公告未提及遭到利用。未收录于 CISA KEV(截至11月9日)
10.0
CVSS v3.1 与 v4.0
无需认证
攻击者所需条件
16.1.4
修复版本
未收录
CISA KEV(截至11月9日)

放任不管的风险

据公告,未认证攻击者可以读取用户的会话令牌,而令牌等同于登录本身。如果管理员会话被截获,公告称可能导致配置被接管,并以 OpenAM 服务账户的权限执行命令。这种收集不会留下登录失败或账户锁定。请把面向互联网的 OpenAM 作为最优先事项。

这是什么样的漏洞

OpenAM 会向代理端(agent,部署在应用前面用于检查认证的组件)通知会话的创建、注销、超时和属性变更。据公告,这些通知中带有完整的会话标识符,它相当于持有者凭据:谁持有它,谁就被当作该用户。代理端通知默认启用。

两个弱点叠加在一起。本应把通知 WebSocket 限制给代理端的检查,可以通过旧版 Liberty ID-FF(一种较早的联合机制)端点在没有凭据的情况下被绕过。越过检查之后,已连接的客户端可以订阅任意主题,包括内部主题。本站不说明如何利用。

修复前(14.0.0 至 16.1.3)

  • 代理端以外的客户端也能连接通知 WebSocket
  • 通知中包含会话标识符
  • 收集是被动的,日志中不留痕迹

16.1.4 中的变化

  • 内部请求分发时也会运行安全过滤器
  • ID-FF 端点不再转发到内部端点
  • WebSocket 客户端只能订阅代理端主题

公告还指出,同样的旧版 ID-FF 端点在登录、联合或注销之后,会把浏览器重定向到取自请求、未经检查的地址;启用 URL 重写时,用户的会话令牌会被附加到该地址上。16.1.4 中,重定向目的地只接受按提供方设置的允许列表中的地址。

谁受影响

项目内容
产品OpenAM(Open Identity Platform)
受影响版本14.0.0 至 16.1.3(CVE 记录的写法为「from 14.0.0 before 16.1.4」)
修复版本16.1.4
不受影响14.0.0 之前的版本(没有通知 WebSocket)
包openam-server-only、openam-federation-library、openam-notifications-websocket(group org.openidentityplatform.openam)
  • 据公告,默认设置即受影响。
  • 派生版和商业支持版取决于各供应商发布的版本。请向供应商确认您的版本是否受影响。

如何确认自己是否受影响

1

确认 OpenAM 的版本

查看管理控制台中显示的版本,或已部署包(WAR、JAR 等)的版本。14.0.0 至 16.1.3 受影响。如果有生产、预发布和开发多个实例,请逐一检查(资产清点清单)。

2

确认外部能否到达

确认 OpenAM 端口能否从互联网或其他不可信网络到达。公告称,攻击者只需能到达该端口。

3

确认是否使用代理端通知

查看代理端通知的设置(org.forgerock.openam.notifications.agents.enabled)。公告称其默认启用。

今天该做什么

1

更新到 16.1.4(最优先)

阅读公告中的升级说明后,把 OpenAM 更新到 16.1.4。如果在 ID-FF 登录、联合或注销之后会把用户重定向到其他主机,必须填写新增的按提供方设置的 Relay State URL List。如果您自定义过 web.xml,请加入 16.1.4 引入的 dispatcher 元素。

2

在更新之前先收窄入口

公告列出的临时办法如下,它们不能代替更新。
・在代理、负载均衡器或防火墙处,只允许已知的代理端主机访问 /openam/notifications 和 /openam/ws/*。
・如果代理端不依赖通知,就停用代理端通知(把 org.forgerock.openam.notifications.agents.enabled 设为 false)。
・如果不使用 ID-FF 联合,就阻断旧版 Liberty ID-FF 端点,包括 /openam/preLogin 和 /openam/postLogin。

3

更新后撤销现有会话

公告要求轮换已暴露的会话,并把当前的管理员和用户会话视为可能已暴露。更新后,请强制所有人(包括管理员)重新登录。作为本站的补充,还应检查设备上的长期会话以及已连接应用所持有的会话。流程可参考漏洞修复实务手册。

4

检查日志和配置变更

公告把意外的 WebSocket 连接、对会话主题的订阅以及脚本配置的变更列为需要监控的内容。针对更新前的这段时间,请检查谁访问过通知端点,以及管理员配置变更的历史。被动读取不会留下登录失败,所以什么都没找到并不能让人放心。

5

加固脚本环境

公告建议保持脚本沙箱处于强制状态,限制谁能修改脚本配置,并在操作系统沙箱中运行容器。这样即使管理员会话被窃取,也能限制损害。

利用情况

  • 公告没有说观察到了利用。公告称,为了给运营者留出升级时间,技术细节和概念验证代码暂不公开。
  • 截至2026年11月9日,该漏洞未收录于 CISA 的 KEV 目录(目录版本 2026.11.06)。
  • NVD 记录到11月8日才创建,状态为 Received(尚未分析)。

本站的观点:比起评分,更应看重它在 SSO 中的位置和不留痕迹这一点

没有收录 KEV、也没有利用报告,单看评分的话「先观望」也说得通。即便如此,如果您的 OpenAM 暴露在互联网上,本站建议本周就采取行动,理由有两点。

第一,SSO 的中心一旦被攻破,同样的劫持会蔓延到所有连接的应用。第二,如公告所述,读取令牌几乎不留痕迹,事后很难证明什么都没发生。请假定自己无法证明,并把更新与会话撤销配合进行。多因素认证能强化登录这一步,但无法阻止有人重放已签发的会话令牌(多因素认证指南)。

信息来源

最后确认:2026年11月9日。

延伸阅读

FAQ

QCVE-2026-123551 是什么?
A

这是 Open Identity Platform 的 OpenAM 中的漏洞。据公告,通知 WebSocket 上的认证检查可以在没有凭据的情况下被绕过,未认证攻击者能读取其中流动的实时会话令牌。由于令牌可用来冒充其所有者,用户和管理员的会话都可能被劫持。CVSS v3.1 评分为 10.0。

Q哪些版本受影响,修复版本是什么?
A

OpenAM 14.0.0 至 16.1.3 受影响,修复版本为 16.1.4。14.0.0 之前的版本没有通知 WebSocket。受影响的包是 openam-server-only、openam-federation-library 和 openam-notifications-websocket。

Q暂时无法更新,有临时办法吗?
A

公告列出了几种临时办法。在代理、负载均衡器或防火墙处,把对 /openam/notifications 和 /openam/ws/* 的访问限制为已知的代理端(agent)主机。如果代理端不依赖通知,就停用代理端通知。如果不使用 ID-FF,就阻断旧版 Liberty ID-FF 端点。这些都不能代替更新。

Q只更新就够了吗?
A

不够。公告要求把当前的管理员和用户会话视为可能已暴露,并轮换已暴露的会话。更新前被读取的令牌在更新后可能仍然有效,因此更新后请强制重新认证(重新签发会话)。

Q有没有被利用?
A

公告没有说已被利用。公告写明,为了给运营者留出升级时间,技术细节和概念验证代码暂不公开。截至2026年11月9日,该漏洞未收录于 CISA 的 KEV 目录。不过,公告称这种收集是被动的,不会产生登录失败或账户锁定,因此日志里没有痕迹不能证明安全。

Q派生版或商业支持版的 OpenAM 怎么办?
A

在日本提供的派生版和商业支持版可能以自己的版本号提供修复。如果您使用的是派生版或商业支持版,请确认供应商的信息。