CVE-2025-9549CVE-2025-9549是Drupal Facets模块中存在的一个权限缺失(Missing Authorization)漏洞,由安全研究员[email protected]发现并报告。该漏洞允许未授权的攻击者通过强制浏览(Forceful Browsing)方式访问本应受限制的资源或功能。Drupal Facets是Drupal生态系统中广泛使用的搜索结果分面筛选模块,允许网站管理员为用户提供基于分类、标签等条件的搜索过滤功能。由于该模块在某些接口或路由上未正确实施访问控制检查,攻击者无需任何认证凭据即可通过网络直接访问受限内容或执行受限操作。该漏洞的CVSS 3.1评分为6.5分,属于中危级别,其攻击向量为网络(AV:N),攻击复杂度低(AC:L),无需特权(PR:N),无需用户交互(UI:N),对机密性和完整性产生低影响,但对可用性无影响。该漏洞影响Drupal Facets模块的所有早期版本,具体包括从0.0.0到2.0.10之前的所有2.x版本,以及从3.0.0到3.0.1之前的3.x版本。Drupal官方已发布安全公告SA-CONTRIB-2025-099,建议用户尽快升级到修复版本2.0.10或3.0.1以消除风险。
Drupal Facets模块的权限缺失漏洞(Forceful Browsing)的技术原理在于:该模块在处理特定路由或回调函数时,未对用户访问权限进行充分的验证和检查。在Drupal框架中,模块通常通过实现hook_permission()来定义权限,通过hook_menu()或路由文件(*.routing.yml)来注册路由,并通过访问检查器(Access Checker)来控制对特定路径的访问。然而,Facets模块在某些API端点或管理功能路径上缺少必要的访问控制机制,导致任何未经认证的用户都可以通过直接构造URL的方式访问这些受限功能。攻击者可以利用此漏洞通过网络发送特制的HTTP请求,绕过正常的权限验证流程,直接访问或操作受限的搜索分面配置、搜索结果数据等敏感信息。由于攻击无需认证且复杂度低,攻击者可以通过自动化脚本批量扫描和利用存在漏洞的Drupal站点。由于该漏洞属于强制浏览类漏洞,攻击者无需特殊的恶意载荷,只需了解目标站点的URL结构即可实施攻击。修复方案是在相关路由中添加适当的访问检查器,确保只有具有相应权限的用户才能访问受限功能。