Tres prácticas recomendadas de DevSecOps para implementar de inmediato
Con el aumento de ataques cibernéticos dirigidos al código, es crucial reconocer la importancia de DevSecOps. A continuación, le mostramos tres pasos que los equipos pueden seguir para mejorar la seguridad de sus aplicaciones.
No importa en qué etapa de su recorrido de DevOps se encuentre, este es el mejor momento para adoptar DevSecOps. ¿Por qué? Porque las áreas vulnerables de ataques nunca han sido tan grandes. Hoy en día, las aplicaciones son el mayor objetivo de seguridad, según la vicepresidenta de Forrester Research, Amy DeMartine, quien enfatizó que [la situación no está mejorando, sino empeorando](/blog/2020/10/14/why-security-ch Champions/){data-ga-name ="worse not better"data-ga-location ="body"}.
Las cosas se complican aún más. Según las investigaciones de Gartner, el gasto de TI en seguridad ha disminuido y representa solo el 5,7 % del presupuesto total en 2019.
Como si todo esto no fuera suficiente, persiste una confusión en los equipos de DevOps respecto a qué grupos exactamente son responsables de la seguridad. En nuestra Encuesta global de DevSecOps 2020, el 33 % de los profesionales de seguridad afirmaron que eran los únicos responsables de la seguridad, mientras que casi la misma proporción (el 29 %) sostuvo que la responsabilidad recaía en todos los miembros.
Es momento de replantear cómo los equipos abordan DevSecOps, comenzando desde los cimientos. A continuación, le mostramos tres estrategias que los equipos pueden implementar de inmediato.
La colaboración es la clave del éxito de cada proyecto. Reúna a sus líderes de proyecto y delegados de seguridad. Planifique una reunión (con una lectura previa o plan previo) para diseñar un conjunto de medidas de seguridad que deben cumplirse con el código escrito para este proyecto, y planificar las pruebas automatizadas que los desarrolladores deberán ejecutar en su código. Tomar estas decisiones de manera conjunta fomentará tanto la confianza en el proceso como la adopción de una mentalidad de seguridad desde el diseño.
Rob Cuddy de IBM aconseja que su equipo conjunto adopte tres puntos de comunicación importantes para llevar sus DevSecOps al siguiente nivel:
Comunique únicamente los problemas graves y filtre la información innecesaria mediante IA y aprendizaje automático para verificar los análisis de seguridad.
Aborde el problema obvio: el código abierto. El código abierto y de terceros es omnipresente en el desarrollo de software. Por lo tanto, es importante abordarlo de frente para reducir la probabilidad de ataques evitables.
Identifique y aborde los problemas clave con mayor rapidez: encuentre y corrija los falsos negativos antes de que sean explotados.
Con estos pasos fomentará una comunicación directa, honesta y diplomática entre los equipos. Así ayudará a construir y mantener el nivel de confianza y credibilidad necesarios para DevSecOps eficientes y eficaces.
Debido a los limitados recursos disponibles para la seguridad de las aplicaciones y al importante rol de esta última en el éxito empresarial, lo lógico es ejecutar pruebas en cada confirmación de código. Idealmente, estas pruebas se escriben una sola vez de manera tal que cumplan con los estándares del proyecto o de la organización, y luego se ejecutan automáticamente con cada cambio de código. Centre las pruebas en áreas de la aplicación que ofrezcan mayor cobertura, pero que requieran un mantenimiento mínimo. Los equipos deben analizar el código de todos los niveles estructurales para buscar tickets que afecten el rendimiento operativo de una aplicación. El código debe ser seguro, robusto, eficiente y fácil de mantener.
Las medidas preventivas como SAST y escaneo de dependencias permiten ahorrar tiempo en fases posteriores al reducir la cantidad de defectos de código antes de fusionar el código y al ayudar a los desarrolladores a comprender cómo los cambios afectarán otras áreas de la aplicación. Establecer primero los criterios de las pruebas también ayuda a los desarrolladores a mejorar la calidad general de su código al proporcionarles estándares de referencia que deben cumplir mientras escriben el código.
La aplicación de los resultados de las pruebas como refuerzo negativo no es una práctica constructiva. Más allá de la corrección, los resultados se pueden aprovechar de dos maneras:
El desarrollador individual debe usar los resultados como aprendizaje sobre cómo producir código de mejor calidad.
A nivel de grupo, los resultados de las pruebas deben analizarse en busca de patrones en las prácticas de codificación que puedan mejorarse y usarse para crear estándares que ayuden a mejorar la calidad del código en todo el equipo u organización.
Cómo un programa de campeones de la seguridad puede mejorar DevSecOps
Cómo GitLab posibilita DevSecOps
Comprenda el panorama de DevSecOps
¿Todo listo para comenzar?
Descubra lo que su equipo puede hacer con una plataforma de DevSecOps unificada.