Redis 远程代码执行漏洞CVE-2021-32761被发现!

Redis 是一个内存型数据库,它长期存在于磁盘上。从版本 2.2 开始,在版本 5.0.13、6.0.15 和 6.2.5 之前存在一个涉及越界读取和整数溢出的漏洞。在 32 位操作系统上,Redis *BIT* 命令容易受到整数溢出的影响,可能被利用来破坏堆、泄漏任意堆内容或触发远程代码执行。

该漏洞涉及将默认的 proto-max-bulk-len 配置参数更改为一个非常大的值并构建特制的命令位命令。不过,此问题仅影响 32 位平台上的 Redis。

Redis 5.0.3m、6.0.15 和 6.2.5 包含针对此问题的补丁。在不修补 redis-server 的情况下缓解此问题的一个解决方法是防止用户修改 proto-max-bulk-len 配置参数。

影响版本

  • Redis >2.2 且 < 5.0.13

  • Redis >2.2 且 < 6.0.15

  • Redis >2.2 且 < 6.2.5

安全版本

  • Redis 5.0.13

  • Redis 6.0.15

  • Redis 6.2.5

编者建议:

  1. 尽量将Redis更新到最新版本。
  2. 可以使用64位Redis。
  3. 如果暂时不能更新,需要防止用户修改 proto-max-bulk-len 配置参数。
  4. 禁止未授权用户调用BIT命令以及CONFIG SET指令