Hulpprogrammamanifesten in hoofdmap
.NET zoekt niet langer naar manifestbestanden van lokale hulpprogramma's in de hoofdmap in Windows, tenzij deze worden overschreven via de DOTNET_TOOLS_ALLOW_MANIFEST_IN_ROOT
omgevingsvariabele. Deze wijziging heeft geen invloed op Linux of macOS.
Voorheen hebben lokale .NET SDK-hulpprogramma's de hoofdmap op alle platforms gecontroleerd bij het zoeken naar een hulpprogrammamanifest. De zoekopdracht is voortgezet vanuit de huidige map in de mapstructuur naar de hoofdmap totdat er een manifest is gevonden. Op elk niveau zoekt .NET naar het hulpprogrammamanifest, met de naam dotnet-tools.json, in een .config-submap . Als op een Windows-systeem geen ander hulpprogrammamanifest is gevonden, heeft de SDK uiteindelijk gezocht naar een hulpprogrammamanifest in C:\.config\dotnet-tools.json.
.NET zoekt niet meer in de hoofdmap van de huidige mapstructuur in Windows, tenzij deze wordt overschreven via de DOTNET_TOOLS_ALLOW_MANIFEST_IN_ROOT
omgevingsvariabele. DOTNET_TOOLS_ALLOW_MANIFEST_IN_ROOT
is standaard ingesteld false
op.
- .NET SDK 7.0.3xx
- .NET SDK 7.0.1xx
- .NET SDK 6.0.4xx
- .NET SDK 6.0.3xx
- .NET SDK 6.0.1xx
- .NET SDK 3.1.4xx
Deze wijziging is een gedragswijziging.
Deze wijziging is aangebracht om een beveiligingsprobleem aan te pakken. Omdat alle gebruikers bestanden en mappen kunnen maken in de map C:\ in Windows, kunnen aanvallers met beperkte bevoegdheden het bestand C:\.config\dotnet-tools.json kapen. Wanneer een beheerder een dotnet
hulpprogrammaopdracht uitvoert, kan het hulpprogramma mogelijk schadelijke configuratiegegevens lezen uit het bestand en schadelijke hulpprogramma's downloaden en uitvoeren.
Als u het nieuwe gedrag wilt uitschakelen, stelt u de DOTNET_TOOLS_ALLOW_MANIFEST_IN_ROOT
omgevingsvariabele in true
op of 1
.
Feedback over .NET
.NET is een opensourceproject. Selecteer een koppeling om feedback te geven: