Qué estándares de seguridad deben implementarse en una aplicación web simple [cerrado]

4

Estoy creando una aplicación web que básicamente lee / escribe / actualiza información desde y hacia una base de datos en un servidor. Soy experto en programación de computadoras, pero al buscar estándares de seguridad, no puedo encontrar la manera de determinar qué estándares analizar. ¿Qué enfoque debo tomar para determinar algunos estándares de seguridad básicos?

    
pregunta user1268690 14.03.2012 - 12:36
fuente

4 respuestas

7

Dependiendo de qué datos esté manejando, puede haber diferentes mínimos de seguridad (cifrado de datos en la base de datos). Pero le recomiendo encarecidamente que comience su búsqueda en el Open Webapplication Security Project (OWASP).

    
respondido por el Lucas Kauffman 14.03.2012 - 14:24
fuente
2

Como mínimo:

  1. Autenticación del usuario (un / pw + sales almacenadas usando encriptación fuerte en la base de datos como mínimo).
  2. protección de inyección SQL.

Como señaló Graham, depende del tipo de datos que esté manejando y de las amenazas.

    
respondido por el FloppyDisk 14.03.2012 - 16:00
fuente
2

Si toma entradas de un usuario, valide esa entrada y asegúrese de que el servidor web se ejecute con el mínimo de privilegios y también verifique el top 10 de OWASP. También revise estos enlaces que le ayudarán

escribiendo aplicaciones web seguras

Sans en el despliegue seguro de aplicaciones web

Microsoft mejora la seguridad de la aplicación web

    
respondido por el P3nT3ster 27.03.2012 - 14:01
fuente
0

Trabajo en la profesión de Seguridad de TI como auditor de TI. En su caso, deberá proteger tanto la información en reposo mientras se almacena en la base de datos como durante el tránsito, mientras los datos se escriben en la base de datos desde la aplicación. Además, debes defenderte de ataques comunes contra aplicaciones web.

  

Protección de datos en tránsito

Siguiendo el principio de confidencialidad de la tríada de seguridad, desearía cifrar los datos para protegerlos contra los ataques MITM. Asegúrese de utilizar un método de cifrado seguro como TLS versión 1.2 con algoritmo de cifrado AES y una longitud de clave de al menos 128.

  

Protección de datos en reposo

Los datos, según la clasificación o el valor también deben estar cifrados en reposo mientras se almacenan en la base de datos. Si hay credenciales almacenadas en la base de datos, dichas credenciales deben ser procesadas usando un algoritmo de hash fuerte. No utilice SHA 1 porque es inseguro.

  

Defensa contra ataques dirigidos a aplicaciones web

Además de proteger los datos en tránsito y en reposo, también debe defenderse contra ataques comunes basados en la web, como

  

Inyección SQL, XSS, falsificación de solicitud entre sitios (CSRF / sesión de montaje), y   ataques en sesiones como la fijación.

La defensa principal para la inyección de SQL y los ataques XSS es la validación de la entrada del usuario en su sitio mediante el escape de una entrada peligrosa (por ejemplo: SELECCIONAR * DE) y el uso de parámetros funciones Para los ataques de fijación de sesión, la defensa principal es rechazar los ID de sesión en las declaraciones POST y volver a generar el ID de sesión cada vez que el cliente lo solicite. Para CSRF, la protección principal es el uso de datos adicionales en la solicitud de autenticación del cliente que permite que el servidor detecte y rechace las solicitudes que vienen desde afuera de la sesión establecida.

    
respondido por el Anthony 30.03.2017 - 05:43
fuente

Lea otras preguntas en las etiquetas