CVE-2026-42610Grav CMS在2.0.0-beta.2之前的版本中存在安全漏洞。低权限用户(如仅具有页面更新权限的内容编辑器)可以利用`grav['accounts']`服务绕过现有的Twig沙箱限制。攻击者能够通过编程方式加载管理员用户对象,进而窃取敏感数据,包括Bcrypt密码哈希值和安全盐值。该漏洞在2.0.0-beta.2版本中已得到修复。
该漏洞源于Grav CMS中Twig模板引擎沙箱的实现缺陷。在受影响的版本中,系统试图通过沙箱限制低权限用户(如内容编辑器)可访问的PHP对象和方法,以防止其执行敏感操作。然而,沙箱并未完全阻止对核心服务`grav['accounts']`的访问。攻击者只需拥有`pages.update`权限,即可在Twig模板中调用此服务。利用该服务,攻击者可以实例化并加载管理员账户对象,从而访问受保护的属性。由于该对象包含了管理员的凭据信息(如经过Bcrypt哈希的密码)和系统的安全盐值,攻击者可提取这些数据用于后续的离线破解或其他攻击,导致敏感信息泄露。