CVE-2025-61604CVE-2025-61604是WeGIA开源Web管理系统中的一个跨站请求伪造(CSRF)高危漏洞,CVSS评分为7.1。WeGIA是一款专注于慈善机构管理的开源Web应用,主要用于管理捐赠者、受益人、库存等慈善活动相关数据。该漏洞存在于Almoxarifado(库存管理)实体的删除操作中,由于删除接口通过HTTP GET方法暴露且未实施任何CSRF保护机制,攻击者可以利用受害者的已认证会话,诱使其访问恶意第三方网站,从而触发未授权的删除操作。
此漏洞的影响范围涵盖WeGIA 3.4.12及以下所有版本。由于删除操作直接修改系统数据且无需二次确认,攻击成功后可导致库存数据被恶意删除,影响慈善机构的正常运营和数据完整性。该漏洞已于2025年10月2日由GitHub安全顾问团队披露,并在WeGIA 3.5.0版本中完成修复。值得注意的是,虽然该漏洞需要用户交互(UI:R)才能触发,但由于无需任何权限(PR:N)即可通过网络远程利用,且对完整性影响为高(I:H),因此整体风险等级仍然较高。
对于依赖WeGIA管理库存和捐赠物资的慈善机构而言,该漏洞可能导致重要物资记录被恶意删除,造成数据丢失和运营中断。建议所有使用受影响版本的用户尽快升级到3.5.0或更高版本以消除风险。
该漏洞的核心问题在于WeGIA系统的Almoxarifado(库存管理)模块的删除操作接口设计不当。具体技术细节如下:
1. **HTTP GET方法用于状态变更操作**:删除Almoxarifado实体的操作通过HTTP GET请求实现,而GET方法在HTTP协议规范中本应用于安全、幂等的读取操作。将删除等状态变更操作暴露在GET方法上违反了RESTful API设计原则,也使得CSRF攻击成为可能,因为浏览器在加载图片、链接或重定向时会自动发送GET请求。
2. **缺少CSRF Token验证**:系统在处理删除请求时未验证CSRF Token、Referer头或Origin头等反CSRF机制,导致来自任何第三方站点的请求都会被服务器接受并执行。
3. **会话认证依赖Cookie**:WeGIA使用基于Cookie的会话认证,当用户在浏览器中保持登录状态时,浏览器会自动在跨站请求中携带认证Cookie,使得攻击者可以利用受害者的会话执行操作。
**利用方式**:攻击者创建一个包含恶意<img src="http://target/almoxarifado/delete?id=X">标签或恶意链接的网页,当已登录的WeGIA管理员访问该网页时,浏览器会自动向WeGIA服务器发送GET请求,携带受害者的认证Cookie,从而触发库存记录的删除操作。
**修复方案**:WeGIA 3.5.0版本将删除操作改为POST方法,并添加了CSRF Token验证机制,确保只有来自合法页面的请求才能执行状态变更操作。