CVE-2025-10750CVE-2025-10750是WordPress平台上一款名为PowerBI Embed Reports的插件中存在的高危敏感信息泄露漏洞。该插件用于在WordPress网站中嵌入Microsoft Power BI报表,需要与Azure AD进行OAuth认证集成。该漏洞由Wordfence安全团队的研究员发现并报告,CVSS评分为5.3分,属于中危级别漏洞。
该漏洞的根本原因在于插件在处理'testUser'端点时,未对访问请求进行适当的能力检查(capability check)和身份认证验证。该端点通过mo_epbr_admin_observer()函数暴露,并挂钩在WordPress的'init'钩子上,这意味着任何请求都会触发该函数。
由于缺乏身份验证机制,未认证的攻击者可以直接通过构造特定的HTTP请求访问该端点,从而获取敏感的Azure AD用户信息。这些信息包括但不限于用户的显示名称(displayName)、电子邮件地址(mail)、电话号码(phones)、部门信息(department)等个人身份信息(PII)。此外,攻击者还可以获取详细的OAuth错误数据,包括Azure AD应用程序/客户端ID(Application/Client IDs)、错误代码(error codes)、追踪ID(trace IDs)以及关联ID(correlation IDs)等敏感配置信息。
该漏洞影响该插件所有1.2.0及以下版本,由于利用难度极低(无需认证、无需用户交互),且可以批量自动化利用,对使用该插件的WordPress网站构成了严重的隐私和数据安全威胁。
该漏洞的技术原理主要涉及WordPress插件开发中的权限控制缺失问题。具体技术细节如下:
1. **漏洞入口点**:插件通过mo_epbr_admin_observer()函数处理请求,该函数挂钩在WordPress核心的'init'动作钩子上。WordPress的'init'钩子在每次请求时都会触发,包括来自未认证用户的请求。
2. **缺失的权限检查**:在mo_epbr_admin_observer()函数中,插件直接处理'testUser'端点的请求,而没有调用current_user_can()或类似的权限验证函数,也没有检查is_user_logged_in()状态。这导致任何匿名用户都可以访问该功能。
3. **敏感数据暴露**:当攻击者向该端点发送请求时,插件会与Azure AD进行通信以测试用户配置,并将响应数据(包括成功或错误的详细信息)直接返回给请求者。在错误响应中,会泄露Azure AD的应用程序ID、客户端ID、租户ID等敏感配置信息;在成功响应中,会泄露用户的PII信息。
4. **利用方式**:攻击者只需向目标WordPress站点的任意页面发送特定的POST或GET请求,触发'init'钩子,插件便会处理该请求并返回敏感数据。整个攻击过程无需任何认证凭据,且可以通过自动化工具批量执行。
5. **影响范围**:由于该漏洞可以泄露Azure AD的配置信息,攻击者还可以利用这些信息进行进一步的攻击,如OAuth钓鱼、令牌伪造等,从而扩大攻击影响。