Guía para CISOs: 3 aspectos que debes considerar al establecer una cultura de seguridad
9 de marzo de 2023
0 minutos de lecturaEstablecer una cultura de seguridad sólida en toda tu organización dependerá en gran medida de tus equipos de desarrollo. Por eso, es fundamental involucrar a los desarrolladores desde el inicio y con frecuencia mientras creas tu programa de seguridad.
En esta guía para directores de seguridad de la información (CISOs), exploramos cómo fomentar una cultura de seguridad en toda tu organización considerando estos tres aspectos:
El apoyo de los desarrolladores es fundamental para el éxito de un programa de seguridad.
Los tres tipos de equipos de desarrollo: pioneros, adoptantes y resistentes al cambio.
Cómo trabajar con tus equipos de desarrollo para resolver sus dificultades relacionadas con la cultura, los procesos o las herramientas.
1. El apoyo de los desarrolladores es fundamental para el éxito de un programa de seguridad
La forma de escalar la seguridad de las aplicaciones es integrarla directamente en los flujos de trabajo de desarrollo, algo mucho más fácil de decir que de hacer. Inevitablemente, los equipos de desarrollo enfrentarán desafíos para aceptar y adoptar una cultura de seguridad, porque esta puede interrumpir sus flujos de trabajo y afectar su capacidad para cumplir con los plazos de producción si no se implementa de forma cuidadosa y empática, teniendo en cuenta sus comentarios y necesidades.
Por eso, antes de implementar un programa de AppSec, es fundamental que quienes interactúan con los equipos de desarrollo y los apoyan comprendan claramente los problemas, las fricciones y las frustraciones que enfrentan.
Así, puedes establecer expectativas realistas para determinar cómo y dónde pueden cambiar los desarrolladores, y ver cómo puedes habilitarlos y apoyarlos mejor, porque la empatía puede generar alineación.
Sin empatía ni comprensión de los procesos de tus equipos de desarrollo, generarás fricciones y reducirás las posibilidades de que apoyen la implementación de una cultura de seguridad en toda la organización.
Identificar la mentalidad de tus equipos de desarrollo te permitirá determinar cómo colaborar mejor con ellos para encontrar puntos en común y objetivos para tu programa de AppSec.
2. Los 3 tipos de equipos de desarrollo
Si apoyar y empoderar a los equipos de desarrollo es la clave del éxito de AppSec, es fundamental adaptarse a la realidad de cada equipo. Y eso empieza por entender qué tipo de equipo es.
A algunos equipos de desarrollo les atrae la tecnología más reciente y les entusiasma probar nuevas herramientas, tecnologías y modelos de programación. Otros solo adoptan nuevas tecnologías o procesos cuando demuestran que pueden resolver una dificultad. Y, por supuesto, también hay equipos que evitan los cambios porque piensan: «Si no está roto, no lo arregles».
Clasificamos los equipos en tres tipos: pioneros, adoptantes y resistentes al cambio.
Equipos pioneros
Los equipos pioneros suelen tener un alto rendimiento y ser una minoría en la organización. Es menos probable que se vean abrumados y más probable que definan estándares y buenas prácticas para los demás equipos. A menudo son los primeros en adoptar procesos y tecnologías porque estos benefician al equipo o a la entrega.
Equipos adoptantes
Los equipos adoptantes suelen cumplir bien con sus entregas. Solo adoptan nuevos procesos, técnicas o tecnologías cuando un equipo pionero ya demostró su eficacia en la organización. Por lo general, representan a la mayoría de la organización.
Equipos resistentes al cambio
Los equipos resistentes al cambio son los que más se oponen a los cambios. Llevan mucho tiempo desarrollando a su manera y prefieren seguir haciéndolo por familiaridad y continuidad. A menudo también son una minoría en la organización.
3. Cómo trabajar con tus equipos de desarrollo para resolver sus dificultades
Para implementar la seguridad de los desarrolladores con éxito, es necesario hacer cambios en la cultura, los procesos y las herramientas.
Aunque no hay dos equipos iguales (incluso si comparten un tipo), aquí tienes algunas ideas para trabajar con tu organización de desarrollo y entre sus equipos a fin de resolver dificultades relacionadas con la cultura, los procesos o las herramientas.
Cultura
Para establecer una cultura en toda tu organización de desarrollo, necesitarás empatía, prioridades definidas desde la dirección, colaboración, capacitación y reconocimiento.
Empatía
Primero, debes entender quiénes son tus equipos y qué disposición general tienen para el cambio. Luego, comprender la capacidad de cada equipo para entregar, rendir y mantener la confiabilidad puede ayudarte a establecer objetivos realistas y alcanzables.
Cuando sepas quiénes son tus equipos y de qué son capaces, podrás definir la titularidad y las responsabilidades de los proyectos para que tu programa de AppSec tenga éxito.
Prioridades definidas desde la dirección
Adopta las prioridades de seguridad del negocio definidas desde la dirección y comunícalas con total claridad. Así, los equipos de desarrollo tendrán el mandato de dedicar tiempo a los problemas de seguridad porque son importantes para el negocio y la dirección de ingeniería, en vez de atenderlos solo cuando terminen sus otras tareas de desarrollo, si es que les queda tiempo.
Fomenta la colaboración
Considera crear un programa de champions de seguridad para facilitar y hacer más accesible la colaboración. Haz todo lo posible por trabajar con los desarrolladores y generar confianza, en lugar de depender únicamente del miedo para lograr resultados.
Capacita
Puede parecer obvio, pero lo diremos de todas formas: capacita a tus equipos de desarrollo antes de implementar programas. Esta capacitación puede ser tan sencilla como informarles sobre los cambios, por qué se realizan y, sobre todo, qué impacto tendrán y qué acciones deben tener en cuenta antes de que se implementen. Al mismo tiempo, reconoce que algunos temas de capacitación no serán relevantes para todos los equipos, así que adapta los materiales a sus necesidades.
Haz seguimiento y gamifica la capacitación (cuando sea posible) con tableros de puntuación, y convierte el proceso en algo que los desarrolladores quieran hacer, no solo tengan que hacer. O, como nos gusta decir, cambia la rendición de cuentas: pasa del castigo a la recompensa.
Celebra los éxitos
Destacar los logros individuales y las mejoras de seguridad, o reconocer los éxitos de los equipos, es fundamental para fomentar una cultura de seguridad. Ofrecer regalos y artículos promocionales como incentivo, o celebrar a los equipos de alto rendimiento en reuniones mensuales, es un excelente punto de partida.
En los equipos, esto podría verse así:

Procesos
Tendrás que desarrollar nuevos procesos para establecer una cultura de seguridad. Al hacerlo, ten siempre presentes a tus equipos de desarrollo y:
Busca oportunidades para integrar los procesos en los flujos de trabajo existentes, en lugar de intentar crear flujos nuevos.
Cuando las nuevas reglas o procesos de seguridad estén listos para implementarse, trabaja con los equipos de desarrollo para definir umbrales y prácticas de trabajo.
Trabaja con el equipo de desarrollo para simplificar el proceso y asegurarte de que puedas proporcionar buena documentación al siguiente equipo.
En toda tu organización de desarrollo, esto podría verse así:

Herramientas
Los nuevos procesos traen consigo nuevas herramientas. Adopta herramientas para desarrolladores:
Con API completas y compatibles con la automatización.
Que se centren en las correcciones y la remediación, en lugar de limitarse a encontrar y reportar problemas.
Que cuenten con una amplia adopción en las comunidades de código abierto y seguridad.
Enfoca las herramientas primero en la entrega de código nuevo y luego en los problemas pendientes para reducir la carga de los desarrolladores.
¡No abrumes a los desarrolladores (no nos cansaremos de decirlo)! Al introducir herramientas en un equipo, empieza por dar visibilidad. Luego, con el tiempo, aumenta las reglas y protecciones mediante políticas para mejorar el proceso de desarrollo seguro.
Por último, automatiza todo. La integración en un flujo de trabajo debe automatizarse y realizarse en el lugar adecuado para cada equipo, al igual que las pruebas dentro del flujo. Busca todos los puntos donde se puedan conectar las herramientas, como la gestión de tickets, los reportes y las alertas.
En toda tu organización de desarrollo, esto podría verse así:

Próximos pasos
Snyk es una plataforma de seguridad para desarrolladores que se integra directamente en las herramientas, los flujos de trabajo y las canalizaciones de automatización de desarrollo. Snyk ayuda a los equipos de desarrollo a encontrar, priorizar y corregir vulnerabilidades de seguridad en el código, las dependencias, los contenedores, la infraestructura como código y los entornos de nube.
Descubre más en nuestras guías prácticas para crear o mejorar la adopción de la seguridad en toda tu organización de desarrollo. O agenda hoy una demostración con un experto en seguridad para obtener más información.
Acelera el desarrollo seguro
Snyk reúne a desarrolladores y equipos de seguridad para garantizar velocidad y seguridad a escala.