Skip to main content

La importancia de los ingenieros de plataforma en un programa de seguridad

Escrito por
feature snyk platform

13 de abril de 2023

0 minutos de lectura

Es necesario empoderar a los ingenieros de plataforma dentro del programa de seguridad de una organización. Su trabajo tiene una enorme influencia en la postura de seguridad de un producto y, posiblemente, un impacto tan grande (algunos dirían que incluso mayor) como el de las vulnerabilidades de las aplicaciones. A pesar de la importancia de su trabajo, su función en los programas de seguridad no está bien definida. Si bien los proveedores de servicios en la nube publican modelos de responsabilidad compartida bien definidos para sus clientes, las organizaciones rara vez especifican quién es responsable de la seguridad: los desarrolladores de aplicaciones o los ingenieros de plataforma.

En esta publicación, exploraremos qué hace un ingeniero de plataforma y destacaremos algunos de los desafíos que los equipos de seguridad de productos deben conocer.

¿Qué hace un ingeniero de plataforma?

Los ingenieros de plataforma crean herramientas y sistemas para que los desarrolladores puedan trabajar de forma autónoma en sus organizaciones. Diseñan «caminos pavimentados» que permiten a los desarrolladores renunciar a algunas opciones a cambio de una menor carga cognitiva, una experiencia más sencilla y un ciclo de vida de desarrollo de software menos complejo. Al dejar atrás la paradoja de la elección y las curvas de aprendizaje pronunciadas, los desarrolladores de aplicaciones pueden concentrarse mejor en deleitar a sus clientes.

Los ingenieros de plataforma toman muchos componentes de infraestructura complejos y fragmentados y los convierten en un conjunto más pequeño de componentes sencillos, con menos funciones. En esencia, combinan bloques de Lego para crear algo parecido a Duplo.

Cuando se hace bien, los desarrolladores de aplicaciones obtienen toda la personalización que necesitan para el 80 % de su trabajo sin tener que convertirse en expertos en infraestructura.

¿Qué tiene que ver la ingeniería de plataformas con la seguridad?

Al abstraer los detalles de la infraestructura, los ingenieros de plataforma deciden cómo debe configurarse desde el principio. Estas decisiones tienen un enorme impacto en la postura de seguridad de la organización. Se podría argumentar que los errores de diseño y las configuraciones incorrectas afectan la postura del programa de seguridad más que una vulnerabilidad de una aplicación. De hecho, en el informe Estado de la seguridad de las aplicaciones nativas de la nube de 2021 de Snyk, descubrimos que el 45 % de las personas encuestadas tenía vulnerabilidades causadas por configuraciones incorrectas.

Considera todos los errores que podrían ocurrir al diseñar e implementar cada capa de una plataforma interna de desarrollo típica:

  • Administración de aplicaciones: agentes de registro, CD, orquestación de contenedores, administración de secretos, replicación de imágenes, ciclos de vida y copias de seguridad de datos, compilación y almacenamiento de artefactos

  • Computación de aplicaciones: clústeres de contenedores, máquinas virtuales, balanceo de carga, certificados

  • Red: DNS, redes aisladas, conectividad a Internet, reglas de entrada y salida

  • Acceso: identidad, privilegios

Y esa lista no hará más que crecer si le preguntas a un ingeniero de plataforma. Veamos ahora algunos de los problemas que pueden enfrentar los ingenieros de plataformas.

Es difícil proteger una caja cada vez más grande de piezas de Lego cada vez más complejas

El conjunto de componentes es grande y sigue creciendo. Cada componente se vuelve más sofisticado. Además, los microservicios se están transformando en SaaS, a medida que los clientes delegan componentes de su arquitectura a proveedores de software externos.

Los ingenieros de plataforma suelen ser generalistas, con conocimientos más profundos en algunas áreas. En cuanto a las vulnerabilidades de seguridad, enfrentan una brecha de conocimientos similar a la de los desarrolladores de aplicaciones. Sin embargo, podría decirse que sus brechas son más variadas y difíciles de entender, ya que suelen requerir un conocimiento profundo del servicio de un proveedor y de su configuración.

Una administración compleja de cambios, agravada por prácticas de prueba poco maduras

Los desarrolladores de aplicaciones conocen bien las pruebas y las realizan ampliamente. Se espera que escriban pruebas para su código y que entiendan las ventajas y desventajas de las distintas estrategias de prueba a lo largo de la pirámide de pruebas. Por eso, el costo de incorporar correcciones de seguridad de aplicaciones es relativamente bajo: las organizaciones pueden confiar en la madurez de sus pruebas para evitar regresiones. Esto significa que, a menudo, basta con que una compilación sea exitosa para incorporar un parche de seguridad.

La situación es distinta en la ingeniería de plataformas. La codificación de la infraestructura avanza lentamente en los distintos sectores y dentro de las empresas. Incluso más allá de este requisito básico —el control de versiones, necesario para realizar algún tipo de prueba—, las prácticas para probar cambios en la infraestructura no están bien definidas. Como resultado, el riesgo asociado a cada cambio es alto. Para complicar aún más las cosas, no todos los atributos de un cambio de configuración son iguales. Algunas actualizaciones, omisiones y adiciones de atributos activan la sustitución de recursos, lo que puede tener consecuencias graves para los recursos dependientes, las aplicaciones a las que dan servicio y sus usuarios.

Hoy cuesta más corregir las vulnerabilidades de la infraestructura. Los ingenieros de plataforma revisan cada cambio con nerviosismo, pues consideran que es la mejor manera de evitar problemas al implementarlos. Esta práctica no es escalable, pero la incipiente comunidad de ingeniería de plataformas aún no ha definido las mejores prácticas.

El autoservicio genera problemas de implementación

La ingeniería de plataformas, o plataforma como producto, como suele llamarse, consiste en ofrecer a los usuarios un camino pavimentado y permitir que los desarrolladores trabajen de forma autónoma. Los propios ingenieros de plataforma implementan algunos cambios en la plataforma, incluidos los cambios en la configuración de la infraestructura en las distintas instancias de la empresa. Sin embargo, otros cambios dependen de que los equipos de desarrollo de aplicaciones los adopten e instalen, como nuevos gráficos de Helm, módulos de terraform, orbs o complementos de implementación, bibliotecas de instrumentación y muchos otros.

La postura de seguridad de la organización varía entre estas versiones, y las demoras en las actualizaciones de apenas unos equipos pueden generar desafíos para todo el programa de seguridad que el equipo de seguridad de aplicaciones desconoce.

Resumen

Ante estos desafíos, los ingenieros de plataforma necesitan herramientas que les permitan encontrar configuraciones incorrectas en las primeras etapas de su SDLC, además de ayuda para ir más allá de las pruebas y mejorar el diseño de sus caminos pavimentados.

Los ingenieros de plataforma tendrán una enorme influencia en la postura de seguridad de sus organizaciones y, en términos más generales, en el mundo del software impulsado por SaaS y con múltiples proveedores. Las mejores prácticas emergentes y las inversiones en la madurez de las plataformas eliminarán y mitigarán los riesgos de seguridad, además de permitir que los desarrolladores de aplicaciones corrijan las vulnerabilidades de sus aplicaciones con menor costo y mayor rapidez que nunca.

Empieza con Capture the Flag

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

Leer más

Blog

Los modelos de frontera encontraron las vulnerabilidades. Solo el atacante encontró las cadenas.

El análisis estático encontró las fallas, pero solo las pruebas de ataque en vivo demostraron cómo podían encadenarse para provocar brechas. Una comparación de Evo COS, Claude Security y Claude Code Security.

feature insights context
Blog

Los ataques autónomos ya están aquí. La defensa debe estar a su altura.

Los atacantes autónomos están reduciendo el tiempo disponible para defenderse. Descubre cómo el descubrimiento, la corrección, la validación y la prevención continuos pueden ayudar a los equipos de seguridad a seguirles el ritmo.

Blog

Por qué los agentes de programación con IA siguen generando fallas de control de acceso

Los agentes de programación con IA pueden generar lógica de autorización que compila y supera la revisión, pero expone los datos de un inquilino a otro. Descubre por qué es difícil detectar el control de acceso roto y cómo prevenirlo.