Como configurar o modo de criptografia de legado no ASP.NET

Traduções deste artigo Traduções deste artigo
ID do artigo: 2425938 - Exibir os produtos aos quais esse artigo se aplica.
Expandir tudo | Recolher tudo

Sumário

A atualização de segurança descrita no boletim de segurança Microsoft MS10-070 faz alterações no mecanismo de criptografia padrão no ASP.NET para executar a validação (assinatura) além da criptografia. Este artigo descreve as opções de configuração para reverter para o comportamento de legado para criptografia no ASP.NET.

Para obter mais informações sobre esta atualização de segurança, visite o seguinte site:
http://www.microsoft.com/brasil/technet/security/bulletin/ms10-070.mspx

Mais Informações

O ASP.NET permite que os usuários criptografem ou validem dados através da configuração na seção MachineKey. A atualização de segurança corrigida pela atualização MS10-070 altera o comportamento padrão da criptografia no ASP.NET para executar a validação além da criptografia mesmo se esta for solicitada.

Depois que você instalar a atualização de segurança descrita no boletim de segurança MS19-070, as operações a seguir serão executadas quando a criptografia for configurada para o ASP.NET:
  • Durante a criptografia de dados, uma assinatura HMAC é gerada e anexada a eles.
  • A assinatura HMAC é validada antes da descriptografia de dados.
Além da criptografia, as seguintes chaves nas configurações do aplicativo ASP.NET (appSettings) controlam o comportamento da assinatura.
Recolher esta tabelaExpandir esta tabela
ChaveTipoValor padrãoVersões com suporte on.NET
aspnet:UseLegacyEncryptionValor booleanoFalseMicrosoft .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:UseLegacyMachineKeyEncryptionValor booleanoFalseMicrosoft .NET Framework 4.0
aspnet:ScriptResourceAllowNonJsFilesValor booleanoFalseMicrosoft .NET Framework 3.5 Service Pack 1
Microsoft .NET Framework 4.0

Descrição do aspnet:UseLegacyEncryption appSetting

Essa configuração de aplicativo especifica se a criptografia executará a validação com uma chave HMAC mesmo se a seção de validação em machineKey da configuração ASP.NET não for configurada para a validação de assinatura HMAC.
Recolher esta tabelaExpandir esta tabela
aspnet:UseLegacyEncryptionDescrição
False (padrão)Esta opção configura o ASP.NET para executar a validação de assinatura HMAC quando o ASP.NET for configurado para usar a criptografia. Isso ocorrerá mesmo se a validação em machineKey não estiver configurada para assinar usando uma chave HMAC.
TrueNesta configuração, o ASP.NET não executa a validação de assinatura HMAC quando estiver configurado para usar criptografia e não a assinatura HMAC através da validação em machineKey.

Observação Essa configuração pode permitir que um cliente mal intencionado descriptografe, falsifique ou viole os dados criptografados.

Para definir essa configuração, adicione a configuração a seguir no seu computador ou no arquivo web.config do aplicativo:
<configuration> ... <appSettings> ... <add key="aspnet:UseLegacyEncryption" value="false" /> </appSettings> </configuration>

Descrição de aspnet:UseLegacyMachineKeyEncryption appSetting

Esta configuração de aplicativo especifica se a criptografia pela classe System.Web.Security.MachineKey também executará uma validação com uma chave HMAC mesmo quando o argumento MachineKeyProtection fornecido não especifica se a validação foi executada.
Recolher esta tabelaExpandir esta tabela
aspnet:UseLegacyMachineKeyEncryptionDescrição
False (padrão)Nesta configuração, o ASP.NET também executa a validação de assinatura HMAC através da classe MachineKey quando o ASP.NET for configurado para usar a criptografia. Isso ocorrerá mesmo se o argumento MachineKeyProtection fornecido não especifica se a validação foi executada.
TrueNesta configuração, o ASP.NET não executa a validação da assinatura HMAC através da classe MachineKey quando ela está configurada para usar a criptografia e não a assinatura HMAC pelo argumento MachineKeyProtection fornecido.

Observação Essa configuração pode permitir que um cliente mal intencionado descriptografe, falsifique ou viole os dados criptografados.

Para definir essa configuração, adicione a seguinte configuração no seu computador ou no arquivo web.config do aplicativo:
<configuration> ... <appSettings> ... <add key="aspnet:UseLegacyMachineKeyEncryption" value="false" /> </appSettings> </configuration>

Descrição de aspnet:ScriptResourceAllowNonJsFiles appSetting

Esta configuração de aplicativo especifica se o manipulador do ScriptResource.axd no ASP.NET atenderá arquivos que não são JavaScript (extensão .js). ScriptResource.axd é um manipulador do ASP.NET que retorna os arquivos de origem do JavaScript para os componentes AJAX em uma página do ASP.NET.
Recolher esta tabelaExpandir esta tabela
aspnet:ScriptResourceAllowNonJsFilesDescrição
False (padrão)Nesta configuração, o ASP.NET atende somente arquivos estáticos que possuem a extensão .js (JavaScript) através do manipulador do ScriptResource.axd.
TrueNesta configuração, o ASP.NET atende qualquer arquivo estático acessível ao aplicativo ASP.NET através do manipulador do ScriptResource.axd.

Observação Essa configuração permite que qualquer arquivo no seu aplicativo ASP.NET seja atendido pelo manipulador. Se um desses arquivos contiver dados importantes ou confidenciais, esta configuração pode perder informações importantes de um cliente. 

Para definir essa configuração, adicione a seguinte configuração no seu computador ou no arquivo web.config do aplicativo:
<configuration> ... <appSettings> ... <add key="aspnet:ScriptResourceAllowNonJsFiles" value="false" /> </appSettings> </configuration>

Referências

Para obter mais informações sobre a seção MachineKey, visite o seguinte site da Microsoft:
http://msdn.microsoft.com/pt-br/library/w8h3skw9.aspx
Para obter mais informações sobre a classe System.Web.Security.MachineKey, visite o seguinte site da Microsoft:
http://msdn.microsoft.com/pt-br/library/system.web.security.machinekey.aspx
Para obter mais informações sobre como usar as configurações do aplicativo (appSettings), clique nos números para exibir os artigos na Base de Dados de Conhecimento Microsoft:
815786 Como armazenar e recuperar informações personalizadas de um arquivo de configuração do aplicativo usando o Visual C#
313405 Como armazenar e recuperar informações personalizadas de um arquivo de configuração do aplicativo usando o Visual Basic .NET ou o Visual Basic 2005
Para obter mais informações sobre a configuração do ASP.NET, clique no número abaixo para ler o artigo na Base de Dados de Conhecimento Microsoft :
307626 INFORMAÇÕES: Visão geral da configuração de ASP.NET
Observação: este é um artigo de ?PUBLICAÇÃO RÁPIDA? criado diretamente pela organização de suporte da Microsoft. As informações aqui contidas são fornecidas no presente estado, em resposta a questões emergentes. Como resultado da velocidade de disponibilização, os materiais podem incluir erros tipográficos e poderão ser revisados a qualquer momento, sem aviso prévio. Consulte os Termos de Uso para ver outras informações.

Propriedades

ID do artigo: 2425938 - Última revisão: quarta-feira, 27 de outubro de 2010 - Revisão: 1.0
A informação contida neste artigo aplica-se a:
  • Microsoft .NET Framework 4
  • Microsoft .NET Framework 3.5 Service Pack 1
  • Microsoft .NET Framework 3.5
  • Microsoft .NET Framework 2.0 Service Pack 2
  • Microsoft .NET Framework 2.0 Service Pack 1 (x86)
Palavras-chave: 
kbexpertiseinter kbhowto kbsecurity kbsurveynew KB2425938

Submeter comentários

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com