CVE-2025-11895CVE-2025-11895是WordPress平台上一款名为Binary MLM Plan(二元多层次营销计划)插件中存在的不安全直接对象引用(IDOR)漏洞。该漏洞由Wordfence安全团队的研究员发现,并于2025年10月17日正式披露。该插件主要用于构建基于二元制的多层次营销(MLM)会员系统,允许管理员管理会员的分销网络和佣金结算。漏洞存在于插件的bmp_user_payout_detail_of_current_user()函数中,该函数在查询用户佣金支付详情时,仅根据传入的payout-id参数从数据库中检索记录,而未对当前请求用户的身份进行权限验证。这意味着任何拥有bmp_user角色(通常是订阅者Subscriber级别)的已认证用户,都可以通过向/bmp-account-detail/端点发送带有精心构造的payout-id参数的请求,访问并查看其他会员的佣金支付汇总信息。CVSS 3.1评分为4.3分,属于中危级别。该漏洞的攻击向量为网络(AV:N),攻击复杂度低(AC:L),所需权限为低权限(PR:L),无需用户交互(UI:N),对机密性产生低影响(C:L),不影响完整性和可用性。尽管该漏洞的危害程度相对有限,但在大规模MLM平台中,可能导致大量会员的财务隐私信息泄露,对用户信任和平台声誉造成负面影响。
该漏洞的核心问题在于bmp_user_payout_detail_of_current_user()函数缺乏对资源所有权的验证机制。具体技术原理如下:
1. **漏洞函数位置**:漏洞代码位于binary-mlm-plan插件的includes/bmp-hook-functions.php文件的第833行附近的bmp_user_payout_detail_of_current_user()函数中。
2. **查询逻辑缺陷**:该函数在处理佣金支付详情查询请求时,直接从用户请求中获取payout-id参数,并使用该参数作为数据库查询条件(如WHERE id = $payout_id),而未将当前登录用户的ID作为额外的过滤条件(如AND user_id = $current_user_id)。
3. **权限校验缺失**:函数名称虽然包含current_user字样暗示应该进行用户身份验证,但实际上并未执行任何身份所有权检查,导致任何已认证用户都可以通过修改payout-id参数来查询任意支付记录的详情。
4. **利用方式**:攻击者首先需要拥有一个具有bmp_user角色的WordPress账户(通常是订阅者级别)。然后,攻击者访问包含[bmp-account-detail]短代码的页面,通过修改请求中的payout-id参数值(如从1递增到其他数值),即可遍历并获取系统中其他会员的佣金支付摘要信息。
5. **数据泄露范围**:泄露的信息包括其他会员的支付金额、支付时间、支付状态等敏感财务数据,虽然不涉及完整银行卡信息或密码,但已构成用户隐私泄露。