Skip to main content

Escalar la seguridad mediante DevSecOps y una seguridad centrada en los desarrolladores

Escrito por
Guy blog feature

21 de enero de 2020

0 minutos de lectura

¡Snyk cierra una ronda de financiamiento de $150 millones! Lee más de nuestro CEO.

La transformación digital no es una palabra de moda; es una fuerza. Prácticamente todas las empresas, grandes y pequeñas, buscan hacer de la tecnología su eje central y acelerar su capacidad para adaptarse al mercado. Y, sin embargo, mientras las empresas buscan transformarse para enfrentar estos nuevos desafíos, la seguridad se queda atrás.

Las prácticas de seguridad no han cambiado desde hace dos décadas. Estas prácticas mantienen a los equipos de seguridad separados y desinformados, lo que da lugar a aplicaciones inseguras mientras los demás avanzan. Ponen a los equipos de seguridad en la ruta crítica y ralentizan todo cuando los demás intentan ir más rápido. Además, exigen que el talento en ciberseguridad aparezca por arte de magia a medida que crece el negocio digital, a pesar de que llevamos más de una década sufriendo una grave escasez de profesionales.

Este no es el camino a seguir. Necesitamos un nuevo enfoque de seguridad, basado en la nueva realidad, no en una leve modificación de lo que hicimos el año pasado. Creo que ese enfoque es la seguridad centrada en los desarrolladores, y espero que esta publicación te haga pensar lo mismo.

Si vamos a basar nuestro enfoque en la nueva realidad digital, primero tenemos que entenderla: ¿cuáles son los cambios clave que ocurren durante la transformación digital y qué impacto tienen en la seguridad? Los dividiremos en tres cambios principales: los negocios digitales, la nube y DevOps.

Negocio digital: más software = más riesgo de software

En esencia, la transformación digital significa que una mayor parte de tu negocio pasa a basarse en la tecnología. Esto implica usar la tecnología para ofrecer valor e innovación que antes proporcionabas por medios físicos o manuales. Hay muchos ejemplos: pasar de las tiendas físicas a las compras en línea, usar robots en lugar de personas para mover mercancías en un almacén o guiar tus operaciones bursátiles con algoritmos en vez de corredores de bolsa.

Gráfico de dona que muestra que el 70 % de las empresas tiene o está desarrollando una estrategia de transformación digital; el texto cita a Tech Pro Research.

Cuando una mayor parte de tu negocio se vuelve digital, una mayor parte del riesgo de tu negocio también se vuelve digital. El software administra los datos de tus clientes, tus canales de ingresos dependen de que tus sistemas estén funcionando y tus fórmulas secretas se almacenan en repositorios de código.

En pocas palabras, más software equivale a más riesgo de software.

En cuanto a la seguridad, este cambio significa reconocer que proteger un negocio transformado digitalmente requiere dar más importancia a la seguridad del software. Otros riesgos siguen presentes, pero, a medida que una mayor parte del negocio se vuelve digital, la seguridad debe adaptarse. Este cambio afecta a toda la organización de seguridad: a quién reporta el CISO, cómo se distribuye el presupuesto de seguridad, cuál es la estructura del equipo de seguridad y mucho más.

Nube: la infraestructura pasa a formar parte de la aplicación

Las revoluciones comerciales suelen depender de innovaciones disruptivas y, en este caso, esa innovación es la nube. Al convertir el hardware en software a pedido, la nube hizo que fuera más fácil y económico que nunca agregar nuevas tecnologías al negocio y escalarlas según la demanda de los clientes. Crear aplicaciones se volvió cada vez más fácil gracias a nuevas tecnologías basadas en estos inicios en la nube, como los contenedores y la tecnología sin servidor.

Este cambio planteó la cuestión de quién debía hacerse cargo de esta pila de infraestructura virtual. Al principio, los equipos que administraban el hardware propio ampliaron sus funciones para dar soporte también a la infraestructura virtual. Muchas prácticas eran similares, como administrar puertos abiertos y aplicar parches a los servidores, y, en teoría, podían continuar tal como estaban.

Sin embargo, en la práctica, la oportunidad que ofrecía la nube era mayor. El escalamiento elástico permite iniciar una máquina sin un proceso de administración de la capacidad. Una VPC (nube privada virtual) significa que un sistema implementado queda aislado de forma natural de los demás, por lo que no es necesario incluirlo en el esquema de enrutamiento de todo el centro de datos. La nube permite eliminar las dependencias entre aplicaciones, para que cada una pueda tomar decisiones sobre la infraestructura con mayor rapidez. La nube no solo permite definir la infraestructura mediante software, sino que también hace que esta forme parte de la aplicación.

En términos de seguridad, esto exige replantearse cómo protegerse de las amenazas relacionadas con la infraestructura. Los riesgos no desaparecieron: un contenedor puede tener componentes vulnerables sin parches, igual que un servidor propio; el acceso de red a datos confidenciales puede tener permisos demasiado amplios en cualquiera de las dos configuraciones, etc. Pero quienes crean y mantienen la infraestructura ya no son los equipos centrales de TI, sino los desarrolladores de aplicaciones.

DevOps: equipos autónomos y empoderados

El cambio en la propiedad de la infraestructura afecta las operaciones tanto como a la seguridad y desempeñó un papel clave en el auge de DevOps. DevOps promueve que los desarrolladores y los equipos de operaciones compartan la responsabilidad de mantener las aplicaciones en funcionamiento y con un buen rendimiento. Esta nueva mentalidad contrarresta prácticas arraigadas desde hace tiempo: que los desarrolladores “lancen el código por encima del muro” para que alguien más lo opere, y que operaciones obstaculice los cambios para minimizar el riesgo que estos conllevan.

Los beneficios de las prácticas de DevOps, que al principio eran teóricos, desde entonces se han comprobado estadísticamente. Las empresas que adoptan DevOps tienen mayor tiempo de actividad y mejor rendimiento, menores costos operativos, lanzan aplicaciones más rápido y atraen talento de mayor calidad. Como resultado, estas empresas se adaptan más rápido a las necesidades del mercado y de los clientes, y obtienen mejores resultados que sus competidores.

Transformar una organización para que adopte DevOps no es fácil y es una parte esencial de la transformación digital. Depende en gran medida del concepto de equipos de aplicaciones autónomos, capaces de hacerse cargo de sus aplicaciones durante todo el ciclo de vida y avanzar rápido sin dependencias externas. A su lado, muchos equipos de operaciones evolucionaron para convertirse en equipos de “DevOps” o SRE, que actúan como centros de excelencia en operaciones. Estos equipos ya no buscan operar el software por su cuenta, sino apoyar a los desarrolladores con herramientas, conocimientos y experiencia para que puedan trabajar de forma autónoma.

Sin embargo, la seguridad no se sumó a este cambio. Los equipos de seguridad quedaron fuera de los grupos de DevOps; por lo general, reportan a otro líder y trabajan con procesos totalmente distintos. Estos equipos siguen fuera del flujo de información, lo que da lugar al lanzamiento de aplicaciones inseguras, ya que los expertos no tienen la información que necesitan. Además, cuando los equipos de seguridad intervienen en las auditorías, ralentizan la entrega y anulan el objetivo inicial del negocio. Para colmo, los equipos de seguridad tienen una grave falta de personal, una situación que se perpetúa por la severa escasez de talento que sufre el sector de la ciberseguridad.

Seguridad centrada en los desarrolladores y DevSecOps

A estas alturas, espero que esté claro que necesitamos un nuevo enfoque de seguridad para este mundo transformado digitalmente, basado en la nube y DevOps. El nuevo enfoque, a veces llamado DevSecOps (una poderosa, pero mal utilizada palabra de moda), debe basarse en estas nuevas tecnologías y metodologías e integrar la seguridad desde el principio. Debe impulsar la autonomía de los equipos y acelerar el negocio, en lugar de ralentizarlo. En otras palabras, debe priorizar a los desarrolladores.

La seguridad centrada en los desarrolladores significa que ellos realizan la mayor parte del trabajo de seguridad. Esto debería incluir la gran mayoría del diseño y las pruebas de seguridad, así como la gestión de pendientes de seguridad y, por supuesto, la corrección de vulnerabilidades, entre otras tareas. Los equipos de desarrollo de aplicaciones deben ser autónomos y poder hacerse cargo de estas responsabilidades, con la confianza de la organización y del equipo de seguridad para hacerlo. Con esta autonomía, los desarrolladores pueden proteger sus aplicaciones mientras las crean y a su propio ritmo.

Los equipos de seguridad desempeñan un papel clave en este cambio. Al igual que los equipos de operaciones antes que ellos, deben adaptarse y pasar de implementar a asesorar, de ser responsables directos a brindar apoyo. Es natural que los desarrolladores tengan menos experiencia en seguridad, por lo que los equipos de seguridad deben encontrar maneras de compartir conocimientos, crear herramientas y empoderarlos para que protejan sus aplicaciones con éxito de distintas formas. También deben seguir gobernando y supervisando la seguridad para conocer el estado actual y ayudar a ambas partes a mejorar continuamente.

Este es un cambio importante que exige no solo cambiar de actitud, sino también las habilidades de los equipos de seguridad. Justin Somaini, un líder moderno en seguridad y ex CISO de Yahoo!, Box, SAP, entre otras empresas, espera que rote hasta un tercio o la mitad de la fuerza laboral de seguridad. Sin embargo, los nuevos equipos podrán aprovechar mejor sus conocimientos y experiencia, en lugar de librar una batalla perdida intentando ponerse al día.

Por último, pero no menos importante, se necesita una renovación completa de las herramientas de seguridad. Se necesitan soluciones de seguridad que consideren a los desarrolladores sus usuarios más importantes, aunque sea el equipo de seguridad quien firme el cheque. Estas soluciones deberían parecerse menos a las aplicaciones heredadas de los proveedores de seguridad de aplicaciones actuales y más a las herramientas de las empresas de desarrollo. Con el tiempo, estas soluciones desplazarán a los actores tradicionales, tal como ocurrió en el mundo de DevOps.

Resumen

La transformación digital es una fuerza que impulsa a las empresas a avanzar cada vez más rápido. Las organizaciones que la adoptan, implementan DevOps correctamente y aprovechan la nube están creando una ventaja competitiva en el mercado, mientras que las que se quedan atrás quizá nunca logren recuperarse.

Sin embargo, el recorrido no está completo hasta que la seguridad se suma. Al igual que ocurrió con DevOps, las organizaciones que miran hacia el futuro y adoptan DevSecOps y un enfoque de seguridad centrado en los desarrolladores obtendrán mejores resultados de negocio que sus pares. Por ahora, es un salto de fe, pero en unos años será ciencia.

Empieza con Capture the Flag

Aprende a resolver desafíos de Capture the Flag viendo nuestro taller virtual introductorio a pedido.

Publicado en: