У меня есть решение, состоящее из проектов, нацеленных на .NET Standard 2.0 и .NET Core 2.1.304. При создании этого решения используются старые уязвимые версии System.ServiceModel.Primitives
и System.Private.ServiceModel
( CVE-2018-0786 ).
Возможно, мне не хватает чего-то очевидного в конфигурации всего решения или в одном из проектов, который вызывает использование старых версий, но все, что я знаю для проверки, выглядит правильно:
Global.json
{
"sdk": {
"version": "2.1.302"
}
}
Пример .NET Core Project File
<PropertyGroup>
<TargetFramework>netcoreapp2.1</TargetFramework>
<Configurations>Debug;Dev;Qual;Release</Configurations>
<LangVersion>7.1</LangVersion>
</PropertyGroup>
Пример стандартного файла проекта .NET
<PropertyGroup>
<TargetFramework>netstandard2.0</TargetFramework>
<Configurations>Debug;Dev;Qual;Release</Configurations>
</PropertyGroup>
Я убедился, что все пакеты NuGet обновлены. Тем не менее, возможно ли, что одна из моих ссылок на пакет NuGet вызывает откат к старым версиям? Какие еще конфигурации я должен проверять?
Интересно, что когда я собираю другое, но схоже сконфигурированное решение (из того, что я могу сказать), это решение создает сборку с использованием более новых не уязвимых версий.