El panorama informático empresarial actual se caracteriza por una transformación digital continua y una generación de datos de proporciones épicas. Dado que el trabajo remoto y móvil es la nueva norma en un mundo post-pandémico, la movilidad y la agilidad se han convertido en impulsores esenciales de la continuidad del negocio en la empresa.
En un esfuerzo por automatizar e integrar todas las funciones empresariales posibles, centralizar y acelerar el flujo de datos e información, mejorar la productividad y ofrecer una mejor experiencia al cliente, las organizaciones están construyendo entornos DevOps ágiles con complejos modelos operativos híbridos multicloud.
Sin embargo, la gran movilidad y los datos oportunos conllevan una gran responsabilidad. Las empresas se enfrentan a retos cada vez mayores a la hora de mantener la seguridad de los datos, los servicios y la información personal identificable (PII). A pesar de los avances tecnológicos, seguimos viendo cifras récord de violaciones de datos año tras año.
¿Cómo pueden las empresas hacer evolucionar sus métodos de almacenamiento, gestión y protección de datos para asegurarse de que los empleados tienen una forma sencilla de acceder a los recursos digitales al tiempo que refuerzan la seguridad de toda la infraestructura informática?
La respuesta está en la gestión eficaz de los secretos.
¿Qué es la gestión de secretos y por qué es necesaria?
La gestión de secretos es el conjunto adecuado de herramientas y mejores prácticas utilizadas para almacenar, acceder y gestionar de forma centralizada y segura las credenciales de autenticación digital (o "secretos") a lo largo de todo su ciclo de vida. Los secretos son elementos de datos utilizados en la autenticación y la autorización: incluyen contraseñas, claves de cifrado públicas y privadas, claves SSH, API, tokens y certificados. Tanto las máquinas como los humanos utilizan secretos para autenticarse y comunicarse.
Pero, en primer lugar, ¿por qué se necesita la gestión de secretos?
Con el cambio universal a la infraestructura híbrida multi-nube y la dependencia de la contenedorización de aplicaciones, la necesidad de que tanto las máquinas como las personas accedan continuamente a los sistemas y los datos ha crecido sustancialmente. Por ejemplo, cada vez más aplicaciones deben acceder continuamente a diferentes fuentes de datos, servicios en la nube y servidores, a menudo con diferentes tipos de credenciales necesarias para cada recurso. Esto ha creado una necesidad exponencial de secretos en todo el proceso de DevOps.
Lo que hace que sea difícil es que los desarrolladores codifican con frecuencia varios secretos en el código de la aplicación o del microservicio, en los scripts, en las herramientas de automatización y en los repositorios de código, que residen en varias infraestructuras. Y lo que es peor, estos códigos se encuentran en distintas fases de desarrollo con un riesgo real de ser mal gestionados y desprotegidos. El resultado es una falta general de control e integración de los secretos, lo que lleva a lo que se denomina en los círculos de seguridad "dispersión de secretos".
El problema no termina ahí. Los secretos que se guardan en las plataformas en la nube que realizan integración continua/entrega continua (CI/CD) deben, por su naturaleza, gestionar y permitir el acceso a otras máquinas y software. Para ello, necesitan almacenar secretos y claves de firma (utilizadas para sellar el código y las actualizaciones de software), que a menudo se almacenan en ubicaciones no seguras, como el portátil de un desarrollador o un servidor de compilación.
La dispersión de los secretos no sólo dificulta el seguimiento y la gestión de las credenciales, sino que también es vulnerable a la piratería informática. De hecho, las credenciales robadas representan casi la mitad de todas las violaciones de datos, según un informe de Verizon.
Muchos hacks recientes, incluidos los de la cadena de suministro de software, se aprovechan de los secretos que se han colocado en el código, que de nuevo se almacena en repositorios de fácil acceso como GitHub. De hecho, GitHub ha detectado recientemente más de 700.000 posibles fugas de credenciales en miles de repositorios privados, listos para ser utilizados.
Los ejemplos siguen llegando. Un ataque a la cadena de suministro de software recientemente expuesto secuestró bibliotecas populares de PHP y Python para robar claves de AWS. En otro caso, se descubrió que un servicio de uso común que ayuda a los desarrolladores de código abierto a escribir y probar software estaba filtrando miles de tokens de autenticación y otros secretos, permitiendo a los hackers acceder a las cuentas privadas de los desarrolladores en Docker, Github, AWS y otros repositorios de código.
Pero, ¿no hay ya un millón de métodos para proteger contraseñas, claves y otras credenciales?
Los hay. Y eso es parte del problema.
Desafíos en la gestión de secretos
En las soluciones de seguridad actuales existe una considerable ineficacia y duplicación en la gestión de secretos. Algunos de estos retos son
Despliegue de secretos:
El mundo se está desplazando de las instalaciones a la nube, y los secretos también. Los tres grandes proveedores de servicios en la nube (y otros) ofrecen sus propias soluciones de gestión de secretos, que la mayoría de las empresas aceptan por defecto, simplemente por falta de una solución mejor: ¿qué podría ser más seguro que la propia plataforma del proveedor?
Pero con una arquitectura híbrida multicloud en el centro de la escena (es el único modelo operativo de TI que está creciendo en adopción), la mayoría de los equipos de DevOps se encuentran tratando con múltiples entornos repletos de microservicios y contenedores para diferentes cargas de trabajo. Estos, a su vez, tienen miles de componentes de máquina a máquina que se comunican entre sí, lo que lleva a un número alucinante de claves, tokens y otros secretos en circulación.
La explosión y descentralización de los secretos es una enorme carga operativa para los administradores y los profesionales de DevOps. Las innumerables soluciones de nube y virtualización disponibles hoy en día permiten a los usuarios crear y destruir máquinas virtuales y aplicaciones a gran escala. No hace falta decir que cada una de estas instancias de máquinas virtuales viene con su propio conjunto de secretos que necesitan ser gestionados. Además, las claves SSH pueden ascender a millones en las organizaciones empresariales. Además, los trabajos de Ansible, los contenedores de Kubernetes y las rutinas diarias por lotes suelen tener contraseñas que necesitan rotación.
Todos estos sistemas no pueden acceder a los recursos de seguridad que son externos a su entorno. No existe un plano de control unificado que pueda ayudarle a gestionar múltiples repositorios secretos almacenados en diferentes plataformas.
Visibilidad insuficiente:
Los secretos estáticos localizados en diferentes entornos (como la nube, on-prem, edge o híbrido) son gestionados por diferentes individuos, equipos y administradores, creando "islas de secretos". Esto conduce inevitablemente a problemas de auditoría y a lagunas de seguridad.
Complejidad de las soluciones de bóveda:
Debido a la gran cantidad de herramientas y plataformas incumbentes y heredadas (tanto DevOps como no DevOps) y el enorme número de extensiones para cada una de ellas, las soluciones de bóveda on-prem no funcionan bien en muchos casos. Además, es difícil configurar los almacenes de acuerdo con la infraestructura subyacente de computación, almacenamiento y redes en un entorno híbrido. La necesidad de actualizaciones frecuentes no hace más que aumentar la complejidad de los almacenes locales.
Los almacenes basados en la nube no son mejores. Una gran señal de alarma es que estas ofertas son propiedad del proveedor y sólo admiten cargas de trabajo que se ejecutan dentro de su propio entorno y ecosistema, por lo que, de nuevo, no son una buena opción para las arquitecturas de nube híbrida. Incluso si sólo se utiliza un proveedor de nube principal, un entorno de nubes múltiples, sólo conduce a la expansión de las bóvedas. Otro problema es que las claves maestras se comparten con el proveedor de la nube. Esto significa que un administrador, un pirata informático o una agencia gubernamental podría acceder a ellas y usted estaría indefenso.
La solución perfecta de gestión de secretos...
puede no existir. Pero eso no significa que no pueda crear políticas de Gestión de Identidades y Accesos (IAM) infalibles que mantengan a su empresa a salvo de cualquier amenaza conocida y de cualquier tipo de amenaza conocida.
IAM es el nuevo perímetro: es fundamental para una estrategia de seguridad moderna. Validar la identidad (autenticación) de los usuarios humanos y de las máquinas y justificar su necesidad de acceder al recurso (autorización) es cada vez más complejo con el aumento de la automatización y el número de cargas de trabajo dinámicas que fluctúan con la demanda.
Además, la naturaleza de la autenticación cambia constantemente. Los módulos de aplicaciones y bases de datos ya no se limitan a un gran bloque de código como antes. Más bien, son una integración compleja y dinámica de microservicios y subcomponentes, cada uno de los cuales tiene su propio proceso de autenticación.
Esto es lo que las empresas que operan en un entorno multicloud o tienen una mezcla híbrida de sistemas on-prem, privados y de nube pública deben buscar en una plataforma o solución de gestión de secretos:
Funciona en configuraciones híbridas, multi-nube y multi-ubicación: Este es quizás el factor más esencial para las empresas. Siempre que sea posible, elija una plataforma que se integre perfectamente con flujos de trabajo multiplataforma y multientorno utilizando tecnología nativa de la nube. Su solución de gestión de secretos debe admitir la autenticación y verificación de máquina a máquina y de persona a máquina habilitadas por IAM para diferentes tipos de secretos, como certificados SSH, claves API, certificados x.509, claves de cifrado, etc., a fin de imponer el cumplimiento continuo de la seguridad.
Funciona con diferentes protocolos de autenticación, idiomas y dispositivos: Es importante que su herramienta de gestión de secretos sea compatible con la autenticación humana, de hardware y de software a través de proveedores de identidad de terceros mediante todas las interfaces principales, (sin duda) incluyendo una línea de comandos, GUI, REST API y SDKs para los principales idiomas. Ni que decir tiene que debe facilitar los secretos dinámicos e integrarse con las plataformas comunes basadas en la nube, como Docker, Kubernetes, Terraform, Ansible y Jenkins, para que las operaciones de DevOps no se vean interrumpidas.
Luego está la cuestión del escalado. Si quiere crecer a "escala de la nube" y ampliar su infraestructura geográfica o tecnológica, necesita poder escalar sus capacidades de gestión de secretos para dar soporte a todas las herramientas y complementos existentes y futuros.
Se puede gestionar a través de una plataforma SaaS unificada: Los equipos de seguridad de hoy en día necesitan una visibilidad y un control centralizados de la autenticación de todos los usuarios, aplicaciones y dispositivos en todos los entornos utilizados por la organización. "Una herramienta intuitiva de gestión de secretos basada en SaaS con visibilidad en tiempo real de cada instancia de uso de secretos, registro de auditorías y análisis robustos es la necesidad del momento según todos los jefes de seguridad con los que he hablado", dice Hareven.
Resuelve el problema del secreto cero y aplica el modelo de confianza cero: La gestión de contraseñas es una función muy común hoy en día. Una persona puede tener una hoja de cálculo o un documento en el que almacena todas las contraseñas de las distintas aplicaciones o paneles de control que utiliza. Sin embargo, para abrir esta hoja de cálculo, probablemente tendrían otra contraseña. Y también necesitarían credenciales de usuario para iniciar sesión en el sistema operativo y acceder a la hoja de cálculo. Multiplique este escenario por los infinitos tipos de secretos que tiene hoy en día, y obtendrá el problema del "secreto cero".
Tu solución de gestión de secretos debería proporcionarte un conjunto de credenciales iniciales con un token o clave efímera para la autenticación continua en la máquina principal, de modo que el "secreto cero" nunca se vea comprometido.
Esto se enmarca dentro de la premisa de la arquitectura de confianza cero (ZTA), que sigue el principio del mínimo privilegio (PoLP), según el cual a los usuarios y aplicaciones se les concede un acceso "justo a tiempo" y granular a un número específico de recursos durante un periodo de tiempo concreto, sólo después de "justificar" su petición al administrador. Estos privilegios se conceden de forma dinámica y caducan automáticamente tras el plazo preestablecido.
Guarde sus secretos
La plataforma de gestión de secretos ideal potencia los DevOps, la migración a la nube y la transformación digital en la empresa al permitir a los diferentes equipos acceder a los recursos que necesitan y gestionar sus secretos de forma autónoma. Con una solución suministrada "como servicio" desde la nube, puede reducir los gastos generales de mantenimiento, mejorar la disponibilidad y escalar sus operaciones para cumplir sus objetivos de crecimiento organizativo.
Fuente: CIO
Comments