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

CVE-2026-39336: ChurchCRM 存储型跨站脚本漏洞

披露日期: 2026-04-07

漏洞信息

漏洞编号
CVE-2026-39336
漏洞类型
存储型XSS (Stored XSS)
CVSS评分
6.1 中危
攻击向量
网络 (AV:N)
认证要求
高权限 (PR:H)
用户交互
需要交互 (UI:R)
影响产品
ChurchCRM

相关标签

XSS存储型XSSChurchCRMWeb安全

漏洞概述

ChurchCRM 是一款开源的教堂管理系统。在 7.1.0 版本之前,该系统存在存储型跨站脚本 (XSS) 漏洞。受影响的组件包括目录报表配置字段、渲染到地址字段的人员编辑器默认值以及外部自助注册表单默认值。该漏洞主要通过滥用可写配置字段实现,属于管理员对管理员的存储型 XSS 攻击路径。攻击者可利用此漏洞执行恶意脚本操作。该问题已在 7.1.0 版本中得到修复。

技术细节

该漏洞的根本原因在于 ChurchCRM 在处理用户输入并将其存储到系统配置或默认值时,缺乏足够的输出编码或输入验证。具体而言,攻击者需要具有高权限(PR:H)才能访问系统配置界面。攻击者可以在“Directory Reports form fields”(目录报表表单字段)、“Person editor defaults”(人员编辑器默认值)或“External self-registration form defaults”(外部自助注册表单默认值)等可写字段中注入恶意 JavaScript 代码。当其他管理员或用户访问包含这些被篡改数据的页面时(例如查看人员详情或报表),恶意脚本将在其浏览器上下文中执行。虽然向量显示需要用户交互(UI:R),但在存储型 XSS 场景中,通常只要受害者访问了被污染的页面即可触发。这种漏洞允许攻击者窃取管理员会话 Cookie、执行未授权操作或进一步渗透内部网络,对系统的机密性和完整性构成高风险。

攻击链分析

STEP 1
步骤1
攻击者获取 ChurchCRM 系统的高权限管理员账户。
STEP 2
步骤2
攻击者登录后台,导航至系统配置设置,找到目录报表或人员编辑器默认值配置页面。
STEP 3
步骤3
攻击者在配置表单的可写字段中注入恶意的 JavaScript 代码(Payload),并保存更改。
STEP 4
步骤4
系统将恶意代码存储在数据库中。
STEP 5
步骤5
当其他管理员或用户访问包含该配置数据的页面(如查看人员档案)时,恶意脚本在浏览器中执行。
STEP 6
步骤6
攻击者利用执行脚本的上下文窃取会话凭证或执行恶意操作。

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
// Proof of Concept for CVE-2026-39336 // Payload injected into 'Person editor defaults' or 'Directory Reports form fields' // 1. Attacker accesses Admin Configuration Panel. // 2. Injects the following payload into a vulnerable text field (e.g., Address Default): var xssPayload = '<img src=x onerror=alert(document.cookie)>'; // 3. Save configuration. // 4. When a victim (Admin) views the Person Editor or Directory Report, // the payload executes within the victim's browser session. console.log('Vulnerable input: ' + xssPayload);

影响范围

ChurchCRM < 7.1.0

防御指南

临时缓解措施
如果无法立即升级,管理员应严格审查并过滤所有配置字段中的输入,移除可能包含的 HTML 或 JavaScript 标签。建议部署 Web 应用防火墙(WAF)以检测和拦截针对受影响页面的恶意脚本注入尝试,并仅允许可信的 IP 地址访问管理后台配置页面。

参考链接

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