AWS EKS集群CVE-2023-39325漏洞修复遇阻求助
解决EKS节点CVE-2023-39325漏洞的正确方案
核心问题说明
你遇到的问题根源在于:Wiz检测到的漏洞存在于EKS AMI预打包的ECR凭证提供器二进制文件中,该组件是编译好的可执行文件,并非通过Go模块管理的源码项目,所以手动用go get/go install更新库的方式完全无效。
正确修复步骤
优先方案:升级EKS节点到官方 patched AMI
Amazon Linux 2的EKS官方AMI会定期更新修复这类依赖库漏洞,直接替换节点是最安全可靠的方式:- 使用
eksctl更新节点组,命令示例:eksctl update nodegroup --cluster <你的集群名> --name <节点组名> --launch-template-version auto - 或者通过AWS控制台,在EKS集群的节点组页面选择“更新节点组”,选择最新的EKS AMI版本。
- 滚动更新节点,确保业务无中断。
- 使用
临时修复:更新节点上的凭证提供器组件
如果无法立即升级节点组,可以尝试通过yum更新相关组件包:- 执行
sudo yum update eks-image-credential-provider,安装AWS发布的补丁版本。 - 重启kubelet生效:
sudo systemctl restart kubelet
- 执行
验证修复结果
更新完成后,通过以下命令检查二进制文件中的库版本是否符合要求(>=0.17.0):strings /etc/eks/image-credential-provider/ecr-credential-provider | grep golang.org/x/net
关键提醒
- 不要手动修改EKS节点上的核心组件文件(如kubelet依赖的二进制),这会破坏组件的完整性,导致集群稳定性问题。
- 你之前执行的
go install命令存在语法错误(golang.org./x/net多了一个点),但即使修正语法,也无法解决问题——因为该组件不是Go模块项目,没有go.mod文件。
内容的提问来源于stack exchange,提问作者azamat
相关产品推荐
相关产品推荐

