问题
重新编译项目时,遇到编辑器报错‘AutomationUtils.Automation.csproj: Error NU1902 : Warning As Error: Package ‘Magick.NET-Q16-HDRI-AnyCPU’ 14.9.1 has a known moderate severity vulnerability, https://github.com/advisories/GHSA-26qp-ffjh-2x4v’。
原因
.NET构建工具依赖的Magick.NET 14.9.1版本存在“已知的中等严重性错误”,NuGet发出 NU1902警告。TreatWarningsAsErrors将警告视为错误。 ImageMagick 的图像去斑操作:在 32 位构建中可能发生整数溢出和堆缓冲区越界。Magick.NET-Q16-HDRI-AnyCPU 的 14.12.0 以下版本受影响,14.12.0 修复了这一项漏洞。
解决方法
更新Magick.NET版本!将UnrealEngine源码仓库中,依赖Magick.NET的.csproj找出来,将Magick.NET版本号改为14.12.0。 将
<PackageReference Include="Magick.NET-Q16-HDRI-AnyCPU" Version="14.9.1" />
改为
<PackageReference Include="Magick.NET-Q16-HDRI-AnyCPU" Version="14.12.0" />
然后重新编译项目。
快速查找引用
可以在Unreal Engine源码根目录,执行以下PowerShell命令:
rg -n "Magick\.NET" Engine `
-g "*.csproj" `
-g "*.props" `
-g "*.targets" `
-g "packages.config" `
-g "!**/obj/**" `
-g "!**/bin/**"
查看结果

Discussion
留言讨论
发表留言时,评论服务会记录必要的 IP 与 User-Agent 信息,用于安全审核和防止滥用。