™zet
Microsoft MS10-070 güvenlik bülteninde açıklanan güvenlik güncelleştirmesi, şifrelemenin yanı sıra doğrulama (imzalama) da gerçekleştirmek üzere ASP.NET'in varsayılan şifreleme mekanizmasında değişiklikler yapar. Bu makalede ASP.NET'te şifrelemeyi eski davranışına döndürmeye yönelik yapılandırma seçenekleri açıklanmaktadır.
Bu güvenlik güncelleştirmesi hakkında daha fazla bilgi için, şu web sitesini ziyaret edin:http://www.microsoft.com/turkiye/technet/security/bulletin/2010/ms10-070.mspx
Daha fazla bilgi
ASP.NET, MachineKey bölümündeki yapılandırma aracılığıyla kullanıcıların isteğe bağlı olarak verileri şifrelemesine veya doğrulamasına olanak tanır. MS10-070 güvenlik bülteni tarafından belirtilen güvenlik güncelleştirmesi, yalnızca şifreleme istendiğinde bile şifrelemenin yanı sıra doğrulama da gerçekleştirmek için ASP.NET'te varsayılan şifreleme davranışını değiştirir.
MS10-070 güvenlik bülteninde açıklanan güvenlik güncelleştirmesini yükledikten sonra, ASP.NET için şifreleme ayarlandığında aşağıdaki işlemler gerçekleştirilir:-
Verilerin şifrelenmesi sırasında, şifrelenen veriler için bir HMAC imzası oluşturulur ve onlara eklenir.
-
Verilerin şifresini çözülmesi sırasında, veri şifresi çözülmeden önce HMAC imzası doğrulanır.
Şifrelemeye ek olarak imzalama davranışını, ASP.NET uygulama ayarlarında (appSettings) bulunan aşağıdaki anahtarlar denetler.
Anahtar |
Tür |
Varsayılan Değer |
Desteklendiği .NET sürümleri |
---|---|---|---|
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 |
aspnet:UseLegacyEncryption appSetting'in açıklaması
Bu uygulama ayarı, ASP.NET yapılandırmasının machineKey bölümünde yer alan doğrulama bölümü HMAC imza doğrulaması için yapılandırılmamış olsa bile, şifrelemenin ek olarak bir HMAC anahtarıyla doğrulama da gerçekleştirip gerçekleştirmeyeceğini belirtir.
aspnet:UseLegacyEncryption |
Açıklama |
---|---|
False (Varsayılan) |
Bu ayar ASP.NET'i, ASP.NET şifreleme kullanacak şekilde yapılandırıldığında buna ek olarak HMAC imza doğrulaması da gerçekleştirmek üzere yapılandırır. machineKey bölümünde doğrulama bir HMAC anahtarı kullanarak imzalamak için yapılandırılmamış olsa bile bu işlem gerçekleştirilir. |
True |
Bu ayar ASP.NET'i, şifreleme kullanmak ancak machineKey'de doğrulama yoluyla HMAC imzalaması kullanmamak üzere yapılandırıldığında HMAC imza doğrulaması gerçekleştirmeyecek şekilde yapılandırır. Not Bu ayar, kötü amaçlı bir istemcinin şifrelenmiş verilerin şifresini çözmesine, bu verileri taklit etmesine veya başka bir şekilde bunların üzerinde oynamasına izin verebilir. |
Bu ayarı yapılandırmak için, bilgisayarınızın veya uygulamanızın web.config dosyasına aşağıdaki yapılandırmayı ekleyin:
<configuration> ... <appSettings> ... <add key="aspnet:UseLegacyEncryption" value="false" /> </appSettings> </configuration>
aspnet:UseLegacyMachineKeyEncryption appSetting'in açıklaması
Bu uygulama ayarı, sağlanan MachineKeyProtection bağımsız değişkeni söz konusu doğrulamanın yapılmasını belirtmese bile, System.Web.Security.MachineKey sınıfı aracılığıyla şifrelemenin ek olarak bir HMAC anahtarıyla doğrulama da gerçekleştirip gerçekleştirmeyeceğini belirtir.
aspnet:UseLegacyMachineKeyEncryption |
Açıklama |
---|---|
False (Varsayılan) |
Bu ayar ASP.NET'i, ASP.NET şifreleme kullanacak şekilde yapılandırıldığında buna ek olarak MachineKey sınıfı aracılığıyla HMAC imza doğrulaması da gerçekleştirmek üzere yapılandırır. Sağlanan MachineKeyProtection bağımsız değişkeni doğrulamanın yapılmasını belirtmese bile bu işlem gerçekleştirilir. |
True |
Bu ayar ASP.NET, şifreleme kullanmak ancak sağlanan MachineKeyProtection bağımsız değişkeni aracılığıyla HMAC imzalaması kullanmamak üzere yapılandırıldığında MachineKey sınıfı aracılığıyla HMAC imza doğrulaması gerçekleştirmeyecek şekilde yapılandırır. Not Bu ayar, kötü amaçlı bir istemcinin şifrelenmiş verilerin şifresini çözmesine, bu verileri taklit etmesine veya başka bir şekilde bunların üzerinde oynamasına izin verebilir. |
Bu ayarı yapılandırmak için, bilgisayarınızın veya uygulamanızın web.config dosyasına aşağıdaki yapılandırmayı ekleyin:
<configuration> ... <appSettings> ... <add key="aspnet:UseLegacyMachineKeyEncryption" value="false" /> </appSettings> </configuration>
aspnet:ScriptResourceAllowNonJsFiles appSetting'in açıklaması
Bu uygulama ayarı ASP.NET'teki ScriptResource.axd işleyicisinin JavaScript dosyası (.js uzantılı) olmayan dosyalara hizmet verip vermeyeceğini belirtir. ScriptResource.axd, JavaScript kaynak dosyalarını ASP.NET web sayfasındaki AJAX bileşenlerine döndüren bir ASP.NET işleyicisidir.
aspnet:ScriptResourceAllowNonJsFiles |
Açıklama |
---|---|
False (Varsayılan) |
Bu ayar ASP.NET'i ScriptResource.axd işleyicisi aracılığıyla yalnızca .js uzantılı (JavaScript) statik dosyalara hizmet verecek şekilde yapılandırır. |
True |
Bu ayar ASP.NET'i, ASP.NET uygulamasının ScriptResource.axd işleyicisi aracılığıyla erişebildiği tüm statik dosyalara hizmet verecek şekilde yapılandırır. Not Bu ayar ASP.NET uygulamanızın içindeki her dosyaya işleyici aracılığıyla hizmet verilmesine olanak tanır. Bu tür dosyalardan herhangi biri duyarlı veya gizli veri içeriyorsa, bu ayar duyarlı bilgilerin istemciye sızmasına izin verebilir. |
Bu ayarı yapılandırmak için, bilgisayarınızın veya uygulamanızın web.config dosyasına aşağıdaki yapılandırmayı ekleyin:
<configuration> ... <appSettings> ... <add key="aspnet:ScriptResourceAllowNonJsFiles" value="false" /> </appSettings> </configuration>
Başvurular
MachineKey bölümü hakkında daha fazla bilgi için, şu Microsoft web sitesini ziyaret edin:
http://msdn.microsoft.com/tr-tr/library/w8h3skw9.aspxSystem.Web.Security.MachineKey sınıfı hakkında daha fazla bilgi için, şu Microsoft web sitesini ziyaret edin:
http://msdn.microsoft.com/tr-tr/library/system.web.security.machinekey.aspxUygulama verilerinin (appSettings) kullanımı hakkında daha fazla bilgi için, Microsoft Bilgi Bankası'ndaki makaleyi görüntülemek üzere aşağıdaki makale numarasını tıklatın:
815786 Visual C# kullanılarak bir uygulama yapılandırma dosyasında özel bilgiler nasıl depolanır ve alınır 313405 Visual Basic .NET veya Visual Basic 2005 kullanılarak bir uygulama yapılandırma dosyasında özel bilgiler nasıl depolanır ve alınır ASP.Net yapılandırması hakkında daha fazla bilgi için, Microsoft Bilgi Bankası'ndaki makaleyi görüntülemek üzere aşağıdaki makale numarasını tıklatın:
307626 BİLGİ: ASP.NET Yapılandırmasına Genel Bakış