Redis 爆高危漏洞,请速度修复。。

大家好,我是R哥。

今天一早收到了腾讯云给我的【主机安全 】漏洞通知:

Redis 爆高危漏洞,请速度修复。。

好家伙,大名鼎鼎的 Redis 爆高危漏洞了,R哥的题库「Java面试库」也用到了 Redis 来缓存面试题内容,所以这一下子就引起了我的警惕,赶紧看看什么鬼。

漏洞描述

下面是漏洞描述和修复说明:

https://github.com/redis/redis/security/advisories/GHSA-whxg-wx83-85p5

Redis 爆高危漏洞,请速度修复。。

这次的漏洞是因为 Lua 库引起的,用户可能会使用特制的 Lua 脚本来触发堆栈缓冲区溢出,这可能会导致「远程代码执行 」漏洞。

也就是说,所有带有 Lua 脚本的 Redis 版本(> = 2.8.18)都存在该漏洞,赶紧使用下面命令查看下你的 Redis 版本号:

$ redis-cli --version
redis-cli 7.2.5

我使用的是 Redis 7.2.5,也是受影响的版本。

Lua 扫盲:

Lua 是一种轻量级的脚本语言,Redis 中内置了 Lua 功能,可以直接运行 Lua 脚本。因为 Redis 的基本操作都是单个命令,但在某些场景下,可能需要多个操作组合成事务或执行复杂的逻辑,这时候 Lua 脚本就派上用场了,使用 Lua 脚本可以大大减少网络开锁。

说到 Lua 就不得不提 OpenResty,它是一个基于 Nginx 的高性能 Web 组件,其支持用 Lua 编写复杂逻辑,并提了许多精心编写的 Lua 模块,这就是它最大的亮点。

解决方案

升级最新安全版本

Redis 官方发布了 3 个漏洞补丁及修复版本:6.2.16, 7.2.6, 7.4.1 ,请评估业务是否受影响后,再酌情升级至安全版本,如果是 5.x 及以下的版本就不受支持了。

版本升级前,建议大家做好数据备份操作,云服务升级版本前最好先制作镜像/快照 ,避免升级不当导致数据丢失情况。

临时解决方案

1、开放指定 IP 地址

如果使用的是云服务,可以使用云上的安全组对 Redis 端口(默认:6379 )设置只对指定的 IP 地址开放,如示例所示:

Redis 爆高危漏洞,请速度修复。。

注意,来源这一项不要再勾选全部 IP 地址。

2、设置密码访问

强制对 Redis 实例的所有访问使用凭据,这个可以通过配置 Redis 的 requirepass 参数来设置访问密码,修改 Redis.conf 配置文件:

```
requirepass XXX
```

配置密码后,就会强制所有访问 Redis 的客户端使用密码,相信现在没人还在使用 Redis 裸奔吧?

3、设置用户权限

设置用户权限,仅允许受信任的身份运行 Lua 脚本或任何其他潜在危险的命令。

在 Redis 中,可以通过 ACL(访问控制列表) 功能设置用户权限,从而限制特定用户只能运行受信任的命令,如:禁止运行 Lua 脚本或其他潜在危险的命令

注意,ACL 功能在 Redis 6.0+ 版本中才支持,如果版本较低,请先升级 Redis。


最后,赶紧检查 Redis 版本并修复吧,确保系统安全稳定运行。

版权声明: 本文系公众号 "Java技术栈" 原创,转载、引用本文内容请注明出处,抄袭、洗稿一律投诉侵权,后果自负,并保留追究其法律责任的权利。

更多文章推荐:

1.Spring Boot 3.x 教程,太全了!

2.2,000+ 道 Java面试题及答案整理(2024最新版)

3.免费获取 IDEA 激活码的 7 种方式(2024最新版)

觉得不错,别忘了随手点赞+转发哦!

文章整理自互联网,只做测试使用。发布者:Lomu,转转请注明出处:https://www.it1024doc.com/5398.html

(0)
LomuLomu
上一篇 2025 年 1 月 6 日 下午2:43
下一篇 2025 年 1 月 6 日 下午3:44

相关推荐

  • FreeSwitch与Java通信ESL

    Java ESL 是一个用于与 FreeSWITCH 进行交互的 Java 开发库,它基于 ESL(Event Socket Library)协议,通过与 FreeSWITCH 的 ESL 服务器建立连接,实现了底层的事件通知和控制。 本文将介绍如何使用 官方提供的Java ESL库实现与FreeSwitch的沟通。 第一:准备工作 在开始使用 Java E…

    未分类 2025 年 1 月 17 日
    37200
  • 比想象中更复杂一点的MySQL Slow Query Log

    1. 问题概述 在分析 Slow Query Log 时,记录下的SQL语句,明明会对一张表执行全表扫描,可为什么慢日志中的 Rows_sent 、Rows_examined 和表的真实记录数也是不一样,甚至相差N多倍。还有一个细节就是上述的SQL语句,执行多次,在慢日志中记录下多条记录,记录之间Rows_sent 、Rows_examined也差别明显。 …

    未分类 2025 年 1 月 14 日
    45600
  • 深入掌握Map的这8个操作方法,让代码更简洁优雅

    # Map接口及其子类的高效方法应用 在编程世界中,`Map` 接口及其子类如 `HashMap` 和 `ConcurrentHashMap` 是我们频繁使用的集合类型。熟悉 `Map` 接口提供的方法,意味着你已经掌握了其子类中的方法,无论它们是否为并发集合。 自 JDK 8 以来,`Map` 接口引入了一些创新的方法,这些方法极大地提升了数据操作的便捷性…

    未分类 2024 年 12 月 24 日
    34200
  • 深入解析ThreadLocal机制及其在Java多线程环境中的上下文管理实践

    目录导航第一部分:ThreadLocal核心概念解析(1)ThreadLocal工作机制剖析(2)弱引用key在GC后的状态探讨(3)内存泄漏隐患与官方解决方案(4)关键源代码解读set()方法实现原理get()方法执行流程remove()方法运作机制(5)实际应用示例第二部分:构建基于ThreadLocal的上下文控制器(1)ContextManager类…

    未分类 2025 年 5 月 13 日
    10900
  • 深入解析Java Optional类的应用与实践

    文章大纲 开篇引言 第一部分:Optional类概述 第二部分:Optional核心方法详解 1. 值检测方法isPresent与isEmpty 2. 对象创建方法empty/of/ofNullable 3. 值获取与默认值处理方法 4. 条件执行与过滤方法 5. 值转换与扁平化处理 6. 流式操作支持 第三部分:Optional使用禁忌 核心要点总结 开篇…

    未分类 2025 年 5 月 15 日
    10000

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

联系我们

400-800-8888

在线咨询: QQ交谈

邮件:admin@example.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信