Samenvatting
De beveiligingsupdate die is beschreven in Microsoft-beveiligingsbulletin MS10-070 brengt wijzigingen aan in het standaardcoderingsmechanisme in ASP.NET, zodat er naast coderingsbewerkingen tevens validatiebewerkingen (ondertekening) worden uitgevoerd. In dit artikel zijn de configuratieopties beschreven voor het terugzetten van het verouderde gedrag voor codering in ASP.NET.
Ga voor meer informatie over deze beveiligingsupdate naar de volgende website van Microsoft:http://www.microsoft.com/netherlands/technet/security/bulletin/ms10-070.mspx
Meer informatie
ASP.NET maakt het gebruikers mogelijk om optioneel gegevens te coderen of valideren door de hiertoe vereiste configuratiebewerkingen uit te voeren in de sectie MachineKey. De beveiligingsupdate die is beschreven in Microsoft-beveiligingsbulletin MS10-070 wijzigt het standaardcoderingsgedrag in ASP.NET, zodat er naast coderingsbewerkingen tevens validatiebewerkingen worden uitgevoerd, zelfs wanneer er uitsluitend om codering wordt verzocht.
Nadat u de beveiligingsupdate die is beschreven in Microsoft-beveiligingsbulletin MS10-070 hebt geïnstalleerd, worden de volgende bewerkingen uitgevoerd wanneer er codering voor ASP.NET is ingesteld:-
Tijdens het coderen van gegevens wordt er voor de gecodeerde gegevens een HMAC-handtekening gegenereerd die er volgens aan wordt toegevoegd.
-
Tijdens het decoderen van gegevens wordt de HMAC-handtekening gevalideerd voordat de gegevens worden gedecodeerd.
De volgende sleutels in de ASP.NET-toepassingsinstellingen (appSettings) bepalen of er naast codering tevens in ondertekening moet worden voorzien.
Sleutel |
Type |
Standaardwaarde |
Ondersteunde .NET-versies |
---|---|---|---|
aspnet:UseLegacyEncryption |
Boolean) |
False |
Microsoft .NET Framework 2.0 Service Pack 1 Microsoft .NET Framework 2.0 Service Pack 2 Microsoft .NET Framework 3.5 Microsoft .NET Framework 3.5 Service Pack 1 Microsoft .NET Framework 4.0 |
aspnet:UseLegacyMachineKeyEncryption |
Boolean) |
False |
Microsoft .NET Framework 4.0 |
aspnet:ScriptResourceAllowNonJsFiles |
Boolean) |
False |
Microsoft .NET Framework 3.5 Service Pack 1 Microsoft .NET Framework 4.0 |
Beschrijving van aspnet:UseLegacyEncryption appSetting
Deze toepassingsinstelling specificeert of er naast codering zelfs validatie met behulp van een HMAC-sleutel wordt uitgevoerd als er in de sectie MachineKey van ASP.NET-configuratie geen HMAC-handtekeningvalidatie is geconfigureerd.
aspnet:UseLegacyEncryption |
Beschrijving |
---|---|
False (standaardinstelling) |
Deze instelling bepaalt dat ASP.NET tevens HMAC-handtekeningvalidatie moet uitvoeren wanneer ASP.NET is geconfigureerd voor het gebruik van codering. Deze validatie treedt ook op wanneer er in MachineKey niet is geconfigureerd dat er met een HMAC-sleutel moet worden ondertekend. |
True |
Deze instelling bepaalt dat ASP.NET geen HMAC-handtekeningvalidatie moet uitvoeren wanneer ASP.NET is geconfigureerd voor het gebruik van codering en dat er geen HMAC-ondertekening plaatsheeft via validatie in MachineKey. Opmerking Deze instelling maakt het een schadelijke client mogelijk om gecodeerde gegevens te decoderen, te vervalsen of anderszins te wijzigen. |
Als u deze instelling wilt configureren, moet u de volgende gegevens aan het bestand web.config voor de computer of toepassing toevoegen:
<configuration> ... <appSettings> ... <add key="aspnet:UseLegacyEncryption" value="false" /> </appSettings> </configuration>
Beschrijving van aspnet:UseLegacyMachineKeyEncryption appSetting
Deze toepassingsinstelling bepaalt of er bij codering via de klasse System.Web.Security.MachineKey tevens validatie met een HMAC-sleutel wordt uitgevoerd wanneer er via het verstrekte argument MachineKeyProtection niet is opgegeven dat er validatie moet worden uitgevoerd.
aspnet:UseLegacyMachineKeyEncryption |
Beschrijving |
---|---|
False (standaardinstelling) |
Deze instelling bepaalt dat ASP.NET tevens HMAC-handtekeningvalidatie via de klasse MachineKey moet uitvoeren wanneer ASP.NET is geconfigureerd voor het gebruik van codering. Deze validatie heeft ook plaats als er via het verstrekte argument MachineKeyProtection niet is opgegeven dat er validatie moet worden uitgevoerd. |
True |
Deze instelling bepaalt dat ASP.NET geen HMAC-handtekeningvalidatie via de klasse MachineKey moet uitvoeren wanneer dit is geconfigureerd voor het gebruik van codering en wanneer er via het verstrekte argument MachineKeyProtection niet in HMAC-ondertekening wordt voorzien. Opmerking Deze instelling maakt het een schadelijke client mogelijk om gecodeerde gegevens te decoderen, te vervalsen of anderszins te wijzigen. |
Als u deze instelling wilt configureren, moet u de volgende gegevens aan het bestand web.config voor de computer of toepassing toevoegen:
<configuration> ... <appSettings> ... <add key="aspnet:UseLegacyMachineKeyEncryption" value="false" /> </appSettings> </configuration>
Beschrijving van aspnet:ScriptResourceAllowNonJsFiles appSetting
Deze toepassingsinstelling bepaalt of de ScriptResource.axd-handler in ASP.NET niet-JavaScript-bestanden (.js extensie) bedient. ScriptResource.axd is een ASP.NET-handler die JavaScript-aan AJAX-componenten in een ASP.NET-webpagina retourneert.
aspnet:ScriptResourceAllowNonJsFiles |
Beschrijving |
---|---|
False (standaardinstelling) |
Deze instelling bepaalt dat ASP.NET via de ScriptResource.axd-handler uitsluitend statische bestanden met de extensie .js (JavaScript) bedient. |
True |
Deze instelling bepaalt dat ASP.NET elk statisch bestand waartoe de ASP.NET-toepassing toegang heeft, via de ScriptResource.axd-handler bedient. Opmerking Deze instelling maakt het mogelijk dat elk bestand binnen de ASP.NET-toepassing via de handler wordt bediend. Als een dergelijk bestand gevoelige of vertrouwelijke gegevens bevat, kan deze instelling mogelijk leiden tot het lekken van gevoelige informatie naar een client. |
Als u deze instelling wilt configureren, moet u de volgende gegevens aan het bestand web.config voor de computer of toepassing toevoegen:
<configuration> ... <appSettings> ... <add key="aspnet:ScriptResourceAllowNonJsFiles" value="false" /> </appSettings> </configuration>
Verwijzingen
Ga voor meer informatie over de sectie MachineKey naar de volgende Microsoft-website:
http://msdn.microsoft.com/nl-nl/library/w8h3skw9.aspx Ga voor meer informatie over de klasse System.Web.Security.MachineKey naar de volgende Microsoft-website:
http://msdn.microsoft.com/nl-nl/library/system.web.security.machinekey.aspxKlik voor meer informatie over het gebruik van toepassingsinstellingen (appSettings) op de volgende artikelnummers, zodat de desbetreffende Microsoft Knowledge Base-artikelen worden weergegeven:
815786 Aangepaste informatie opslaan in en ophalen uit een configuratiebestand voor een toepassing met behulp van Visual C# 313405 Aangepaste informatie opslaan in en ophalen uit een configuratiebestand voor een toepassing met behulp van Visual Basic .NET of Visual Basic 2005 Klik voor meer informatie over de ASP.Net-configuratie op het volgende artikelnummer, zodat de desbetreffende Microsoft Knowledge Base-artikel wordt weergegeven:
307626 INFO: ASP.NET-configuratie - Overzicht