El uso de contenedores sigue creciendo. Ya sea por las aplicaciones sin servidor y nativas de la nube o por el deseo de modernizar los monolitos, los contenedores se están convirtiendo rápidamente en la plataforma preferida para desplegar aplicaciones.
Sysdig publicó recientemente su informe de 2019 sobre el uso de contenedores basado en datos recopilados de clientes de sus servicios en la nube pública y en las instalaciones. Los datos abarcaban más de dos millones de contenedores.
Aparte del hallazgo realmente emocionante (si eres como yo) de que el 60 % de esos contenedores ejecutan NGINX, Sysdig descubrió algunas estadísticas de seguridad bastante preocupantes.
Pensemos en este dato: el 54 % de los contenedores duró menos de cinco minutos. En 2018, esto solo ocurría con el 20 %.
¿Por qué resulta preocupante? Por la seguridad, claro. Si intenta proteger el acceso (y debería hacerlo), así como la aplicación o la API que se ejecuta en ese contenedor, debe asegurarse de que sus servicios de seguridad ajusten constantemente las políticas al estado actual del clúster. Esto significa que las políticas deben aplicarse a los contenedores cuando se ponen en marcha y eliminarse cuando se retiran. Son muchos cambios, lo que supone una gran carga operativa. Ya es bastante difícil garantizar la seguridad de una aplicación relativamente estática. Hacerlo con rapidez en una aplicación muy volátil es realmente complicado.
Si eso no le preocupa, tenga en cuenta este dato: aunque el 60 % de las imágenes de contenedor se obtienen de registros privados (¡bien hecho!), el 52 % no supera los análisis de imágenes. Esto significa que contenían vulnerabilidades conocidas de gravedad alta o superior.
Uf. Es que no puedo.
Resulta que muchísima gente ejecuta contenedores como usuario root (mediana por host: 21) o en modo privilegiado (mediana por host: 4). Otros no tienen los privilegios restringidos (mediana por host: 28). Esto resulta especialmente frustrante, ya que Docker (el entorno de ejecución de contenedores más utilizado) parte de forma predeterminada de un conjunto restringido de capacidades. Eso significa que alguien modificó deliberadamente la configuración de seguridad predeterminada. Ejecutar contenedores sin restricciones puede permitir escalar privilegios o escapar del contenedor (lo que da acceso al sistema).
Hacemos ahora una pausa para recordar los fundamentos de la seguridad de los contenedores:
- Cierra la puerta. La autenticación no es opcional. Exige credenciales seguras y cámbialas con frecuencia. Utiliza la autenticación de dos factores siempre que sea posible, especialmente para el acceso privilegiado a las consolas de orquestación y a la infraestructura crítica.
- Oculta tus objetos de valor. No compartas por descuido información secreta (como claves y credenciales) de forma pública en un repositorio o en una fuente compartida de fácil acceso.
- Filtra tus llamadas. No todas las solicitudes son válidas y algunas contienen código malicioso. Tanto si se trata de una aplicación como de un servicio de infraestructura, inspecciona y evalúa el contenido para detectar posibles intenciones maliciosas. Optimiza el proceso combinando el análisis con la terminación SSL/TLS para compensar la ligera pérdida de rendimiento.
- Corrige las vulnerabilidades. Si sabes que una imagen, un servicio, una carga de trabajo u otro componente es vulnerable, aplícale un parche. Esto es especialmente importante en el caso de las vulnerabilidades de componentes de origen externo, ya que son objetivos destacados. Cuando aparece una vulnerabilidad en aplicaciones o infraestructuras ampliamente implantadas, como Apache Struts, se abre un amplio abanico de oportunidades, pues un atacante apenas necesita invertir recursos para localizarla y explotarla.
Para la seguridad de las aplicaciones —y, por tanto, de la empresa— es absolutamente fundamental que las buenas prácticas de seguridad de los contenedores se lleven realmente a la práctica. Nuestro próximo informe sobre el estado de los servicios de aplicaciones de 2020 reveló que las aplicaciones nativas de la nube y los microservicios representan, de media, el 15 % de la cartera de aplicaciones de una empresa. Y ello pese a que los resultados indican que existe una larga lista de nuevas aplicaciones pendientes de desarrollar. Esto significa que el número de aplicaciones en contenedores no hará más que crecer. Y si no podemos proteger un pequeño porcentaje de las aplicaciones, ¿cómo podemos esperar ampliar nuestra capacidad para proteger un porcentaje significativo de ellas?
Practique una contenerización segura.
Si te interesa repasar los conceptos básicos de la seguridad de los contenedores, consulta esta serie basada en los conocimientos de mi compañero de F5 Jordan Zebor:
- Fundamentos de la seguridad de contenedores: introducción
- Fundamentos de la seguridad de contenedores: pipeline
- Fundamentos de la seguridad de contenedores: orquestación
- Fundamentos de la seguridad de contenedores: cargas de trabajo
- Fundamentos de la seguridad de contenedores: conclusión
Sobre el autor

Lori MacVittie es ingeniera distinguida y evangelista jefe en la Oficina del CTO de F5, y cuenta con una amplia experiencia en entrega de aplicaciones, estrategia de automatización e infraestructura. Es conocida por convertir la complejidad en claridad, ya sea definiendo mecanismos de protección para agentes de IA, analizando arquitecturas multinube frágiles o explorando los límites de los sistemas escalables. Aporta más de treinta años de experiencia en el sector en desarrollo de aplicaciones, arquitectura de TI y operaciones de redes y sistemas. Antes de incorporarse a F5, fue una galardonada editora de tecnología. MacVittie posee un máster en Informática y es una autora prolífica cuyas publicaciones abarcan la seguridad, la nube y la arquitectura empresarial. También es una apasionada de los juegos de mesa y los videojuegos, y expresa sin complejos sus firmes opiniones sobre el queso.
Más artículos de Lori Mac VittieArtículos relacionados del blog

Cree servicios públicos seguros, resilientes y preparados para la IA con F5 y AWS
Descubre cómo las organizaciones del sector público pueden modernizar de forma segura sus aplicaciones y soluciones de IA, al tiempo que gestionan los sistemas heredados, el cumplimiento normativo y el riesgo operativo.
Protección de los sistemas de IA: por qué la seguridad debe avanzar al ritmo de la innovación
Desde acelerar avances revolucionarios en medicina y educación hasta transformar la vida cotidiana, la IA está cambiando nuestra forma de vivir y trabajar. Pero también ofrece grandes oportunidades a los ciberdelincuentes.
Avanzar hacia la optimización digital tras la transformación
Descubre estrategias de optimización digital para garantizar políticas de seguridad coherentes, impulsar la madurez de la transformación digital y superar los retos de la transformación.
Proyecto de código abierto destacado: mayor observabilidad con F5 Cloud Logger iApp
En el punto de mira del código abierto: cómo aumentar la observabilidad. Lee el blog de F5 para descubrir cómo exportar fácilmente la telemetría de BIG-IP a plataformas modernas de análisis en la nube.
El estado de la entrega de aplicaciones en 2018: la transformación digital impulsa la automatización y la multinube pese a las preocupaciones de seguridad
Descubre las principales conclusiones del cuarto informe anual de F5 sobre el estado de la entrega de aplicaciones.
Estado de la entrega de aplicaciones en 2017: automatización, API y DevOps
Descubre el informe sobre el estado de la entrega de aplicaciones de 2017. Lee el blog retrospectivo de F5 sobre los inicios del auge de las redes declarativas y los flujos de DevOps.