漏洞描述
Redis 的 HyperLogLog(HLL)相关命令存在一个越界写入漏洞。经过身份验证的攻击者可通过构造特定的恶意字符串,在 HyperLogLog 操作中触发堆栈或堆内存的越界写入。由于内存破坏可能被进一步利用,此漏洞最终可能导致远程代码执行(RCE)。
漏洞危害
越界访问漏洞可能导致以下危害:
- 敏感信息泄露:攻击者可能利用越界访问读取未授权的内存区域,获取敏感数据如用户凭证、加密密钥等。
- 程序崩溃:越界访问可能导致程序异常终止,影响服务的可用性。
- 远程代码执行:攻击者可能通过精心构造的输入触发越界,从而控制程序执行流,执行任意代码。
- 拒绝服务攻击:恶意的越界访问可能导致服务崩溃,使正常用户无法使用服务。
修复方法
升级修复方案:
升级产品至8.0.3、7.2.10、7.4.5、6.2.19 或之后的版本,下载地址:https://github.com/redis/redis/releases
临时缓解措施:
使用 Redis ACL 限制 HyperLogLog 命令:通过配置访问控制列表(ACL),禁止用户执行 PFADD、PFCOUNT、PFMERGE 等 HLL 相关命令。