Las organizaciones utilizan cada vez más identidades no humanas para automatizar procesos y flujos de trabajo empresariales clave. Estas identidades pueden incluir cuentas de servicio, pipelines de integración continua y entrega continua (CI/CD), contenedores, microservicios y herramientas de orquestación. También pueden incluir automatización robótica de procesos (RPA) (bots de software que imitan acciones humanas) y, más recientemente, agentes de IA.
Al igual que los usuarios humanos, las entidades no humanas necesitan credenciales, o “secretos”, para autenticarse en sistemas y servicios y acceder a los recursos de la organización, a menudo con privilegios elevados. Por ejemplo, un proceso de copia de seguridad automatizado podría leer archivos confidenciales y modificar la configuración del sistema.
Para los hackers, estas cuentas privilegiadas no humanas son objetivos de alto valor. Permiten a los actores de amenazas abusar de los derechos de acceso para robar datos y dañar sistemas críticos, todo mientras evaden la detección. Según el IBM® X-Force Threat Intelligence Index, el secuestro de cuentas válidas es el segundo vector de ciberataque más común, representando el 32 % de todos los incidentes a los que X-Force respondió el año pasado.
Los sistemas de gestión de secretos ayudan a combatir estas ciberamenazas, lo que permite a las organizaciones crear, controlar y proteger los secretos que utilizan entidades no humanas para acceder a los recursos de TI. Con las herramientas de gestión de secretos, los equipos de TI pueden proteger las credenciales no humanas a lo largo de su ciclo de vida, optimizando los flujos de trabajo automatizados y evitando filtraciones de datos, manipulación, robo y otros accesos no autorizados.
Un secreto es una credencial digital contenida dentro de una aplicación o servicio que permite a los usuarios no humanos comunicarse y realizar acciones en un servicio, base de datos, aplicación u otro recurso de TI. Los secretos ayudan a las organizaciones a fortalecer su postura de seguridad al garantizar que solo los usuarios autorizados tengan acceso a datos y sistemas confidenciales.
Algunos ejemplos de secretos incluyen, entre otros:
Únase a los líderes de seguridad que confían en el boletín Think para obtener noticias seleccionadas sobre IA, ciberseguridad, datos y automatización. Aprende rápido con tutoriales de expertos y documentos explicativos, que se envían directamente a su bandeja de entrada. Consulte la Declaración de privacidad de IBM.
La gestión de secretos es una solución de seguridad crítica que ayuda a las organizaciones a almacenar, controlar y rotar de forma segura credenciales confidenciales y otros secretos, como contraseñas, claves de API y tokens.
Es una de las cuatro capacidades principales de la gestión de accesos privilegiados (PAM), un subconjunto de la gestión de identidad y acceso (IAM) que se centra en proteger cuentas y usuarios privilegiados.
Las otras tres capacidades de la PAM incluyen:
La gestión de secretos es importante para la metodología DevOps, que enfatiza el desarrollo y la entrega de software automatizados y continuos.
Los equipos de DevOps suelen utilizar múltiples herramientas de gestión de configuración u orquestación para gestionar ecosistemas digitales completos, flujos de trabajo y endpoints. Las herramientas a menudo utilizan la automatización y scripts que requieren acceso a secretos para iniciarse. Sin un servicio de gestión de secretos de nivel empresarial, el uso desordenado de los secretos podría aumentar la vulnerabilidad del sistema.
Muchas organizaciones integran funciones de gestión de secretos en el pipeline de CI/CD. Esto ayuda a garantizar que todas las partes móviles (desarrolladores, herramientas y procesos automatizados) tengan acceso seguro a los sistemas confidenciales que necesitan cuando lo necesitan.
La gestión de secretos se considera un componente central de DevSecOps, una evolución de la metodología DevOps que integra y automatiza continuamente la seguridad a lo largo del ciclo de vida de DevOps.
El proceso de gestión de secretos generalmente depende de herramientas de gestión de secretos. Estas herramientas, que pueden desplegarse on premises o como servicios en la nube, pueden ayudar a centralizar, automatizar y agilizar la creación, el uso, la rotación y la protección de secretos.
Existen soluciones de gestión de secretos tanto comerciales como de código abierto. Las opciones de código abierto incluyen Infisical, mientras que las opciones comerciales incluyen CyberArk Conjur (que también tiene una edición de código abierto) y HashiCorp Vault (de HashiCorp, una empresa de IBM).
Algunas capacidades comunes de las herramientas de gestión de secretos incluyen:
Con un servicio de gestión de secretos de nivel empresarial, las organizaciones pueden administrar múltiples tipos de secretos en un único panel.
En lugar de dejar que los usuarios individuales gestionen los secretos en pequeños silos, las soluciones de gestión de secretos pueden almacenar los secretos en una ubicación central y segura denominada "bóveda secreta".
Cuando un usuario autorizado necesita acceder a un sistema confidencial, puede obtener el secreto correspondiente del almacén. La herramienta de gestión de secretos puede verificar y autorizar automáticamente la solicitud y liberar el secreto necesario para autenticar el flujo de trabajo.
La estandarización puede ayudar a prevenir la expansión secreta. La dispersión de secretos se produce cuando los secretos se almacenan en varios lugares de una organización, a menudo codificados en aplicaciones o como texto sin formato en un documento compartido. La proliferación de secretos dificulta proteger los secretos de actores maliciosos y rastrear cómo se utilizan los secretos.
Los secretos creados en un gestor de secretos pueden ser estáticos o dinámicos. Un secreto estático es un secreto que permanece válido durante mucho tiempo, generalmente hasta que se modifica manualmente o alcanza una fecha de vencimiento predeterminada.
En cambio, un secreto dinámico es creado por el gestor de secretos a petición, en el momento en que se necesita. Los secretos dinámicos caducan con bastante rapidez. Incluso pueden ser de un solo uso.
Un caso de uso para un secreto dinámico sería proteger un recurso confidencial, como una base de datos o un entorno de nube como AWS o Microsoft Azure, generando dinámicamente claves API cada vez que se lee o se accede a ese recurso. Esto ayuda a garantizar que los actores maliciosos no puedan robar y reutilizar las claves API.
Muchos gestores de secretos también pueden automatizar la rotación de secretos, es decir, el acto de cambiar los secretos con regularidad. La rotación de secretos se puede automatizar según lo programado o bajo demanda sin necesidad de volver a implementar o interrumpir las aplicaciones. El tiempo de vida (TTL) o la duración de la concesión se pueden definir para un secreto en su creación para acortar la cantidad de tiempo que existe el secreto.
Los secretos solo se pueden conceder a entidades o grupos específicos para organizar y restringir el acceso. El acceso a los secretos suele concederse mediante el principio de privilegio mínimo, es decir, a cada proceso se le concede únicamente el conjunto de privilegios más restrictivo necesario para realizar una tarea. Los usuarios solo pueden acceder a los secretos necesarios para realizar sus tareas autorizadas.
Las arquitecturas de confianza cero (que se rigen por el principio de “nunca confiar, siempre verificar”) suelen regular el acceso a los sistemas de gestión de secretos. Esto ayuda a garantizar que cada solicitud de un secreto se autentique y autorice, incluso si se origina desde dentro de la red.
Muchos administradores de secretos pueden rastrear cómo los usuarios y las aplicaciones interactúan con los secretos y los utilizan para verificar que los secretos se manejen adecuadamente a lo largo de sus ciclos de vida. Esto permite a la organización realizar un monitoreo casi en tiempo real de los eventos de acceso secreto, incluidas las autenticaciones y autorizaciones al administrador de secretos.
El administrador de secretos puede denegar rápidamente los intentos no autorizados de ver o usar secretos y revocar el acceso cuando sea necesario. Esto puede ayudar a habilitar una corrección más rápida antes de que los hackers, las amenazas de usuarios internos y otros actores maliciosos puedan causar daños.
Una potente herramienta de automatización de secretos conservará registros de auditoría detallados que registran los eventos de autenticación de usuarios y de acceso a secretos.
El monitoreo de secretos suele ser mucho más fácil de lograr una vez que una organización comienza a utilizar herramientas dinámicas de automatización de secretos. Estos registros de auditoría detallados ayudan a verificar el uso autorizado de los datos confidenciales o a detectar y localizar posibles amenazas.
Más allá de utilizar soluciones de gestión de secretos, muchas organizaciones siguen prácticas básicas comunes en sus procesos de gestión de secretos. Estas prácticas incluyen:
A medida que los ecosistemas de TI se vuelven más complejos, la gestión de secretos se vuelve cada vez más difícil de controlar de manera efectiva. Los desafíos comunes de la gestión de secretos pueden incluir:
Los ecosistemas descentralizados en los que administradores, desarrolladores y usuarios gestionan sus secretos por separado pueden introducir riesgos, ya que es posible que las brechas de seguridad y el uso de secretos no se monitoreen o auditen adecuadamente.
Las soluciones centralizadas de gestión de secretos pueden ofrecer a las organizaciones más visibilidad y control sobre los secretos.
Cuando las contraseñas u otros secretos se incrustan como texto sin formato en el código fuente o scripts, los atacantes pueden descubrirlos fácilmente y utilizarlos para acceder a información confidencial.
Los secretos codificados pueden aparecer en muchos lugares, incluyendo cadenas de herramientas de CI/CD, repositorios de código, dispositivos del Internet de las cosas (IoT), plataformas de orquestación de contenedores como Kubernetes, servidores de aplicaciones, escáneres de vulnerabilidades y plataformas de automatización de procesos robóticos (RPA).
La rotación regular de secretos puede ayudar a prevenir el robo y el abuso, pero la rotación puede ser inconsistente o ineficaz sin un sistema de gestión de secretos. Si un secreto permanece sin cambios durante demasiado tiempo, un hacker podría desbloquearlo mediante conjeturas de prueba y error o un ataque de fuerza bruta.
Cuanto más tiempo se utilice una contraseña, más usuarios tendrán acceso y mayores serán las posibilidades de una filtración.
El crecimiento de los sistemas de TI puede provocar una proliferación de secretos, con secretos repartidos por muchas partes aisladas del sistema. La proliferación de secretos puede ser especialmente preocupante en los ecosistemas multinube híbridos, donde las organizaciones mezclan entornos de nube pública y nube privada entregados por múltiples proveedores de la nube.
Las organizaciones pueden tener miles, incluso millones, de secretos en todas sus aplicaciones nativas de la nube, contenedores, microservicios y otros recursos. Esta proliferación crea una enorme carga de seguridad y amplía la posible superficie de ataque.
En todos los servicios, la visibilidad puede ser limitada y la gestión de secretos puede volverse difícil de manejar rápidamente si se realiza un seguimiento manual o mediante sistemas dispares. La falta de un servicio centralizado de gestión de secretos podría dificultar o imposibilitar la aplicación de una higiene adecuada de los secretos.
Cuando una organización carece de un sistema de gestión de secretos, los secretos pueden compartirse manualmente, por ejemplo, a través de correos electrónicos o mensajes de texto, donde los actores de amenazas pueden interceptarlos.