Compartir a través de


Protección de aplicaciones basadas en .NET Framework

En este artículo se describen consideraciones importantes para proteger las aplicaciones que se basan en Microsoft .NET Framework.

Para tener en cuenta lo importante al implementar aplicaciones que se basan en .NET Framework, consulte las aplicaciones de implementación relacionadas que se basan en .NET Framework.

Se aplica a: .NET Framework

Número de KB original: 818014

Ajuste de la seguridad de .NET Framework por zona

.NET Framework asigna niveles de confianza a ensamblados administrados. Estas asignaciones se basan, en parte, en la zona donde se ejecuta el ensamblado. Las zonas estándar son Mi equipo, Intranet local, Internet, Sitios de confianza y Sitios que no son de confianza. Es posible que tenga que aumentar o reducir el nivel de confianza asociado a cualquiera de estas zonas. .NET Framework incluye herramientas para ajustar esta configuración.

Ajuste del nivel de confianza en un ensamblado de .NET Framework

.NET Framework incluye muchas maneras de determinar el nivel de confianza que debe conceder a un ensamblado. Sin embargo, puede realizar excepciones a las reglas para permitir que un ensamblado específico reciba un nivel de confianza superior al que normalmente se recibiría en función de la evidencia proporcionada al entorno de ejecución de lenguaje común. .NET Framework proporciona una herramienta de asistente específicamente para este propósito.

Restaurar niveles de política personalizados

Como administrador, tiene control total sobre el acceso que concede a los ensamblados que se ejecutan en los distintos niveles de confianza. Si personaliza los niveles de confianza, puede experimentar problemas al ejecutar una aplicación que normalmente se ejecuta en un nivel de confianza estándar. Sin embargo, puede restaurar rápidamente los niveles de directiva a su configuración predeterminada.

Evaluar los permisos otorgados a un ensamblado

Si tiene directivas de configuración de seguridad en los niveles de empresa, máquina y usuario, y niveles de confianza personalizables, es posible que le resulte difícil evaluar los permisos concedidos a un ensamblado administrado. La herramienta de configuración de .NET Framework incluye un método sencillo para evaluar estos permisos.

Auditar la seguridad de las aplicaciones conectadas a .NET

Durante las actualizaciones, las pruebas y la solución de problemas, la configuración de los sistemas de producción podría cambiar de maneras involuntarias. Por ejemplo, un administrador puede conceder credenciales administrativas a un usuario al determinar si un error está relacionado con los derechos de acceso. Si ese administrador olvida revocar esas credenciales con privilegios elevados después de completar el proceso de solución de problemas, la integridad del sistema se ve comprometida.

Dado que este tipo de acción puede degradar la seguridad del sistema a lo largo del tiempo, se recomienda realizar auditorías periódicas. Para ejecutar las auditorías, cree una medida de referencia mediante documentar los aspectos clave de un sistema intacto. Compare esta configuración con respecto a la línea base a lo largo del tiempo para determinar si hay problemas desarrollados que podrían reducir significativamente el nivel de seguridad.

Configura una aplicación conectada a .NET y SQL Server para utilizar un número de puerto alternativo en las comunicaciones de red

Muchas herramientas automatizadas identifican los servicios y vulnerabilidades disponibles consultando números de puerto conocidos. Estas herramientas incluyen herramientas de evaluación de seguridad legítimas y herramientas que pueden usar los usuarios malintencionados.

Una manera de reducir la exposición a estos tipos de herramientas es cambiar el número de puerto que usan las aplicaciones. Puede aplicar este método a aplicaciones conectadas a .NET que dependen de una base de datos SQL Server en el back-end. Este método funciona si el servidor y el cliente están configurados correctamente.

Bloqueo de una aplicación web o un servicio web de ASP.NET

Hay muchas maneras de aumentar la seguridad de ASP.NET aplicaciones web y servicios web. Por ejemplo, puede usar el filtrado de paquetes, firewalls, permisos restrictivos de archivos, el filtro ISAPI de URL Scan, o privilegios cuidadosamente controlados en SQL Server. Debe revisar estos distintos métodos para proporcionar seguridad detallada para las aplicaciones de ASP.NET.

Configuración de permisos de archivo NTFS para aumentar la seguridad de las aplicaciones de ASP.NET

Los nuevos permisos de archivo del Sistema de archivos tecnológicos (NTFS) siguen siendo una capa importante de seguridad para las aplicaciones web. ASP.NET aplicaciones incluyen muchos más tipos de archivos que los entornos de aplicaciones web anteriores. La lista de archivos a los que las cuentas de usuario anónimas deben tener acceso no es obvio.

Configuración de la seguridad de SQL Server para aplicaciones basadas en .NET Framework

De forma predeterminada, SQL Server no concede a los usuarios la capacidad de consultar o actualizar bases de datos. Esta regla también se aplica a las aplicaciones ASP.NET y a la cuenta de usuario de ASPNET. Para permitir que las aplicaciones de ASP.NET obtengan acceso a los datos almacenados en una base de datos de SQL Server, el administrador de bases de datos debe conceder derechos a la cuenta de ASPNET.

Para obtener más información sobre cómo configurar SQL Server para permitir consultas y actualizaciones de aplicaciones ASP.NET, consulte Configuración de permisos en objetos de base de datos.

Configuración de URLScan para aumentar la protección de ASP.NET aplicaciones web

Al instalar URLScan en un servidor de Internet Information Services 5.0 (IIS 5.0), la herramienta está configurada para permitir que se ejecuten aplicaciones ASP 3.0. Sin embargo, al instalar .NET Framework, la configuración de URLScan no se actualiza para incluir los nuevos tipos de archivo ASP.NET. Si desea la seguridad agregada del filtro URLScan ISAPI para las aplicaciones de ASP.NET, ajuste la configuración de URLScan.

Requerir autenticación para aplicaciones web de ASP.NET

Muchas aplicaciones ASP.NET no permiten el acceso anónimo. Una aplicación ASP.NET que requiere autenticación puede usar uno de los tres métodos siguientes: autenticación de formularios, autenticación de .NET Passport y autenticación de Windows. Cada método de autenticación requiere una técnica de configuración diferente.

Restricción de que usuarios específicos obtengan acceso a los recursos web especificados

ASP.NET incluye autenticación de formularios. Este método único autentica a los usuarios sin crear cuentas de Windows. ASP.NET también incluye la capacidad de conceder o denegar el acceso a distintos recursos web para estos usuarios.

Para obtener más información sobre cómo controlar el acceso a los recursos web por usuario, visite Restringir a usuarios específicos de obtener acceso a los recursos web especificados.

Limitar los protocolos de servicios web que un servidor permite

De forma predeterminada, ASP.NET admite tres métodos para que los clientes de servicios web emitan solicitudes a servicios web: SOAP, HTTP GET y HTTP PUT. Sin embargo, la mayoría de las aplicaciones solo requieren uno de estos métodos. Se recomienda reducir la superficie expuesta a ataques deshabilitando los protocolos sin usar.

No permita el acceso del navegador a servicios web conectados a .NET

ASP.NET servicios web proporcionan una interfaz fácil de usar para facilitar a los desarrolladores la creación de clientes de servicios web. Esta interfaz fácil permite a cualquier persona que pueda acceder al servicio web para ver los detalles completos de los métodos disponibles y los parámetros necesarios. Este acceso es útil para los servicios web públicos que solo incluyen métodos disponibles públicamente. Sin embargo, podría reducir la seguridad de los servicios web privados.

Para obtener más información sobre cómo controlar el acceso a los recursos web por usuario, consulte Restricción de que los usuarios específicos obtengan acceso a los recursos web especificados.

Uso de ASP.NET para proteger los tipos de archivo

La estructura de ASP.NET aplicaciones hace que muchos archivos privados se almacenen junto con los archivos que solicitan los usuarios finales. ASP.NET protege estos archivos interceptando las solicitudes de los archivos y devolviendo un error. Puede ampliar este tipo de protección a cualquier tipo de archivo mediante las opciones de configuración. Si la aplicación incluye tipos de archivo inusuales que deben permanecer privados, puede usar ASP.NET protección de archivos para proteger esos archivos.