Az örökölt titkosítási mód konfigurálása a ASP.NET-ben

Összegzés

A Microsoft MS10-070 jelű biztonsági közleményében ismertetett biztonsági frissítés módosítja az alapértelmezett titkosítási mechanizmust az ASP.NET, hogy a titkosítás mellett érvényesítést (aláírást) is végrehajthasson. Ez a cikk azokat a konfigurációs beállításokat ismerteti, amelyekkel visszatérhet a ASP.NET titkosításának régi viselkedéséhez.

A biztonsági frissítéssel kapcsolatos további információkért látogasson el a következő webhelyre:

http://www.microsoft.com/technet/security/bulletin/ms10-070.mspx

További információ

ASP.NET lehetővé teszi a felhasználók számára, hogy opcionálisan titkosítsák vagy érvényesítsék az adatokat a MachineKey szakaszban található konfigurációval. Az MS10-070 jelű biztonsági frissítésben érintett biztonsági frissítés megváltoztatja a titkosítás alapértelmezett viselkedését a ASP.NET-ben, hogy a titkosítás mellett az ellenőrzést is végrehajtsa, még akkor is, ha csak titkosítást kér.

Az MS10-070 jelű biztonsági közleményben ismertetett biztonsági frissítés telepítését követően a következő műveleteket hajtja végre a ASP.NET titkosításának beállításakor:

  • Az adatok titkosítása során a rendszer egy HMAC-aláírást generál a titkosított adatokhoz, és hozzáfűzi a kártevőkhöz.
  • Az adatok visszafejtése során a rendszer ellenőrzi a HMAC-aláírást az adatok visszafejtése előtt.

A következő kulcsok ASP.NET alkalmazásbeállításokban (appSettings) a titkosítás mellett az aláírás viselkedését is szabályozzák.

Billentyű Type (Típus) Alapérték: Támogatott on.NET verziók
aspnet:UseLegacyEncryption logikai változó Hamis Microsoft .NET-keretrendszer 2.0 Service Pack 1
Microsoft .NET-keretrendszer 2.0 Service Pack 2
Microsoft .NET-keretrendszer 3.5
Microsoft .NET-keretrendszer 3.5 Service Pack 1
Microsoft .NET-keretrendszer 4.0
aspnet:UseLegacyMachineKeyEncryption logikai változó Hamis Microsoft .NET-keretrendszer 4.0
aspnet:ScriptResourceAllowNonJsFiles logikai változó Hamis Microsoft .NET-keretrendszer 3.5 Service Pack 1
Microsoft .NET-keretrendszer 4.0

Az aspnet leírása:UseLegacyEncryption appSetting

Ez az alkalmazásbeállítás azt adja meg, hogy a titkosítás akkor is végezze-e az ellenőrzést HMAC-kulccsal, ha ASP.NET konfiguráció machineKey szakaszának érvényesítési szakasza nincs konfigurálva a HMAC aláírás-ellenőrzéshez.

aspnet:UseLegacyEncryption Leírás
Hamis (alapértelmezett) Ez a beállítás konfigurálja a ASP.NET HMAC aláírás-ellenőrzésének elvégzésére, ha a ASP.NET titkosításra van beállítva. Ez akkor is megtörténik, ha a machineKey általi ellenőrzés nincs HMAC-kulccsal történő aláírásra konfigurálva.
Igaz Ez a beállítás azt állítja be ASP.NET, hogy az ne hajtsa végre a HMAC aláírás-ellenőrzést, ha az titkosításra van konfigurálva, és nem HMAC-aláírásra van konfigurálva a machineKey általi ellenőrzésen keresztül.

Megjegyzés: Ez a beállítás lehetővé teheti a rosszindulatú ügyfeleknek a titkosított adatok visszafejtését, hamisítását vagy más módon történő illetéktelen módosítását.

A beállítás konfigurálásához adja hozzá a következő konfigurációt a számítógéphez vagy alkalmazáshoz web.config fájlhoz:

<configuration>
...
 <appSettings>
 ...
 <add key="aspnet:UseLegacyEncryption" value="false" />
 </appSettings>
</configuration> 

Az aspnet leírása:UseLegacyMachineKeyEncryption appSetting

Ez az alkalmazásbeállítás azt adja meg, hogy a System.Web.Security.MachineKey osztályon keresztüli titkosítás végezze-e el az ellenőrzést HMAC-kulccsal akkor is, ha a megadott MachineKeyProtection argumentum nem határozza meg az ellenőrzés végrehajtását.

aspnet:UseLegacyMachineKeyEncryption Leírás
Hamis (alapértelmezett) Ez a beállítás konfigurálja a ASP.NET a HMAC aláírás-ellenőrzés elvégzésére a MachineKey osztályon keresztül, ha a ASP.NET titkosítás használatára van konfigurálva. Ez akkor is megtörténik, ha a megadott MachineKeyProtection argumentum nem határozza meg az érvényesítés végrehajtását.
Igaz Ez a beállítás úgy konfigurálja ASP.NET, hogy a HMAC aláírás-ellenőrzést ne a MachineKey osztályon keresztül végezze el, ha az titkosítás használatára van konfigurálva, és nem a HMAC-aláírásra a megadott MachineKeyProtection argumentumon keresztül.

Megjegyzés: Ez a beállítás lehetővé teheti a rosszindulatú ügyfeleknek a titkosított adatok visszafejtését, hamisítását vagy más módon történő illetéktelen módosítását.

A beállítás konfigurálásához adja hozzá a következő konfigurációt a számítógéphez vagy alkalmazáshoz web.config fájlhoz:

<configuration>
...
 <appSettings>
 ...
 <add key="aspnet:UseLegacyMachineKeyEncryption" value="false" />
 </appSettings>
</configuration> 

Az aspnet leírása:ScriptResourceAllowNonJsFiles appSetting

Ez az alkalmazásbeállítás megadja, hogy a ScriptResource.axd kezelő a ASP.NET-ben kiszolgálja-e a nem JavaScript fájlokat (.js kiterjesztést). A ScriptResource.axd egy ASP.NET kezelő, amely JavaScript-forrásfájlokat ad vissza egy ASP.NET weblapon lévő AJAX-összetevőknek.

aspnet:ScriptResourceAllowNonJsFiles Leírás
Hamis (alapértelmezett) Ez a beállítás úgy állítja be ASP.NET, hogy csak az .js kiterjesztésű (JavaScript) statikus fájlokat szolgálja ki a ScriptResource.axd kezelőn keresztül.
Igaz Ezzel a beállítással a ASP.NET olyan statikus fájlokat kiszolgálónak kell kiszolgálnia, amelyekhez a ASP.NET alkalmazás hozzáfér a ScriptResource.axd kezelőn keresztül.

Megjegyzés: Ez a beállítás lehetővé teszi, hogy az ASP.NET alkalmazáson belül bármely fájl átkerüljön a kezelőn keresztül. Ha egy ilyen fájl bizalmas adatokat tartalmaz, ez a beállítás bizalmas információkat szivárogtathat ki az ügyfél számára.

A beállítás konfigurálásához adja hozzá a következő konfigurációt a számítógéphez vagy alkalmazáshoz web.config fájlhoz:

<configuration>
...
 <appSettings>
 ...
 <add key="aspnet:ScriptResourceAllowNonJsFiles" value="false" />
 </appSettings>
</configuration> 

Hivatkozások

A MachineKey szakaszról a Microsoft következő webhelyén talál további információt:

http://msdn.microsoft.com/en-us/library/w8h3skw9.aspx
A System.Web.Security.MachineKey osztállyal kapcsolatos további információkért látogasson el a Microsoft következő webhelyére:

http://msdn.microsoft.com/en-us/library/system.web.security.machinekey.aspx Az alkalmazásbeállítások (appSettings) használatáról a Microsoft Tudásbázis alábbi cikkeiben tájékozódhat:

815786 Egyéni adatok tárolása és lekérése alkalmazáskonfigurációs fájlokból a Visual C segítségével#
313405 Egyéni adatok tárolása és beolvasása alkalmazáskonfigurációs fájlokból a Visual Basic .NET vagy a Visual Basic 2005 segítségével

A ASP.Net konfigurációról a Microsoft Tudásbázis alábbi cikkében tájékozódhat:

307626 INFORMÁCIÓ: ASP.NET konfiguráció áttekintése