Proteger aplicativos criados no .NET Framework

Este artigo descreve considerações importantes para proteger aplicativos criados no Microsoft .NET Framework.

Versão original do produto: .NET Framework
Número de KB original: 818014

Resumo

Este artigo é um de uma série de artigos que fornecem informações detalhadas para aplicativos criados no .NET Framework.

Os artigos desta série incluem os seguintes:

Ajustar .NET Framework segurança em uma base zona por zona

O .NET Framework atribui níveis de confiança a assemblies gerenciados. Essas atribuições são baseadas, em parte, na zona em que o assembly é executado. As zonas padrão são Meu Computador, Intranet Local, Internet, Sites Confiáveis e Sites Não Confiáveis. Talvez seja necessário aumentar ou reduzir o nível de confiança associado a uma dessas zonas. O .NET Framework inclui ferramentas para ajustar essas configurações.

Ajustar o nível de confiança em um assembly de .NET Framework

O .NET Framework inclui muitas maneiras de determinar o nível de confiança que você deve conceder a um assembly. No entanto, você pode criar exceções às regras para permitir que um assembly específico receba um nível de confiança mais alto do que normalmente receberia com base nas evidências fornecidas ao runtime de linguagem comum. O .NET Framework fornece uma ferramenta de assistente especificamente para essa finalidade.

Restaurar níveis de política que foram personalizados

Como administrador, você tem controle total sobre o acesso que concede a assemblies executados nos vários níveis de confiança. Se você personalizar níveis de confiança, poderá ter problemas ao executar um aplicativo que normalmente é executado em um nível de confiança padrão. No entanto, você pode restaurar rapidamente os níveis de política em suas configurações padrão.

Avaliar as permissões concedidas a um assembly

Quando você tem políticas de configuração de segurança corporativa, máquina e usuário e níveis de confiança personalizáveis, pode ser difícil avaliar as permissões concedidas a um assembly gerenciado. A ferramenta .NET Framework Configuration inclui um método simples para avaliar essas permissões.

Audite a segurança de . Aplicativos conectados ao NET

Durante atualizações, testes e solução de problemas, a configuração de sistemas de produção pode mudar de maneiras não intencionais. Por exemplo, um administrador pode conceder credenciais administrativas a um usuário ao determinar se um erro está relacionado aos direitos de acesso. Se esse administrador esquecer de revogar essas credenciais elevadas após concluir o processo de solução de problemas, a integridade do sistema será comprometida.

Como a segurança do sistema pode ser degradada ao longo do tempo por esse tipo de ação, é uma boa ideia fazer auditorias regulares. Para fazer isso, documente os principais aspectos de um sistema impecável para criar uma medida de linha de base. Compare essas configurações com a linha de base ao longo do tempo para determinar se algum problema se desenvolveu que possa reduzir significativamente o nível de vulnerabilidade.

Configurar um . Aplicativo conectado à NET e SQL Server usar um número de porta alternativo para comunicações de rede

Muitas ferramentas automatizadas identificam serviços e vulnerabilidades disponíveis consultando números de porta bem conhecidos. Essas ferramentas incluem ferramentas legítimas de avaliação de segurança e ferramentas que os usuários mal-intencionados podem usar.

Uma maneira de reduzir a exposição a esses tipos de ferramentas é alterar o número de porta que os aplicativos usam. Você pode aplicar esse método a . Aplicativos conectados ao NET que dependem de um banco de dados de SQL Server de back-end. Esse método funcionará se o servidor e o cliente estiverem configurados corretamente.

Bloquear um aplicativo Web ASP.NET ou serviço Web

Há muitas maneiras de aumentar a segurança de ASP.NET aplicativos Web e serviços Web. Por exemplo, você pode usar a filtragem de pacotes, firewalls, permissões de arquivo restritivas, o filtro ISAPI (Interface de Programação de Aplicativo do Internet Server) de URL Scan e privilégios de SQL Server cuidadosamente controlados. É uma boa ideia examinar esses diferentes métodos para fornecer segurança detalhada para aplicativos ASP.NET.

Configurar permissões de arquivo NTFS para aumentar a segurança de aplicativos ASP.NET

As permissões de arquivo do Novo Sistema de Arquivos de Tecnologia (NTFS) continuam sendo uma camada importante de segurança para aplicativos Web. ASP.NET aplicativos incluem muito mais tipos de arquivo do que os ambientes de aplicativo Web anteriores. Os arquivos aos quais as contas de usuário anônimas devem ter acesso não são óbvios.

Configurar SQL Server segurança para aplicativos criados no .NET Framework

Por padrão, SQL Server não concede aos usuários a capacidade de consultar ou atualizar bancos de dados. Essa regra também se aplica a aplicativos ASP.NET e à conta de usuário ASPNET. Para permitir que ASP.NET aplicativos obtenham acesso aos dados armazenados em um banco de dados SQL Server, o administrador do banco de dados deve conceder direitos à conta ASPNET.

Para obter informações adicionais sobre como configurar SQL Server para permitir consultas e atualizações de aplicativos ASP.NET, visite Configurar permissões em objetos de banco de dados.

Configurar o URLScan para aumentar a proteção de aplicativos Web ASP.NET

Quando você instala o URLScan em um servidor do IIS 5.0 (Serviços de Informações da Internet 5.0), ele é configurado para permitir que aplicativos ASP 3.0 sejam executados. No entanto, quando você instala o .NET Framework, a configuração URLScan não é atualizada para incluir os novos tipos de arquivo ASP.NET. Se você quiser a segurança adicional do filtro ISAPI URLScan para seus aplicativos ASP.NET, ajuste a configuração URLScan.

Exigir autenticação para aplicativos Web ASP.NET

Muitos aplicativos ASP.NET não permitem acesso anônimo. Um aplicativo ASP.NET que requer autenticação pode usar um dos três métodos a seguir: autenticação de formulários, autenticação do .NET Passport e autenticação do Windows. Cada método de autenticação requer uma técnica de configuração diferente.

Restringir usuários específicos de obter acesso a recursos Web especificados

ASP.NET inclui autenticação do Forms. É uma maneira exclusiva de autenticar usuários sem criar contas do Windows. ASP.NET também inclui a capacidade de conceder ou negar o acesso desses usuários a diferentes recursos da Web.

Para obter mais informações sobre como controlar o acesso a recursos Web por usuário, visite Como restringir usuários específicos de obter acesso a recursos Web especificados.

Limitar os protocolos de serviços Web que um servidor permite

Por padrão, ASP.NET dá suporte a três maneiras de os clientes de serviços Web emitirem solicitações para serviços Web: SOAP, HTTP GET e HTTP PUT. No entanto, a maioria dos aplicativos exige apenas um desses três métodos. É uma boa ideia reduzir a superfície de ataque desabilitando protocolos não utilizados.

Não permita o acesso do navegador a . Serviços Web conectados ao NET

ASP.NET serviços Web fornecem uma interface amigável ao navegador para facilitar a criação de clientes de serviços Web para desenvolvedores. Essa interface amigável permite que qualquer pessoa que possa acessar o serviço Web exiba os detalhes completos dos métodos disponíveis e todos os parâmetros necessários. Esse acesso é útil para serviços Web públicos que incluem apenas métodos disponíveis publicamente. No entanto, pode reduzir a segurança dos serviços Web privados.

Para obter informações adicionais sobre como controlar o acesso aos recursos da Web por usuário, visite Como restringir usuários específicos de obter acesso a recursos Web especificados.

Usar ASP.NET para proteger tipos de arquivo

A estrutura de aplicativos ASP.NET faz com que muitos arquivos privados sejam armazenados com arquivos que os usuários finais solicitam. ASP.NET protege esses arquivos interceptando solicitações para os arquivos e retornando um erro. Você pode estender esse tipo de proteção a qualquer tipo de arquivo usando configurações. Se seu aplicativo incluir tipos de arquivo incomuns que devem permanecer privados, você poderá usar ASP.NET proteção de arquivo para proteger esses arquivos.

Referências

Para obter mais informações sobre como proteger aplicativos criados no .NET Framework, visite Novidades em Windows 10 implantação.