Riesgos de seguridad y exposición de datos: el Top 10 de OWASP para 2021
Por Kevin E. Greene
19 de octubre de 2021
7 min leer
Open Web Application Security Project (OWASP) ha ayudado a brindar respuestas a problemas críticos de TI a través de capacitación y foros. Lea para encontrar las respuestas a las 10 preguntas más importantes de OWASP y la seguridad de las aplicaciones web.
Saltar a la sección
Profundicemos en las respuestas a presionar OWASP Top 10 y preguntas de seguridad de aplicaciones web:
- ¿Cuál es un buen punto de partida para la seguridad de las aplicaciones web?
- ¿Qué es OWASP y sus 10 principales riesgos de seguridad de aplicaciones web?
- ¿Qué son los 10 ataques de OWASP Top 10 y qué vulnerabilidades forman parte del OWASP Top 2021 para XNUMX?
- ¿Cómo hago para exigir el cumplimiento de OWASP con SAST?
- ¿Cuál es la diferencia entre SAST y DAST?
En el desarrollo de software, las pruebas de las debilidades del software que exponer vulnerabilidades de seguridad es rutina. Sin embargo, la seguridad de las aplicaciones web se ha vuelto más compleja debido al uso creciente de interfaces de programación de aplicaciones (API) que aumentan la superficie de ataque de las aplicaciones. DevSecOps, AppSec y los equipos de desarrollo de aplicaciones ahora buscan prácticas para mitigar los riesgos de seguridad, reducir la superficie de ataque y prevenir la exposición de datos causada por vulnerabilidades de aplicaciones web.
Ha habido una avalancha de ataques de aplicaciones web en las organizaciones y está aumentando constantemente. Se sabe que las aplicaciones web utilizan dependencias vulnerables de terceros. La accesibilidad y el alcance de estos componentes vulnerables tienen dependencias de software que crean riesgos de seguridad y exponen las superficies de ataque en las aplicaciones web. Facilita a los atacantes crear interrupciones graves, robar o manipular información personal, como datos de tarjetas de crédito, causar una denegación de servicio o simplemente retener los datos para obtener un rescate. Desafortunadamente, ninguna empresa, grande o pequeña, obtiene un pase cuando se trata de estos desafíos de ciberseguridad.
Los atacantes buscan vulnerabilidades y las utilizan para comprometer la seguridad de la aplicación. Las vulnerabilidades de las aplicaciones web pueden ser debilidades de software en el código de la aplicación o problemas de configuración incorrecta en aplicaciones basadas en web. Estas vulnerabilidades pueden ser el resultado de:
- Sin entradas de formulario de validación o desinfección
- Servidores web mal configurados
- Defectos en el diseño de la aplicación
- Mecanismos de autenticación mal implementados y diseñados
- Interfaces de programación de aplicaciones (API)
Los ataques a aplicaciones web son uno de los vectores de ataque más frecuentes para incidentes de ciberseguridad y violaciones de datos, como se indica en Informe de investigación de violación de datos de Verizon de 2021 (DBIR). Requieren estrategias sólidas de prevención y corrección, como parches y modelado de amenazas, para mitigarlas.
¿Cuál es un buen punto de partida para la seguridad de las aplicaciones web?
La Proyecto de seguridad de aplicaciones web abiertas (OWASP) está promoviendo las prácticas de seguridad de aplicaciones (AppSec) a nivel mundial a través del compromiso, la capacitación y la conciencia de la comunidad. OWASP Top 10 es el estándar de referencia para las organizaciones que protegen de forma proactiva las aplicaciones web de las amenazas de seguridad para reducir los riesgos. La validación de cumplimiento de OWASP Top 10 es un buen primer paso cuando se intenta cambiar y mejorar la cultura de desarrollo de software en su organización debido a la educación y la conciencia que OWASP proporciona sobre las amenazas de las aplicaciones y las cosas que pueden salir mal si no se siguen las buenas prácticas de codificación y seguridad de las aplicaciones. .
Otro recurso para mejorar la seguridad de las aplicaciones web es el sistema Common Vulnerabilities and Exposures (CVE) que proporciona una referencia a las vulnerabilidades y exposiciones de seguridad de la información conocidas. Permite a todos realizar un seguimiento de las vulnerabilidades conocidas públicamente y proporciona telemetría sobre exploits del mundo real que se pueden codificar en prácticas de desarrollo de software y actividades de modelado de amenazas para crear seguridad.
El escaneo o las pruebas de aplicaciones web (como SAST, DAST, IAST, SCA) son una buena base para los equipos de seguridad. Un firewall de aplicaciones web (WAF) es otra herramienta para filtrar, monitorear y bloquear los ataques de aplicaciones web identificados en OWASP Top 10.
¿Qué es OWASP y sus 10 principales riesgos de seguridad de aplicaciones web?
El OWASP Top 10 es una lista de las vulnerabilidades más conocidas y los riesgos de seguridad peligrosos para las aplicaciones web. Se actualiza periódicamente para mantenerse a la vanguardia de las amenazas crecientes y en evolución.
¿Cuáles son los 10 principales ataques de OWASP y qué vulnerabilidades forman parte del OWASP Top 10 para 2021?
OWASP proporciona documentación para la lista de los 10 principales, con un sitio web dedicado a cada vulnerabilidad, que describe las amenazas, los riesgos y las estrategias de mitigación. El sitio describe qué es cada vulnerabilidad y proporciona una puntuación de riesgo, que se utiliza para ayudar a priorizar y clasificar las posibles vulnerabilidades.
Las siguientes vulnerabilidades A1-A10 comprenden el nuevo OWASP Top 10 para 2021.
1. A01: 2021 — Control de acceso roto (anteriormente A05 OWASP Top 10 2017)
Encabezando la lista como el riesgo de seguridad de aplicaciones web más grave, el control de acceso roto tenía 34 CWE asignados. Eso es más que ocurrencias en aplicaciones que en cualquier otra categoría. El modelo de control de acceso de una aplicación web está estrechamente relacionado con el contenido y las funciones que proporciona el sitio. Si no está configurado correctamente, los piratas informáticos pueden obtener acceso a archivos confidenciales y desfigurar el sitio.
2. A02: 2021 — Fallos criptográficos (anteriormente A03 OWASP Top 10 2017)
El software criptoanalítico implica diferentes programas de software que se utilizan para descifrar cifrados. Formalmente llamada Exposición de datos confidenciales, una falla criptográfica significa que la información que se supone que está protegida de fuentes no confiables ha sido revelada a los atacantes. Los piratas informáticos pueden acceder a información como los datos del procesador de tarjetas de crédito o cualquier otra credencial de autenticación.
3. A03: 2021 — Inyección (anteriormente A01 OWASP Top 10 2017)
Cuando un atacante utiliza código SQL malicioso para manipular una base de datos de backend para que revele información confidencial, se denomina ataque de inyección. Las fallas de inyección, como NoSQL, OS, LDAP e inyección SQL, ocurren cuando se envían datos que no son de confianza a un intérprete como parte de un comando o consulta.
Los ataques de Cross-Site Scripting (XSS) son otro tipo de inyección. Los scripts maliciosos se inyectan en sitios web de confianza y benignos que pueden reescribir el contenido de la página HTML.
La falsificación de solicitud del lado del servidor (SSRF) es un tipo de ataque que puede ocurrir cuando un pirata informático no solo puede ver listas no autorizadas, eliminar tablas y tener acceso administrativo no autorizado, sino también realizar la ejecución remota de código desde el servidor back-end de una aplicación web vulnerable. .
4. A04: 2021 — Diseño inseguro (NUEVO)
Esta es una nueva categoría para 2021 y la atención se centra en los riesgos relacionados con las fallas de diseño. Se necesitan más modelos de amenazas, patrones y principios de diseño seguros y arquitecturas de referencia para protegerse contra diseños inseguros para páginas web.
Esta es una adición importante porque los desarrolladores deben ser conscientes de cómo el diseño y los conceptos arquitectónicos deben configurarse e implementarse correctamente en el código. La implementación incorrecta de conceptos de diseño y arquitectura en el código puede crear vulnerabilidades de seguridad.
5. A05: 2021 — Configuración incorrecta de seguridad (anteriormente A06 OWASP Top 10 2017)
Los ataques de entidades externas XML se han incorporado a una configuración incorrecta de seguridad este año. Es una amenaza creciente debido a más cambios en las configuraciones de software.
6. A06: 2021 — Componentes vulnerables y obsoletos (anteriormente A09 OWASP Top 10 2017)
Anteriormente titulada Uso de componentes con vulnerabilidades conocidas, esta categoría representa un problema conocido que los expertos de OWASP han descubierto que muchos continúan luchando para probar la evaluación de riesgos.
Muchos problemas de seguridad se han atribuido a componentes de software de terceros obsoletos. Esto se ve agravado por la creciente preocupación de que el tiempo para explotar se está reduciendo y las organizaciones no están parcheando o reparando las vulnerabilidades con la suficiente rapidez.
7. A07: 2021 — Fallos de identificación y autenticación (anteriormente A02 OWASP Top 10 2017)
Las vulnerabilidades de autenticación como categoría han caído desde la segunda posición entre los diez primeros porque la mayor disponibilidad de marcos estandarizados parece estar ayudando. Anteriormente se llamaba vulnerabilidad de autenticación rota porque puede resultar en una denegación de servicio cuando las cuentas de usuario no pueden ser autenticadas. La autenticación multifactor no se implementa en la mayoría de los casos. Ahora incluye CWE que están más relacionados con fallas de identificación.
8. A08: 2021 — Fallos de integridad de datos y software (NUEVO)
Como nueva categoría para 2021, se centra en hacer suposiciones relacionadas con actualizaciones de software, datos críticos y canalizaciones de CI / CD sin verificar la integridad. A8: 2017 — La deserialización insegura ahora es parte de esta categoría más amplia.
La creciente preocupación por los ataques recientes asociados con la brecha de SolarWinds y la protección del entorno de construcción aumenta la importancia de esta amenaza. La integridad del software ha sido mencionada específicamente en la Orden Ejecutiva sobre Ciberseguridad, sección 4.
9. A09: 2021 — Fallos de seguimiento y registro de seguridad (anteriormente A10 OWASP Top 10 2017)
Esta categoría se ha ampliado para incluir más tipos de fallas que pueden afectar directamente a la visibilidad, las alertas de incidentes y la ciencia forense.
10. A10: 2021 — Falsificación de solicitudes del lado del servidor (NUEVO)
Los datos muestran que hay una tasa de incidencia baja para esta categoría que se acaba de agregar al Top 10.
¿Cómo hago cumplir el cumplimiento de OWASP con SAST?
Debido a que los ataques cibernéticos están constantemente en las noticias, no puede permitirse que sus aplicaciones web sean presa de los atacantes debido a las vulnerabilidades de seguridad que se pueden evitar. Las pruebas de seguridad de aplicaciones estáticas (SAST), también conocidas como análisis de código estático, le permiten a su organización realizar pruebas y análisis automatizados del código fuente de su aplicación web.
Introducción al análisis estático
SAST es el proceso de analizar el código para verificar las debilidades del software que podrían exponer las vulnerabilidades de seguridad en las aplicaciones web. Las herramientas SAST no necesitan una aplicación en ejecución para realizar un análisis. SAST puede analizar el código en tiempo real para informarle sobre las 10 infracciones principales de OWASP más temprano que tarde.
Una buena práctica para reducir las vulnerabilidades de seguridad es incorporar la guía de OWASP Top 10 en sus actividades de desarrollo de software desde el principio y usar pruebas de seguridad de aplicaciones estáticas para validar el cumplimiento. Al incorporar pruebas de seguridad de aplicaciones estáticas en las primeras etapas del proceso de desarrollo, puede identificar las debilidades de seguridad y cualquier vulnerabilidad de la aplicación, cuando son las más fáciles y menos costosas de solucionar y, al mismo tiempo, cumple con los requisitos de cumplimiento de seguridad.
Lidiar con el resultado de las herramientas de seguridad puede ser abrumador, por lo que querrá buscar herramientas SAST automatizadas que incorporen algunos modelos de riesgo de la industria de la seguridad. OWASP es un buen lugar para comenzar porque aborda los problemas y vulnerabilidades más importantes. Puede mejorar eso una vez que su equipo sienta que lo tiene bajo control. Los estándares expandidos de codificación segura que se enumeran en la tabla a continuación lo ayudarán a ampliar su seguridad y lo prepararán para el éxito futuro.
Nombre estándar de codificación | Mantenido por | Resumen del propósito |
---|---|---|
CERT (Equipo de respuesta a emergencias informáticas) | Centro de Coordinación CERT | Directrices para ayudar a los desarrolladores a evitar errores durante la codificación y la implementación, y también a detectar errores de bajo nivel en el diseño. |
OWASP Top Ten | Fundación OWASP (Proyecto de seguridad de aplicaciones web abiertas) | Los desarrolladores de software y aplicaciones web utilizan estos estándares para identificar y remediar riesgos de alta seguridad en las aplicaciones web. |
CWE (enumeración de debilidades comunes) | Comunidad desarrollada y mantenida. | Este es un sistema de categorías que ayuda a los desarrolladores a identificar vulnerabilidades y debilidades en el software, y les ayuda a comprender las fallas del software. Los desarrolladores también usan el sistema para desarrollar herramientas para corregir y prevenir fallas. |
Seguridad y desarrollo de aplicaciones DISA STIGS | Agencia de Sistemas de Información de Defensa (DISA) y división del Departamento de Defensa de los Estados Unidos. | Ayuda a gerentes, diseñadores, desarrolladores y administradores de sistemas a desarrollar y mantener controles de seguridad en aplicaciones y desarrollo de aplicaciones. |
Soluciones SAST automatizadas como Parasoft ofrecen un paquete de cumplimiento actualizado según las actualizaciones de OWASP. Las nuevas reglas se convierten en verificadores para ayudar a los desarrolladores a hacer cumplir las nuevas prácticas de codificación segura, como se muestra en la imagen a continuación, para lenguajes de programación populares como Java, C / C ++, .NET, Pitón). Esto ayuda a guiar a los desarrolladores al eliminar los diez principales riesgos que ha identificado OWASP. Además, una característica como la priorización automatizada que aprovecha AI/ML puede eliminar las conjeturas de la clasificación manual.
Nuevo soporte de Parasoft Checker / Rulers para OWASP Top 10 2021
La imagen a continuación muestra el soporte de reglas / verificadores de Parasoft para la versión actualizada de OWASP Top 10 2021.
¿Cuál es la diferencia entre SAST y DAST?
Otra arma en su caja de herramientas de seguridad de aplicaciones web son las pruebas de seguridad de aplicaciones dinámicas (DAST). Con DAST, los ataques maliciosos y otros comportamientos externos se estimulan mediante la búsqueda de formas de explotar las vulnerabilidades de seguridad durante el tiempo de ejecución o las pruebas de caja negra.
Entonces, mientras SAST analiza cada línea de código sin ejecutar la aplicación, con DAST deberá ejecutar la aplicación antes de que pueda comenzar a buscar vulnerabilidades, que es tan pronto como tenga el software en ejecución.
decidir sobre análisis de código estático y dinámico para su organización depende de muchas variables. Lea nuestra publicación de blog sobre SAST donde hay una excelente comparación de las dos herramientas.