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

.NET Framework 4.7.2升级RestSharp后高风险CVE问题未解决求助

解决.NET Framework 4.7.2下RestSharp升级后CVE-2021-24112/CVE-2021-26701的问题

问题核心澄清

扫描结果里标注的System.Text.Encoding是误报,这两个CVE实际影响的是System.Text.Encodings.Web包,部分扫描工具会出现包名识别混淆的情况。

具体解决步骤

  1. 确认并安装正确的安全版本

    • 6.0.8版本的System.Text.Encodings.Web在官方NuGet源是存在的,先检查你的NuGet源配置是否包含官方源。
    • 直接通过命令行安装指定版本:
      Install-Package System.Text.Encodings.Web -Version 6.0.8
      
    • 若使用PackageReference格式,可在项目的.csproj文件中直接添加强制版本声明:
      <PackageReference Include="System.Text.Encodings.Web" Version="6.0.8">
        <PrivateAssets>all</PrivateAssets>
        <IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
      </PackageReference>
      
  2. 强制覆盖间接依赖
    RestSharp 108.0.2可能间接依赖旧版本的System.Text.Encodings.Web,需要确保项目直接引用的版本覆盖间接依赖:

    • 执行Update-Package -reinstall重新安装所有包,刷新依赖链。
    • 使用dotnet list package --include-transitive查看依赖树,确认所有System.Text.Encodings.Web的引用都已更新至6.0.8或更高版本。
  3. 适配.NET Framework 4.7.2的备选方案

    • 若安装6.0.8版本遇到兼容性问题,可尝试升级至支持.NET Framework 4.7.2的更高版本(如7.0.0、8.0.0),这些版本已包含CVE修复,且兼容4.7.2框架。
  4. 处理扫描工具误报

    • 若已确认安装了安全版本但扫描结果仍显示高危,可手动在扫描工具中将这两个CVE标记为已修复,或向工具提供商反馈包名识别错误的问题。

验证修复

清理项目的bin和obj文件夹,重新构建后再次运行依赖扫描,确认CVE的严重程度已降低或消失。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.15 14:30:42