在 Livewire 中发现了一个新发现的漏洞 CVE-2024-47823,Livewire 是 Laravel 的一个流行全栈框架,用于在不离开 PHP 的情况下构建动态 UI 组件。该安全漏洞的 CVSS 得分为 7.7,允许攻击者利用文件上传,在受影响的系统上实现远程代码执行 (RCE)。
Livewire 与 Laravel 无缝集成,简化了动态用户界面的开发。然而,在 v3.5.2 之前的版本中,Livewire 处理文件上传的方式存在重大缺陷。
在这些存在漏洞的版本中,上传文件的文件扩展名是根据其 MIME 类型猜测的,而不是根据其实际文件扩展名进行验证。这意味着攻击者可以上传具有有效 MIME 类型(如 image/png)的文件,但使用 .php 等危险的文件扩展名。如果系统的网络服务器被配置为执行 PHP 文件,这个漏洞就为远程代码执行打开了大门。
报告该漏洞的安全研究员杰里米-安热尔(Jeremy Angele)描述了攻击者如何在特定条件下利用 Livewire 漏洞:
在概念验证(PoC)场景中,Angele演示了攻击者如何上传名为shell.php、MIME类型为image/png的文件。上传文件后,攻击者可以通过浏览器访问该文件来触发文件的执行,从而获得对服务器的远程访问权限。
Livewire 3.5.2 版修补了 CVE-2024-47823 漏洞。该补丁包括在上传过程中对文件扩展名进行更严格的验证,确保阻止 MIME 类型和扩展名不匹配的文件。
为保护您的系统,立即更新到最新版本的 Livewire 至关重要。此外,还建议开发人员配置网络服务器,防止在公共目录中执行 PHP,并在上传文件时彻底验证 MIME 类型和文件扩展名。
发表评论
您还未登录,请先登录。
登录