首页 网络安全 正文
  • 本文约1145字,阅读需6分钟
  • 2
  • 0

Laravel Redis不安全反序列化CVE-2026-23524

摘要

栋科技漏洞库关注到 Laravel Reverb 在版本1.6.3及以下版本中存在的安全漏洞,现在已追踪为CVE-2026-23524,CVSS 3.X评分6.7。

Laravel Reverb是Laravel官方推出的首个原生WebSocket服务端,专为Laravel 应用打造,无缝集成 Laravel Echo 与 poadcast 系统。

一、基本情况

Laravel Reverb 能够让开发者无需依赖 Pusher、Ably 等第三方 WebSocket 服务,就能轻松快速实现高性能、可扩展的实时通信功能。

Laravel Reverb为Laravel应用程序提供实时WebSocket通信后端,基于PHP+Swoole/OpenSwoole开发(支持纯PHP的Socket 实现)。

Laravel Redis不安全反序列化CVE-2026-23524

Laravel Reverb 专为 Laravel 生态优化,API与Pusher完全兼容,原有基于Echo代码无需修改即可迁移,纯PHP模式适合开发/低并发。

栋科技漏洞库关注到 Laravel Reverb 在版本1.6.3及以下版本中存在的安全漏洞,现在已追踪为CVE-2026-23524,CVSS 3.X评分6.7。

二、漏洞分析

CVE-2026-23524漏洞是Laravel Reverb受影响版本中的安全漏洞,作为不安全反序列化漏洞,使得用户面临远程代码执行攻击的风险。

该漏洞源于在版本 1.6.3 及以下版本中,Reverb 直接将数据从Redis通道传递给PHP的unserialize()函数,而没有限制可以实例化的类。

该漏洞影响启用了水平扩展(REVERB_SCALING_ENABLED=true)且版本低于v1.7.0的Laravel Reverb。

由于Redis服务器通常在部署时未启用身份验证,由于未经身份验证即可部署,因此该漏洞的可利用性有所提高。

不过,仅当启用水平扩展(REVERB_SCALING_ENABLED=true)时,才会影响Laravel Reverb,该漏洞现在已在版本1.7.0得以修复。

在启用水平扩展功能后,Reverb服务器通过Redis PubSub进行通信。

Reverb之前将Redis通道中的数据直接传递给PHP的unserialize()函数,而没有限制可以实例化的类。

作为解决方法,您需要对Redis访问设置强密码,并确保服务只能通过专用网络或本地回环访问,

或者是设置REVERB_SCALING_ENABLED=false以完全绕过易受攻击的逻辑(如果环境只使用一个Reverb节点)。

如果您无法升级到v1.7.0,则应采取以下缓解措施:

Redis安全:访问Redis时需使用强密码,并确保该服务仅可通过专用网络或本地环回进行访问。

禁用缩放:如果您的环境仅使用一个混响节点,请将REVERB_SCALING_ENABLED设置为false,以完全绕过易受攻击的逻辑。

三、影响范围

Laravel Reverb <= 1.6.3

四、修复建议

Laravel Reverb >= 1.7.0

五、参考链接

管理员已设置登录后刷新可查看



扫描二维码,在手机上阅读
评论
更换验证码
友情链接