You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

AWS Lambda自定义Node.js镜像Go组件CVE漏洞修复咨询

修复思路
  • 先定位漏洞根源:
    用dpkg -l | grep golang检查Debian系统自带的Go相关包版本,确认是不是系统预装的golang包导致的1.20.5漏洞;再用go list -m all查看当前镜像中所有Go模块依赖,找出golang.org/x/net 0.15.0的来源(是系统工具还是项目依赖)。

  • 系统层面更新Go包:
    执行apt update && apt upgrade -y golang-*,Debian Bookworm的官方源里大概率有更新后的golang包,能覆盖旧的1.20.5版本。更新后记得清理缓存:apt clean && rm -rf /var/lib/apt/lists/*,避免旧包残留影响扫描结果。

  • 处理项目依赖中的Go模块:
    如果是Node.js项目的某个native依赖间接引入了旧版golang.org/x/net,用npm ls定位到具体依赖包,直接升级该包到最新稳定版;如果找不到对应升级包,可在package.json中添加overrides(npm)或resolutions(yarn/pnpm)配置,强制将golang.org/x/net的版本锁定到0.17.0及以上。

  • 替换更安全的基础镜像:
    放弃直接使用node:20-bookworm,改用AWS官方提供的Lambda Node.js镜像(如public.ecr.aws/lambda/nodejs:20),这类镜像会定期修复漏洞,适配Lambda运行环境,能减少手动处理漏洞的成本。

  • 手动替换特定Go模块:
    若上述方法无效,可手动安装指定版本的golang.org/x/net:

    go get golang.org/x/net@v0.17.0
    

    然后将安装后的模块文件复制到系统默认的Go模块缓存路径(通常是/go/pkg/mod/golang.org/x/net@*),覆盖旧版本文件。

内容的提问来源于stack exchange,提问作者user14013917

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.05 17:02:18