IPBUF安全漏洞报告
English
CVE-2026-7677 CVSS 3.5 低危

CVE-2026-7677 FastBee存储型XSS漏洞

披露日期: 2026-05-03

漏洞信息

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

相关标签

XSS存储型XSSFastBee物联网Web漏洞

漏洞概述

kerwincui FastBee物联网平台在1.2.1及更早版本中存在一处存储型跨站脚本(XSS)漏洞。该漏洞源于系统通知处理模块未能正确过滤用户输入。具体而言,受影响文件SysNoticeController.java中的Add函数在处理noticeContent参数时缺乏严格的转义处理,允许攻击者注入恶意HTML或JavaScript代码。一旦攻击成功,当具有权限的用户访问受污染的通知页面时,恶意脚本将被触发,可能导致敏感信息窃取或会话劫持。目前厂商尚未发布修复补丁。

技术细节

该漏洞属于存储型跨站脚本攻击(Stored XSS)。漏洞发生在FastBee项目的后台管理模块中,具体路径为springboot/fastbee-admin/src/main/java/com/fastbee/web/controller/system/SysNoticeController.java。在处理“添加通知”的业务逻辑时,Add函数直接接收前端传递的noticeContent参数,并将其存储到数据库中,未进行有效的HTML实体编码或输入验证。攻击者只需具备低权限账号(PR:L),即可构造包含恶意JS脚本的Payload发送给服务器。由于后端未对数据进行安全清洗,该Payload被持久化存储。当管理员或其他高权限用户(UI:R)登录系统并访问该通知列表或详情页时,服务器会直接从数据库读取恶意内容并渲染到前端页面。浏览器解析HTML时执行恶意脚本,从而在受害者的浏览器上下文中运行。攻击者可利用此漏洞绕过同源策略,窃取用户的Session ID、执行未授权操作或进行钓鱼攻击。

攻击链分析

STEP 1
1. 获取权限
攻击者注册或获取一个低权限用户账号,登录FastBee物联网平台。
STEP 2
2. 注入Payload
攻击者在系统通知发布功能中,构造恶意XSS脚本(如<script>标签)填入noticeContent字段,并提交请求。
STEP 3
3. 数据存储
后端SysNoticeController未对参数进行过滤,直接将恶意脚本存储至数据库。
STEP 4
4. 触发漏洞
管理员或高权限用户登录后台,查看通知列表或详情页面。
STEP 5
5. 执行攻击
浏览器渲染通知内容时执行恶意脚本,攻击者获取管理员Cookie或执行恶意操作。

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
import requests # Target URL for the vulnerable endpoint url = "http://target-url/system/notice/add" # Malicious payload to test XSS xss_payload = "<img src=x onerror=alert('CVE-2026-7677')>" # Headers simulating an authenticated low-privilege user cookies = { "Admin-Token": "valid_low_privilege_session_token" } headers = { "Content-Type": "application/json", "User-Agent": "Mozilla/5.0" } # Data payload targeting the vulnerable 'noticeContent' argument data = { "noticeTitle": "System Maintenance", "noticeContent": xss_payload, "status": "0" } try: # Send POST request to inject the payload response = requests.post(url, json=data, headers=headers, cookies=cookies) if response.status_code == 200: print("[+] Payload injected successfully.") print("[*] Trigger: Visit the system notice page to verify execution.") else: print(f"[-] Request failed with status code: {response.status_code}") except Exception as e: print(f"[!] Error: {e}")

影响范围

kerwincui FastBee <= 1.2.1

防御指南

临时缓解措施
由于厂商尚未回应,建议开发者手动修改代码。在SysNoticeController.java的Add方法中,引入类似org.springframework.web.util.HtmlUtils.htmlEscape的方法对noticeContent进行转义处理。同时,管理员应手动审查数据库中已存在的通知内容,移除可疑的脚本代码,防止历史数据触发攻击。

参考链接

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