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

如何修复Debian11容器中libwebp6的CVE-2023-4863漏洞?

修复Debian 11容器中libwebp6的CVE-2023-4863漏洞方案

问题原因

libwebp6是系统依赖树中的间接依赖包(可能被nodejs或其他已安装库引用),直接执行apt-get remove libwebp6会触发依赖冲突导致失败。Debian 11的安全源已经推出了修复该CVE的libwebp6更新版本(0.6.1-2.1+deb11u2),只需更新系统包即可完成修复。

优化后的Dockerfile

# See https://aka.ms/containerfastmode to understand how Visual Studio uses this Dockerfile to build your images for faster debugging.

FROM mcr.microsoft.com/dotnet/aspnet:6.0 AS base
WORKDIR /app
EXPOSE 80
EXPOSE 443
# 合并APT命令,更新系统包并安装依赖,同时清理缓存减小镜像体积
RUN apt-get update && \
    apt-get upgrade -y && \
    apt-get install -y --no-install-recommends curl libpng-dev libjpeg-dev libxi6 build-essential libgl1-mesa-glx && \
    curl -sL https://deb.nodesource.com/setup_lts.x | bash - && \
    apt-get install -y --no-install-recommends nodejs && \
    apt-get autoremove -y && \
    apt-get clean && \
    rm -rf /var/lib/apt/lists/*

FROM mcr.microsoft.com/dotnet/sdk:6.0 AS build
# 同样更新系统包并合并命令,避免重复冗余
RUN apt-get update && \
    apt-get upgrade -y && \
    apt-get install -y --no-install-recommends curl libpng-dev libjpeg-dev libxi6 build-essential libgl1-mesa-glx && \
    curl -sL https://deb.nodesource.com/setup_lts.x | bash - && \
    apt-get install -y --no-install-recommends nodejs && \
    apt-get autoremove -y && \
    apt-get clean && \
    rm -rf /var/lib/apt/lists/*
WORKDIR /src
COPY ["ProjectSPA1/ProjectSPA1.csproj", "ProjectSPA1/"]
RUN dotnet restore "ProjectSPA1/ProjectSPA1.csproj"
COPY . .
WORKDIR "/src/ProjectSPA1"
RUN dotnet build "ProjectSPA1.csproj" -c Release -o /app/build

FROM build AS publish
RUN dotnet publish "ProjectSPA1.csproj" -c Release -o /app/publish

FROM base AS final
WORKDIR /app
COPY --from=publish /app/publish .
ENTRYPOINT ["dotnet", "ProjectSPA1.dll"]

关键改动说明

  • 加入apt-get upgrade -y:强制更新所有已安装包,包括libwebp6到修复漏洞的版本。
  • 合并多个RUN命令为单个:减少镜像分层,提升构建效率和镜像整洁度。
  • 使用--no-install-recommends:避免安装不必要的依赖包,减小镜像体积。
  • 添加apt-get autoremove -y和apt-get clean:清理无用包和APT缓存,进一步压缩镜像大小。

验证修复

构建新镜像后,可通过以下命令验证libwebp6版本:

docker run --rm <your-image-name> dpkg -l libwebp6

输出中版本号应为0.6.1-2.1+deb11u2,确认漏洞已修复。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.09 10:43:20