WordPress 的 LiteSpeed Cache 插件中的一个严重缺陷可能允许未经身份验证的用户控制任意帐户。
LiteSpeed Cache 插件是一种流行的 WordPress 缓存插件,活跃安装量超过 500 万次。该插件通过服务器级缓存和各种优化功能提供站点加速。
LiteSpeed Cache 插件受到未经身份验证的帐户接管漏洞的影响,该漏洞被跟踪为 CVE-2024-44000(CVSS 评分:7.5),该漏洞可能允许任何访客访问已登录的用户,并可能将权限升级到管理员级别。攻击者可以利用此漏洞上传恶意插件。
Patchstack 研究人员解释说,该漏洞源于 HTTP 响应标头泄漏,该泄漏在登录尝试后在调试日志文件 () 中暴露了“Set-Cookie”标头。/wp-content/debug.log
未经身份验证的攻击者可以查看敏感信息,包括来自 HTTP 响应标头的用户 Cookie 数据。这可能使攻击者能够使用任何有效会话登录。只有当 WordPress 网站的调试功能处于启用状态并且默认情况下禁用此功能时,才能利用该漏洞。
Patchstack 发布的报告写道:“该漏洞利用了调试日志文件上的 HTTP 响应标头泄漏,该漏洞还会在用户执行登录请求后泄漏”Set-Cookie“标头。“主要易受攻击的代码存在于 ended
的函数上”
漏洞CVE-2024-44000影响6.4.1之前版本(含6.4.1)。此问题已在版本 6.5.0.1 中得到解决。
该插件背后的开发人员通过将日志文件移动到 LiteSpeed 插件文件夹 (“/wp-content/litespeed/debug/”) 中的专用文件夹、随机化文件名以及删除在文件中记录 cookie 的选项来修复该问题。
为了提高调试日志功能的安全性,研究人员还建议实施适当的规则来阻止直接访问日志文件。尽管 LiteSpeed 团队已经努力通过在补丁中应用此类规则来解决此问题,但它仍然不够。知道日志文件名称的用户仍然可以访问它,这表明当前规则需要进一步优化。.htaccess
专家还建议定期清除或删除旧文件中的内容,以避免未经授权访问文件中包含的先前泄露的 cookie 数据。debug.log
建议用户检查其安装中是否存在“/wp-content/debug.log”,如果已启用(或已经)启用调试功能,请采取措施清除它们。
此外,还建议设置 .htaccess 规则以拒绝对日志文件的直接访问,因为如果恶意行为者通过试错法知道新文件名,他们仍然可以直接访问新的日志文件。
“此漏洞凸显了确保执行调试日志过程的安全性、不应记录哪些数据以及如何管理调试日志文件的极端重要性。一般来说,我们强烈建议不要使用插件或主题将与身份验证相关的敏感数据记录到调试日志文件中。“该报告总结道。“我们还强烈建议插件和主题开发人员将他们的调试日志数据正确存储在安全的调试日志文件中,并使用适当随机的日志文件名和额外的 .htaccess 规则来阻止直接访问。”