Verizon Communications Inc. opera una de las redes inalámbricas líderes de EE.UU. así como también una red totalmente de fibra óptica con alcance nacional. Además, ofrece soluciones integradas a empresas de todo el mundo. La compañía tiene 163 400 empleados y generó aproximadamente 126 mil millones de dólares en ingresos en 2016.
Verizon es uno de los proveedores de tecnología de comunicación más grandes del mundo. La compañía conecta diariamente millones de personas, compañías y comunidades con su prestigiosa red para realizar avances en las áreas de entretenimiento interactivo, contenido multimedia digital, Internet de las cosas y servicios de banda ancha.
Como proveedor de tecnología de muchas compañías líderes del mundo, Verizon conoce muy bien los beneficios de la informática en la nube. Con el fin de respaldar la migración de sus aplicaciones empresariales a Amazon Web Services (AWS), Verizon necesitaba una manera de aumentar la escala de los procesos de validación de seguridad en relación con el trabajo manual llevado a cabo por su equipo de seguridad. Chris Durand, director de servicios de integración de seguridad en la nube de Verizon, observa que hubo varios asuntos que Verizon tuvo que resolver para lograr una solución eficiente:
Entorno físico compartido: con las aplicaciones locales, Verizon sabe qué otros recursos se están ejecutando en su centro de datos. En la nube, Durand explica que “No hay límites físicos, por lo que una de nuestras aplicaciones se podría estar ejecutando en el mismo marco de servidor que el de un competidor”.
Modelos de implementación diferentes: en un modelo local, un equipo específico se encarga de implementar el hardware, otro equipo es responsable de implementar los sistemas operativos, etcétera. En la nube, los desarrolladores (que no son expertos en estos dos aspectos de implementación) son quienes aprovisionan el hardware y los sistemas operativos, una razón más para realizar una verificación de la configuración de la seguridad.
Dependencia de la automatización: en la nube, la implementación está basada en la automatización. A los fines de poder realizar una integración con procesos de implementación y respaldar aplicaciones que Verizon planea migrar a AWS, la compañía también necesita abordar la seguridad de una manera automatizada.
“Utilizamos una estrategia de “defensa en seguridad” que incluye muchos niveles de control: prevención, detección y corrección automática”, explica Durand. “La primera parte, la prevención, implica detener, en primer lugar, la implementación de configuraciones de seguridad incorrectas”.
La nueva canalización de desarrollo-seguridad-operaciones (DSOP) de Verizon es un método preventivo que la compañía está utilizando para garantizar que las aplicaciones implementadas en la nube pública cumplan todas las políticas de seguridad para las aplicaciones de la nube. La DSOP, que se ejecuta en AWS, se creó con la ayuda de Stelligent, una división de HOSTING y un socio consultor preferente de la red de socios de AWS (APN).
La utilización de AWS CloudFormation por parte de Verizon permite a desarrolladores y administradores de sistemas utilizar código para aprovisionar, actualizar y administrar una colección de recursos de AWS relacionados (llamada pila) de una manera unificada y controlada. La DSOP está basada en AWS CloudFormation y representa los elementos de validación de seguridad necesarios como código, lo que propicia el uso de un método automatizado para garantizar el cumplimiento de políticas de seguridad.
“Hemos aceptado que la infraestructura es código y que su desarrollo debe tratarse como tal”, dice Durand. “El próximo avance lógico es tratar a la seguridad como código como forma de automatizar y agilizar su incorporación en el proceso de desarrollo. Solo cuando logremos integrar todos los actores necesarios para entregar soluciones en la nube, en el proceso de desarrollo, vamos a poder alcanzar realmente las metas que se exigen en una cultura de DevOps. La seguridad es esa próxima frontera”.
La DSOP divide el proceso de validación de seguridad en tres etapas independientes. Si una aplicación no aprueba la primera etapa, no pasa a la segunda ni a las posteriores, que incluyen:
Etapa 1: análisis estático de plantillas de CloudFormation. En la primera etapa de la canalización, la DSOP usa CFN_NAG, una herramienta de código abierto de Stelligent, para realizar un análisis estático de la plantilla de CloudFormation. La herramienta utiliza reglas escritas por Stelligent para verificar ajustes relacionados con el cifrado, el registro del acceso, los grupos de seguridad y la administración del acceso y las identidades. Los resultados de CFN_NAG incluyen los identificadores de recursos lógicos de los recursos que infringen reglas de seguridad y una explicación de cuál fue la regla que se incumplió. Esta publicación de blog de Stelligent incluye más información sobre CFN_NAG.
Etapa 2: análisis de la pila de CloudFormation implementada. En la segunda etapa de la canalización, DSOP usa la plantilla de CloudFormation para implementar la aplicación en un entorno de prueba que se crea explícitamente para validaciones de seguridad. A continuación, DSOP utiliza el servicio AWS Config junto con reglas escritas por Stelligent para analizar, auditar y evaluar las configuraciones de seguridad de los recursos de AWS que se crearon como parte de la pila de CloudFormation.
Etapa 3: análisis de vulnerabilidad. En la tercera etapa de la canalización, la DSOP usa un producto externo para analizar la existencia de vulnerabilidades que no hayan sido detectadas durante las etapas uno y dos, como versiones vulnerables de herramientas de infraestructura o la falta de parches para sistemas operativos. Una vez finalizado el análisis de vulnerabilidad, el entorno de prueba se elimina.
Los resultados de la canalización se firman con una firma digital, que un agente perteneciente a la canalización de implementación automatizada de la compañía (basada en Red Hat Ansible) verifica para determinar si la aplicación está aprobada para implementarse en un entorno de producción. También es posible que equipos de desarrollo ejecuten cada etapa de la canalización de manera independiente.
“Casi todas las herramientas de seguridad requieren que cree instancias de recursos en AWS antes de que dichas herramientas puedan validar una configuración de seguridad”, explica Durand. “Para resolver este problema, la herramienta CFN_NAG de Stelligent lee una plantilla de CloudFormation y evalúa el cumplimiento de políticas de seguridad personalizadas antes de ejecutar CREATE_STACK. Como los desarrolladores también pueden usar CFN_NAG de manera independiente, ofrece una buena manera de detectar prácticas de codificación deficientes en una fase inicial del proceso, como puertos sin bloquear o un bucket de código con una ACL de lectura pública”.
Arquitectura de la solución DSOP
La DSOP se ejecuta en una canalización de Jenkins dentro de Amazon Elastic Compute Cloud (Amazon EC2) y Amazon Simple Storage Service (Amazon S3) se utiliza para el registro de logs y otras tareas de almacenamiento. La DSOP también usa Amazon CloudFormation para el desarrollo de pilas (y la implementación del servicio CFN_NAG), AWS Config para la verificación dinámica del cumplimiento de requisitos de conformidad y AWS Lambda para reglas de configuración personalizadas.
Creada con la ayuda de Stelligent, la DSOP de Verizon ofrece a la compañía un método automatizado para verificar la existencia de configuraciones de seguridad correctas en su infraestructura de AWS, antes de su implementación en producción. Los beneficios específicos incluyen:
Cumplimiento pleno de las políticas de seguridad. La DSOP le ofrece a Verizon un método coherente para garantizar que las aplicaciones implementadas en la nube de AWS cumplan todas las reglas de configuración de seguridad, lo que le permite a la compañía detectar riesgos de seguridad potenciales antes de la implementación en producción. “La DSOP demostró que podemos lograr un cumplimiento del 100 % de las políticas de seguridad”, dice Durand. “Además, con la DSOP, podemos controlar la configuración de seguridad de una aplicación en un entorno que no sea de producción, una estrategia mucho menos costosa desde el punto de vista de los recursos si lo comparamos con el hallazgo de un problema con posterioridad a la fase de implementación”.
Compatibilidad con el desarrollo ágil. La DSOP funciona en su totalidad con una modalidad tipo autoservicio. Los equipos de desarrollo la pueden ejecutar en cualquier momento para garantizar que sus aplicaciones estén listas para entornos de producción, en vez de transferir una aplicación y enterarse con posterioridad que era necesario implementar cambios de configuración. “La DSOP está completamente automatizada y se integra con nuestra canalización de DevOps para admitir un desarrollo ágil”, dice Durand. “Además, con la DSOP, estamos creando un sistema de retroalimentación que informa a los desarrolladores de CloudFormation acerca de prácticas recomendadas y profundiza sus conocimientos acerca de cómo implementar una infraestructura de AWS segura”.
Creación e implementación rápidas de nuevas reglas de seguridad. Como parte del trabajo conjunto, Stelligent pasó algunas semanas capacitando al equipo de Durand acerca de cómo realizar el mantenimiento de la DSOP. El equipo puede escribir reglas de seguridad nuevas de manera rápida y sencilla y, a continuación, aplicarlas inmediatamente en la canalización. “La transferencia de conocimiento fue un aspecto clave de este trabajo conjunto”, cuenta Durand. “De hecho, Stelligent cumplió todas nuestras expectativas relacionadas con el proyecto; recibimos exactamente lo que pedimos, la calidad del trabajo fue excelente y en la actualidad nuestro equipo conoce la DSOP a la perfección y es capaz de mejorarla por su cuenta”.
Escalabilidad en toda la empresa. Como la DSOP está totalmente automatizada y se ejecuta a sí misma en AWS, Verizon puede ampliar su uso a toda la empresa para incluir la cantidad de aplicaciones que la compañía planee migrar a la nube. “Si realizáramos las mismas verificaciones manualmente, el proceso nos insumiría una gran cantidad de recursos y continuaría existiendo la posibilidad de que ocurriesen errores humanos”, dice Durand.
Durand concluye diciendo que “Los principales beneficios de la DSOP son simples: nos permite evitar el uso de infraestructuras inseguras antes de una implementación en vez de detectar problemas con posterioridad a esta etapa. Continuamos realizando verificaciones manuales, por supuesto, y no estamos observando problemas de configuración de seguridad en las áreas en las que se utilizó la DSOP”.
Stelligent, un socio consultor preferente de la red de socios de AWS (APN), es una compañía de servicios tecnológicos que presta servicios administrados y de automatización de DevOps en AWS.
Para obtener más información acerca de la manera en la que Stelligent puede ayudar a su empresa a crear y administrar su entorno de AWS, consulte la ficha de Stelligent en el directorio de socios de AWS.
Más información sobre los servicios para DevOps en AWS.