2009-10-01 4 views
5

Me gustaría asegurar una aplicación web ASP.NET contra piratería. ¿Existe una lista de tareas específicas de ASP.NET específicamente codificadas para hacer que ASP.NET sea más seguro? Más allá de lo que se menciona en MSDN. Estoy interesado en pasos específicos con ejemplos de código sobre formas de evitar falsificaciones de solicitudes entre sitios & scripts de sitios cruzados.Lista de verificación de pasos para asegurar la aplicación web asp.net?

Sé sobre el uso de parámetros de SQL para la inyección de SQL, la autenticación de Windows cuando se conecta a SQL Server y la validación de la entrada del formulario en el servidor.

Respuesta

5
+0

http://msdn.microsoft.com/en-us/library/aa973813.aspx es otro buen recurso para la protección xss. La biblioteca proporciona un mayor nivel de protección que la funcionalidad del codificador predeterminado. –

+0

El segundo enlace está roto. Aquí hay una copia archivada de la página: https://web.archive.org/web/20091006040147/http://technotes.towardsjob.com/dotnet/asp-net-developers-checklist-security-checklist –

1

La OWASP (Open Web Application Security Project) tiene una lista conveniente de las principales vulnerabilidades de aplicaciones Web 10: http://www.owasp.org/index.php/Top_10_2007

Aquí hay un tutorial de Microsoft Anti-Cross Site Scripting Library 1.5: http://msdn.microsoft.com/en-us/library/aa973813.aspx

Aquí hay un muy informativo, aunque no es muy conocido recurso de seguridad, el ASP.NET 2.0 de Internet de referencia seguro Implementación - básicamente Patrones & Prácticas:

Por último, pero no menos importante, aquí hay un video en el Detrás de la arquitectura CAT.NET: http://channel9.msdn.com/posts/Jossie/Architecture-behind-CATNET/

Descargar la última versión de la herramienta CAT.NET aquí (32 y 64 bits): http://bit.ly/164BlV

1

Top Ten Security Threads
How To: Prevent Cross-Site Scripting in ASP.NET
How To: Protect From Injection Attacks in ASP.NET
How To: Protect From SQL Injection in ASP.NET
How To: Use Regular Expressions to Constrain Input in ASP.NET

Después de leer por encima de los artículos,
que resume de manera prevenciones mediante el uso de tecnologías ASP.NET, y el marco de la entidad.

inyección Cumplimiento
validación de solicitudes -Enable Asp.net en asp.net archivo de configuración web.
- Encienda el modo de error personalizado en el archivo de configuración web asp.net.
-Utilice los controles de validación de entrada del lado del servidor para restringir las entradas.
-Valida de longitud, rango, formato y tipo para cada entrada al sistema.
-Utilice una fuerte tipificación de datos.
: codifica todos los campos de texto libre y salida insegura usando HttpUtility.HtmlEncode.
-Valida las rutas de archivos utilizando System.IO.Path.GetFileName y System.IO.Path.GetFullPath.
-Utilice Request.MapPath para asignar una ruta virtual suministrada a una ruta física en el servidor.
-Prevenir el ataque de inyección de SQL mediante el uso de la sintaxis de consulta de Linq to Entities.

de Autenticación y Gestión de Cumplimiento Sesión
-Uso método de hash con sal para los datos sensibles de los usuarios.
-Utilice el protocolo SSL/TLS para cada dato de credenciales.
- Tiempo de espera de sesión definido correctamente.

cross-site scripting (XSS) Cumplimiento
expresiones regulares -Uso para restringir campos de entrada críticos en ASP.NET.
-Utilice ASP.net RegularExpressionValidator y RangeValidator para restringir los controles de entrada del lado del servidor.
: codifica todas las entradas del usuario o de otras fuentes, como bases de datos.

inseguros de referencias a objetos directa de cumplimiento
-Dar único acceso específica de usuario/grupo su proyecto y sus carpetas relacionadas.

Seguridad Mala configuración de Cumplimiento
-Mostrar único mensaje de error personalizado al usuario.

Sensible exposición de los datos de cumplimiento
-Uso de algoritmos criptográficos modernos para cifrar todos los datos sensibles.

Missing Función de Control de Nivel de Acceso Cumplimiento
-Asegúrese de que su sistema de menú y la lista de programas se completan según el nivel de autorización del usuario.
-Asegúrese de que su sistema compruebe antes de responder a la solicitud del usuario si es válido para él \ her.

Cross-Site Request Falsificación (CSRF) Cumplimiento
-Uso CAPTCHA de imagen para asegurarse de que la solicitud no es generada por un ordenador.
-Utilice CSRF Token para asegurarse de que la página específica que envió la (s) solicitud (es) a su servidor sea creada solo por su servidor.

Uso Conocido vulnerables Componentes de cumplimiento
-Siempre mantener los componentes/actualización de las bibliotecas.

sin validar Redirecciones y Cumplimiento
-Asegúrese de que el sistema compruebe siempre si la URL y sus parámetros son válidos o no, antes de ser redirigido.

+0

https://dzone.com/articles/10-steps-to-secure-software?utm_source=Top%205&utm_medium=email&utm_campaign=top5%202015-12-18 –

Cuestiones relacionadas