👇👇👇👇公众号内 无障碍无限制 阅读👇👇👇👇
发送关键字获取内容: 漏洞修复
👆👆👆👆公众号内无障碍无限制阅读👆👆👆👆👆👆
目录
说明
此文章主要记录工作中遇到的漏洞以及修复过程。
Redis 缓冲区溢出漏洞 (CVE-2024-31449)
漏洞信息
经过身份验证的用户可能会使用特制的 Lua脚本来触发位库中的堆栈缓冲区溢出,这可能会导致远程代码执行。所有带有 Lua 脚本的 Redis 版本都存在该问题。
影响范围
- 2.6 ≤ Redis< 6.2.16
- 7.0.0 ≤ Redis< 7.2.6
- 7.4.0 ≤ Redis < 7.4.1
解决办法
建议受影响客户将redis更新到6.2.16、7.2.6或7.4.1及以上版本。
新版本下载地址:https://redis.io/downloads/
nacos Jraft 文件读写漏洞 (AVD-2024-1743586)
漏洞信息
Nacos 提供了一组简单易用的特性集,帮助您快速实现动态服务发现、服务配置、服务元数据及流量管理。2024年8月,官方披露 Nacos Jraft 文件读写漏洞。原因是部分Jraft(端口默认值7848)请求磁盘操作时未限制文件路径导致,官方已发布 2.4.1和1.4.8 版本修复该漏洞。
影响范围
- 小于2.4.1
- 小于1.4.8
解决办法
1、升级至最新版本(推荐)
2、利用安全组设置 Jraft 仅对可信地址开放.
修复步骤
本次升级从2.3.2 升级到 2.4.1
注意:
升级步骤和本文中下方的nacos 漏洞 (CVE-2021-29441) 升级步骤一致。
按照nacos 漏洞 (CVE-2021-29441) 修复步骤操作后启动,启动过程中查看启动日志,若启动日志中出现以下的异常。则需要修改启动脚本文件bin/startup.sh
修改启动脚本startup.sh。
在脚本中加入以下这两行配置。重新运行启动脚本即可。
# 新增这两行配置
# 根据上图,出现 opens java.lang 的异常,配置处理
JAVA_OPT="${JAVA_OPT} --add-opens java.base/java.lang=ALL-UNNAMED"
# 再次运行出现 opens java.util.concurrent.atomic 的异常,配置处理
JAVA_OPT="${JAVA_OPT} --add-opens java.base/java.util.concurrent.atomic=ALL-UNNAMED"
# 依次类推。出现什么异常就配置什么, 我这只有这两个异常,配置上去就行。
# 注意: 上面两行的配置一定要放在这行配置之上。
JAVA_OPT="${JAVA_OPT} -jar ${BASE_DIR}/target/${SERVER}.jar"
如下图:
重启测试即可
nacos 漏洞 (CVE-2021-29441)
漏洞信息
Nacos 提供了一组简单易用的特性集,帮助您快速实现动态服务发现、服务配置、服务元数据及流量管理。CVE-2021-29441中,攻击者通过添加Nacos-Server的User-Agent头部将可绕过认证,从而进行API操作。
该漏洞EXP已公开传播,漏洞利用成本极低,危险等级高,建议立即修复。
影响范围
- nacos版本号 小于等于 2.0.0-ALPHA.1
- nacos版本号 小于 1.4.1
解决办法
更新至最新版,完成漏洞的修复。
修复步骤
注意:此处步骤为原本已经安装了受影响版本的nacos。
- 下载最新版本,此处下载的版本包为:nacos-server-2.3.2.zip ,下载地址:https://nacos.io/download/release-history/
- 将压缩包上传到服务器
- 备份原来的nacos安装目录
- 解压上传的nacos-server-2.3.2.zip,解压后得到nacos 文件夹
# 解压
unzip nacos-server-2.3.2.zip
-
将原来的的nacos安装目录中的,bin 、 conf、target 目录删除,将解压后的nacos 中的bin 、 conf、target 目录复制到原来的nacos安装目录下。
-
再次根据自己的实际情况修改conf/application.properties配置。此处省略掉nacos连接数据库配置、数据库类型等配置,这些配置根据自己旧版本的配置配置即可。最主要的是在配置文件中修改以下相关配置。
- 开启nacos鉴权功能 (此配置必须修改)
原本的nacos鉴权功能默认是关闭状态,如下:
nacos.core.auth.enabled=false
此处配置需要打开,改成tue。开启鉴权
nacos.core.auth.enabled
- 开启nacos鉴权功能 (此配置必须修改)