Aplicaciones seguras que están integradas en el .NET Framework
En este artículo se describen consideraciones importantes para proteger las aplicaciones que se han basado en Microsoft .NET Framework.
Versión del producto original: .NET Framework
Número KB original: 818014
Resumen
Este artículo es uno de una serie de artículos que proporcionan información detallada para las aplicaciones que se basa en el .NET Framework.
Los artículos de esta serie incluyen los siguientes:
HOW TO: Deploy Applications That Are Built on the .NET Framework
HOW TO: Secure Applications that are built on the .NET Framework
Ajustar .NET Framework seguridad por zona
El .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 una de estas zonas. El .NET Framework incluye herramientas para ajustar esta configuración.
Ajustar el nivel de confianza en un ensamblado .NET Framework datos
El .NET Framework incluye muchas formas de determinar el nivel de confianza que debe conceder a un ensamblado. Sin embargo, puede hacer excepciones a las reglas para permitir que un ensamblado específico reciba un nivel de confianza mayor del que normalmente recibiría en función de las pruebas proporcionadas al common language runtime. El .NET Framework proporciona una herramienta de asistente específicamente para este propósito.
Restaurar niveles de directiva que se han personalizado
Como administrador, tiene un 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 bajo un nivel de confianza estándar. Sin embargo, puede restaurar rápidamente los niveles de directiva a su configuración predeterminada.
Evaluar los permisos que se conceden a un ensamblado
Cuando tiene directivas de configuración de seguridad empresarial, de máquina y de usuario, y niveles de confianza personalizables, puede ser difícil evaluar los permisos concedidos a un ensamblado administrado. La .NET Framework configuration incluye un método simple para evaluar estos permisos.
Auditar la seguridad de . Aplicaciones conectadas a NET
Durante las actualizaciones, las pruebas y la solución de problemas, la configuración de los sistemas de producción puede cambiar de forma involuntaria. Por ejemplo, un administrador puede conceder credenciales administrativas a un usuario mientras determina si un error está relacionado con los derechos de acceso. Si ese administrador olvida revocar esas credenciales elevadas 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 con el tiempo, es buena idea realizar auditorías periódicas. Para ello, documente aspectos clave de un sistema prístina para crear una medida de línea base. Compare esta configuración con la línea base con el tiempo para determinar si se han desarrollado problemas que podrían reducir significativamente el nivel de vulnerabilidad.
Configurar un . Aplicación conectada a NET y SQL Server usar un número de puerto alternativo para 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 los usuarios malintencionados pueden usar.
Una forma 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 LA RED que se basan en una base de datos back-end SQL Server servidor. Este método funciona si el servidor y el cliente están configurados correctamente.
Bloquear una aplicación ASP.NET web o servicio web
Hay muchas maneras de aumentar la seguridad de ASP.NET web y servicios web. Por ejemplo, puede usar el filtrado de paquetes, firewalls, permisos de archivo restrictivos, el filtro de interfaz de programación de aplicaciones de Internet Server (ISAPI) y privilegios SQL Server web cuidadosamente controlados. Es una buena idea revisar estos diferentes métodos para proporcionar seguridad en profundidad para ASP.NET aplicaciones.
Configurar permisos de archivo NTFS para aumentar la seguridad de ASP.NET aplicaciones
Los permisos de archivo del Sistema de archivos de nueva tecnología (NTFS) siguen siendo un nivel importante de seguridad para las aplicaciones web. ASP.NET aplicaciones incluyen muchos más tipos de archivo que los entornos de aplicaciones web anteriores. Los archivos a los que las cuentas de usuario anónimas deben tener acceso no son obvios.
Configurar SQL Server seguridad para las aplicaciones que están integradas en el .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 ASP.NET aplicaciones y a la cuenta de usuario aspnet. Para permitir que ASP.NET aplicaciones obtengan acceso a los datos almacenados en una base de datos SQL Server, el administrador de la base de datos debe conceder derechos a la cuenta ASPNET.
Para obtener información adicional acerca de cómo configurar SQL Server para permitir consultas y actualizaciones de aplicaciones ASP.NET, visite Configurar permisos en objetos de base de datos.
Configurar URLScan para aumentar la protección de ASP.NET web
Al instalar URLScan en un servidor Internet Information Services 5.0 (IIS 5.0), está configurado para permitir la ejecución de aplicaciones ASP 3.0. Sin embargo, al instalar el .NET Framework, la configuración de URLScan no se actualiza para incluir los nuevos tipos ASP.NET archivo. Si desea la seguridad agregada del filtro ISAPI de URLScan para las aplicaciones ASP.NET, ajuste la configuración de URLScan.
Requerir autenticación para ASP.NET web
Muchas ASP.NET no permiten el acceso anónimo. Una 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 Windows autenticación. Cada método de autenticación requiere una técnica de configuración diferente.
Restringir que usuarios específicos obtengan acceso a recursos web especificados
ASP.NET incluye autenticación de formularios. Es una forma única de autenticar usuarios sin crear Windows cuentas. ASP.NET también incluye la capacidad de conceder o denegar el acceso de estos usuarios a diferentes recursos web.
Para obtener más información sobre cómo controlar el acceso a los recursos web por usuario, visite How To Restrict Specific Users from Gaining Access to Specified web Resources.
Limitar los protocolos de servicios web que un servidor permite
De forma predeterminada, ASP.NET tres formas para que los clientes de servicios web emita solicitudes a los servicios web: SOAP, HTTP GET y HTTP PUT. Sin embargo, la mayoría de las aplicaciones solo requieren uno de estos tres métodos. Es una buena idea reducir la superficie de ataque deshabilitando los protocolos que no se usan.
No permitir el acceso del explorador a . Servicios web conectados a LA RED
ASP.NET web proporcionan una interfaz de explorador que facilita a los desarrolladores la creación de clientes de servicios web. Esta interfaz sencilla permite a cualquier persona que pueda llegar al servicio web 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 incluyen solo métodos disponibles públicamente. Sin embargo, puede reducir la seguridad de los servicios web privados.
Para obtener información adicional sobre cómo controlar el acceso a los recursos web por usuario, visite How To Restrict Specific Users from Gaining Access to Specified web Resources.
Usar ASP.NET para proteger tipos de archivo
La estructura de ASP.NET hace que muchos archivos privados se almacenen con archivos que solicitan los usuarios finales. ASP.NET protege estos archivos interceptando solicitudes para los archivos y devolviendo un error. Puede extender 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.
Referencias
Para obtener más información acerca de cómo proteger las aplicaciones que se .NET Framework, visite Novedades de Windows 10 implementación.