SSDLC BSIMM OWASP Flashcards
¿Qué significa SSDLC?
SSDLC son las siglas de Security Software Development Life Cycle, que se refiere a la integración de prácticas de seguridad en cada etapa del ciclo de vida del desarrollo de software.
¿Cuáles son las etapas principales del SSDLC?
Las etapas principales del SSDLC incluyen planificación, análisis de requisitos, diseño, implementación, pruebas, despliegue y mantenimiento, con un enfoque en la seguridad en cada fase.
¿Cuál es la ventaja principal de implementar SSDLC?
La principal ventaja es la identificación y mitigación temprana de vulnerabilidades, lo que reduce costos y mejora la seguridad del software final.
¿Cómo se integra DevSecOps en el SSDLC?
DevSecOps integra prácticas de seguridad en el proceso de desarrollo continuo, automatizando la seguridad y fomentando la colaboración entre desarrolladores, operaciones y equipos de seguridad.
¿Qué es el modelo BSIMM?
BSIMM (Building Security In Maturity Model) es un modelo de evaluación de prácticas de seguridad en el desarrollo de software basado en observaciones de múltiples organizaciones.
¿Qué objetivos tiene el modelo OWASP?
OWASP (Open Web Application Security Project) tiene como objetivo mejorar la seguridad de las aplicaciones web mediante la creación de estándares, herramientas y mejores prácticas.
¿Cuál es una de las principales etapas del SSDLC relacionada con el diseño?
Una de las principales etapas es la revisión de la arquitectura y diseño para identificar posibles amenazas y vulnerabilidades desde el inicio.
¿Qué rol juega la automatización en DevSecOps?
La automatización en DevSecOps permite integrar herramientas de seguridad en el pipeline de desarrollo, facilitando pruebas continuas y detección temprana de fallos de seguridad.
¿Cómo contribuye el SSDLC a la reducción de costos?
Al detectar y solucionar problemas de seguridad en etapas tempranas, se evitan costosas reparaciones posteriores y se minimizan los riesgos de incidentes de seguridad.
¿Qué es una revisión de código estático en el SSDLC?
Es una técnica de análisis de código que examina el código fuente para identificar vulnerabilidades de seguridad sin ejecutarlo.
¿Cómo se aplica el principio de seguridad por diseño en el SSDLC?
Incorporando consideraciones de seguridad desde el inicio del diseño del software, asegurando que las arquitecturas y componentes sean seguros.
¿Qué es una amenaza en el contexto del SSDLC?
Una amenaza es cualquier circunstancia o evento con el potencial de causar daño o explotar una vulnerabilidad en el software.
¿Cómo se realiza el análisis de riesgos en el SSDLC?
Identificando activos, amenazas y vulnerabilidades, evaluando el impacto y la probabilidad, y definiendo medidas de mitigación.
¿Qué es una prueba de penetración en el SSDLC?
Es una simulación de ataque controlado para identificar y explotar vulnerabilidades de seguridad en el software.
¿Qué papel juega la gestión de dependencias en el SSDLC?
Asegura que las bibliotecas y componentes externos utilizados en el software sean seguros y estén actualizados para prevenir vulnerabilidades.
¿Cómo se integra la formación en seguridad en el SSDLC?
Proporcionando capacitación continua a los desarrolladores y equipos sobre las mejores prácticas y nuevas amenazas de seguridad.
¿Qué es un análisis de impacto de seguridad?
Es la evaluación de cómo un cambio en el software puede afectar la postura de seguridad general del sistema.
¿Cuál es la diferencia entre SSDLC y SDLC?
SSDLC incorpora consideraciones de seguridad en cada etapa del SDLC (Software Development Life Cycle), que se centra en el desarrollo general del software.
¿Qué es la gestión de vulnerabilidades en el SSDLC?
Es el proceso continuo de identificar, evaluar, tratar y reportar vulnerabilidades en el software.
¿Cómo contribuye el SSDLC a la conformidad normativa?
Asegurando que el desarrollo del software cumpla con las normativas y estándares de seguridad aplicables desde el inicio.
¿Qué es un modelo de madurez de seguridad como BSIMM?
Es un marco que ayuda a las organizaciones a evaluar y mejorar sus prácticas de seguridad en el desarrollo de software.
¿Cuáles son los beneficios de utilizar el modelo OWASP en el SSDLC?
Proporciona directrices claras, mejores prácticas y herramientas para mejorar la seguridad de las aplicaciones web durante su desarrollo.
¿Qué es una política de seguridad en el SSDLC?
Es un conjunto de reglas y directrices que definen cómo se debe abordar la seguridad en el desarrollo y mantenimiento del software.
¿Cómo se realiza la gestión de configuraciones en el SSDLC?
Controlando y documentando las configuraciones de software para asegurar que se mantengan seguras y consistentes a lo largo del tiempo.
¿Qué es la integración continua (CI) en el contexto de DevSecOps?
Es la práctica de fusionar regularmente cambios de código en un repositorio compartido, donde se realizan pruebas automáticas, incluyendo pruebas de seguridad.
¿Qué herramientas se utilizan comúnmente para el análisis estático de código?
SonarQube, Checkmarx, Fortify, entre otras.
¿Qué es la seguridad de las aplicaciones en tiempo de ejecución?
Es la protección del software mientras está siendo ejecutado, monitoreando y defendiendo contra ataques en tiempo real.
¿Cómo se implementa la autenticación en el SSDLC?
Diseñando mecanismos robustos de autenticación desde el inicio, como multifactor, y asegurando que sean correctamente integrados y probados.
¿Qué es el principio de menor privilegio?
Es una práctica de seguridad que limita el acceso de usuarios y componentes solo a los recursos necesarios para realizar sus funciones.
¿Cómo se gestionan las actualizaciones de seguridad en el SSDLC?
Estableciendo procesos para aplicar parches y actualizaciones de manera oportuna y verificar que no introduzcan nuevas vulnerabilidades.
¿Qué es el análisis de amenazas?
Es el proceso de identificar y evaluar posibles amenazas que podrían explotar vulnerabilidades en el software.
¿Cuál es el objetivo principal de las pruebas de seguridad en el SSDLC?
Identificar y corregir vulnerabilidades antes de que el software sea desplegado en producción.
¿Qué es un ciclo de retroalimentación en DevSecOps?
Es el proceso continuo de recopilar información sobre el rendimiento y la seguridad del software para mejorar iterativamente las prácticas de desarrollo.
¿Cómo se aplica el principio de defensa en profundidad en el SSDLC?
Implementando múltiples capas de seguridad para proteger el software, de modo que si una capa falla, las otras continúan ofreciendo protección.
¿Qué es una revisión de seguridad en el diseño?
Es una evaluación formal del diseño del software para identificar y mitigar riesgos de seguridad antes de la implementación.
¿Qué papel juegan las pruebas dinámicas de seguridad en el SSDLC?
Permiten identificar vulnerabilidades ejecutando el software en un entorno controlado y observando su comportamiento bajo diferentes condiciones.
¿Qué es la codificación segura?
Es la práctica de escribir código que minimiza las vulnerabilidades de seguridad y sigue las mejores prácticas de seguridad.
¿Cómo se realiza la gestión de incidentes en el SSDLC?
Estableciendo procedimientos para identificar, responder y recuperarse de incidentes de seguridad de manera eficiente.
¿Qué es la criptografía en el SSDLC?
Es el uso de técnicas criptográficas para proteger la confidencialidad, integridad y autenticidad de los datos en el software.
¿Qué es un modelo de amenazas?
Es una representación estructurada de las posibles amenazas que pueden afectar al software, ayudando a identificar y mitigar riesgos.
¿Cómo se integra la privacidad de los datos en el SSDLC?
Incorporando principios de privacidad desde el diseño, asegurando que el manejo de datos personales cumpla con las regulaciones pertinentes.
¿Qué es la separación de deberes en el SSDLC?
Es una práctica que divide responsabilidades para evitar conflictos de interés y reducir el riesgo de errores o abusos.
¿Qué es una política de manejo de secretos?
Es un conjunto de directrices para gestionar y proteger información sensible como contraseñas, claves API y certificados.
¿Cómo se implementa la seguridad en la fase de despliegue?
Asegurando que el entorno de producción esté configurado de manera segura y que se realicen pruebas finales de seguridad antes del lanzamiento.
¿Qué es una revisión post-mortem de seguridad?
Es una evaluación realizada después de un incidente de seguridad para analizar causas, efectos y mejorar futuras respuestas.
¿Cuál es la importancia de la documentación en el SSDLC?
Proporciona un registro claro de las decisiones de seguridad, configuraciones y procedimientos, facilitando el mantenimiento y auditorías.
¿Qué es el análisis de código fuente para seguridad?
Es la revisión del código fuente para identificar y corregir vulnerabilidades de seguridad antes de la compilación.
¿Cómo se manejan las dependencias de terceros en el SSDLC?
Evaluando la seguridad de bibliotecas y componentes externos, manteniéndolos actualizados y monitoreando vulnerabilidades conocidas.
¿Qué es una política de gestión de parches?
Es un conjunto de directrices para aplicar actualizaciones de software de manera oportuna para corregir vulnerabilidades de seguridad.
¿Cómo contribuye la arquitectura segura al SSDLC?
Proporcionando una base sólida y resistente a ataques desde el diseño, facilitando la implementación de medidas de seguridad efectivas.
¿Qué es una prueba de seguridad automatizada?
Es una herramienta que ejecuta pruebas de seguridad de forma automática durante el ciclo de desarrollo para detectar vulnerabilidades rápidamente.
¿Cómo se asegura la integridad del software en el SSDLC?
Implementando controles como firmas digitales, verificaciones de hash y revisiones de código para garantizar que el software no ha sido alterado.
¿Qué es la resiliencia de seguridad?
Es la capacidad del software para resistir, adaptarse y recuperarse de incidentes de seguridad.
¿Cómo se gestiona la configuración segura en el SSDLC?
Definiendo y aplicando configuraciones predeterminadas seguras y revisando regularmente para asegurar que se mantengan.
¿Qué es un plan de respuesta a incidentes?
Es un documento que describe los procedimientos a seguir en caso de un incidente de seguridad para minimizar el impacto y restaurar la normalidad.
¿Cómo se integra la auditoría de seguridad en el SSDLC?
Realizando revisiones periódicas y auditorías para asegurar que se cumplen las políticas y estándares de seguridad establecidos.
¿Qué es la minimización de la superficie de ataque?
Es la práctica de reducir la cantidad de vectores de ataque disponibles en el software para dificultar su explotación.
¿Cómo se aplican las pruebas de penetración en el SSDLC?
Realizando simulaciones de ataques para identificar y corregir vulnerabilidades antes del despliegue del software.
¿Qué es la gestión de identidades y accesos en el SSDLC?
Es la implementación de controles que aseguran que solo los usuarios autorizados tengan acceso a recursos y funcionalidades específicas.
¿Cómo se asegura la disponibilidad en el SSDLC?
Implementando redundancias, mecanismos de recuperación y prácticas de mantenimiento para garantizar que el software esté disponible cuando se necesite.
¿Qué es la seguridad basada en roles (RBAC)?
Es un modelo de control de acceso donde los permisos se asignan a roles específicos en lugar de a usuarios individuales.
¿Cómo se integran las pruebas de seguridad en el pipeline de CI/CD?
Incorporando herramientas de análisis de seguridad en cada etapa del pipeline para detectar vulnerabilidades de manera continua.
¿Qué es el análisis de vulnerabilidades?
Es el proceso de identificar, clasificar y remediar vulnerabilidades en el software.
¿Cómo se realiza la validación de seguridad en el SSDLC?
Verificando que todas las medidas de seguridad implementadas cumplen con los requisitos y estándares definidos.
¿Qué es la seguridad en el desarrollo ágil?
Es la incorporación de prácticas de seguridad dentro de las metodologías ágiles, asegurando que la seguridad no se postponga.
¿Cómo se implementa el principio de ‘fail secure’ en el SSDLC?
Diseñando el software de manera que, en caso de fallo, permanezca en un estado seguro y no exponga datos sensibles.
¿Qué es el análisis de código dinámico?
Es la evaluación del software en ejecución para identificar comportamientos inseguros o vulnerabilidades.
¿Cómo se aplica la seguridad en la fase de mantenimiento del SSDLC?
Monitoreando continuamente, aplicando actualizaciones de seguridad y respondiendo a incidentes para mantener la seguridad del software.
¿Qué es una política de gestión de cambios?
Es un conjunto de procedimientos para controlar cómo se implementan los cambios en el software, asegurando que no introduzcan vulnerabilidades.
¿Cómo contribuye la gestión de la configuración a la seguridad en el SSDLC?
Asegurando que todas las configuraciones sean consistentes y seguras, y que cualquier cambio se gestione de manera controlada.
¿Qué es la seguridad de la cadena de suministro de software?
Es la práctica de asegurar que todos los componentes y dependencias externas del software sean seguros y confiables.
¿Cómo se gestiona la privacidad de los datos en el SSDLC?
Implementando técnicas como el cifrado, el anonimizado y asegurando el cumplimiento de regulaciones de protección de datos.
¿Qué es la resistencia a la ingeniería social en el SSDLC?
Es el diseño del software de manera que minimice la exposición a ataques de ingeniería social, como phishing o manipulación de usuarios.