IPBUF安全漏洞报告
English
CVE-2026-22675 CVSS 5.4 中危

CVE-2026-22675 OCS Inventory NG Server 存储型XSS漏洞

披露日期: 2026-04-06

漏洞信息

漏洞编号
CVE-2026-22675
漏洞类型
存储型跨站脚本 (Stored XSS)
CVSS评分
5.4 中危
攻击向量
网络 (AV:N)
认证要求
低权限 (PR:L)
用户交互
需要交互 (UI:R)
影响产品
OCS Inventory NG Server

相关标签

XSS存储型跨站脚本OCS Inventory NGWeb安全CWE-79

漏洞概述

OCS Inventory NG Server 2.12.3及之前版本存在存储型XSS漏洞。未经身份验证的攻击者可以通过向/ocsinventory端点提交恶意User-Agent HTTP头来利用此漏洞。这些恶意User-Agent值在未经适当清理的情况下被存储,并在Web控制台渲染,导致查看统计仪表板的管理员浏览器中执行任意JavaScript代码。

技术细节

该漏洞的根源在于OCS Inventory NG Server在处理来自通信代理的请求数据时,未能对HTTP请求头中的User-Agent字段实施严格的输入验证和输出编码。攻击者无需经过身份验证,即可构造并发送包含恶意JavaScript代码的User-Agent头部数据至/ocsinventory接口。服务器接收后,将这些数据未经净化地存储在数据库中。随后,当具有权限的管理员用户登录Web控制台并访问统计仪表板或相关设备页面时,服务器会将存储的User-Agent值直接渲染在HTML页面中。由于缺乏上下文感知的输出编码,受害者的浏览器会将这些数据解析为可执行的JavaScript代码,从而允许攻击者窃取会话凭证、篡改数据或执行其他恶意操作。

攻击链分析

STEP 1
侦察与准备
攻击者识别运行OCS Inventory NG Server的目标,并构造包含恶意JavaScript代码的User-Agent头部。
STEP 2
发送恶意请求
攻击者向/ocsinventory端点发送HTTP请求,利用User-Agent头部注入恶意载荷。
STEP 3
数据存储
服务器接收请求,将未经过滤的User-Agent值存储在数据库中。
STEP 4
触发漏洞
管理员登录Web控制台并查看统计仪表板,页面请求并显示存储的设备信息。
STEP 5
代码执行
受害者的浏览器解析未编码的User-Agent内容,执行恶意JavaScript,导致会话劫持或进一步攻击。

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
import requests target_url = "http://target-ip/ocsinventory" # Malicious JavaScript payload malicious_payload = "<script>alert(document.cookie);</script>" headers = { "User-Agent": malicious_payload, "Content-Type": "application/x-www-form-urlencoded" } try: # Send a request to the vulnerable endpoint response = requests.post(target_url, headers=headers) if response.status_code == 200: print("[+] Payload sent successfully. Trigger storage of XSS.") else: print(f"[-] Request failed with status code: {response.status_code}") except Exception as e: print(f"[-] An error occurred: {e}")

影响范围

OCS Inventory NG Server <= 2.12.3

防御指南

临时缓解措施
如果无法立即升级,建议通过防火墙限制对/ocsinventory接口的访问,仅允许内网受信任的IP连接。同时,部署Web应用防火墙(WAF)规则,以检测和拦截包含常见XSS模式字符(如<script>, <, >)的HTTP请求头。

参考链接

快速导航: 前沿安全 最新收录域名列表 最新威胁情报列表 最新网站排名列表 最新工具资源列表 最新CVE漏洞列表