Las organizaciones utilizan cada vez más identidades no humanas para automatizar procesos y flujos de trabajo clave del negocio. 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 ello 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, permitiendo a las organizaciones crear, controlar y proteger los secretos que las entidades no humanas utilizan para acceder a los recursos de TI. Con herramientas de gestión de secretos, los equipos de TI pueden proteger credenciales a lo largo de su ciclo de vida, optimizando los flujos de trabajo automatizados mientras previenen vulneraciones de datos, manipulaciones, robos 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 reforzar su posición de seguridad al garantizar que solo los usuarios autorizados tengan acceso a datos y sistemas confidenciales.
Los ejemplos de secretos incluyen, pero no se limitan a:
Ú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. Aprenda rápidamente de tutoriales de expertos y artículos explicativos, directamente en 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 renovar de forma segura las 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 identidades y accesos (IAM) que se centra en proteger cuentas y usuarios privilegiados.
Las otras tres capacidades de 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 a menudo utilizan múltiples herramientas de gestión de configuración u orquestación para gestionar ecosistemas digitales completos, flujos de trabajo y endpoints. Estas herramientas suelen utilizar procesos automatizados y scripts que requieren acceso a secretos para ejecutarse. Sin un servicio de gestión de secretos de nivel empresarial, el uso aleatorio de 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 sensibles 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 suele basarse en herramientas de gestión de secretos. Estas herramientas, que pueden implementarse en entornos 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 gestionar varios 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 secretas".
Cuando un usuario autorizado necesita acceder a un sistema sensible, puede obtener el secreto correspondiente de la bóveda. 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 proliferación de secretos. 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 de un secreto dinámico sería proteger un recurso confidencial, como una base de datos o un entorno en la 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 malintencionados no puedan robar y reutilizar las claves de 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 zero trust, que “nunca confían, siempre verifican”, a menudo gobiernan 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 gestores 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 gestionen adecuadamente a lo largo de sus ciclos de vida. Esto permite a la organización realizar una monitorización casi en tiempo real de los eventos de acceso a secretos, incluidas las autenticaciones y autorizaciones al gestor de secretos.
Los gestores de secretos pueden denegar rápidamente los intentos no autorizados de ver o utilizar secretos y revocar el acceso cuando sea necesario. Esto puede contribuir a acelerar la corrección de los problemas antes de que los hackers, las amenazas internas y otros actores malintencionados puedan causar daños.
Una potente herramienta de automatización de secretos conservará registros de auditoría detallados que rastreen la autenticación de usuarios y los eventos de acceso a secretos.
La monitorización 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 validar el uso aprobado de secretos o a detectar y rastrear amenazas potenciales.
Además 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 informáticos se vuelven más complejos, la gestión de secretos resulta cada vez más difícil de controlar con eficacia. 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 monitoricen 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, incluidas las cadenas de herramientas de CI/CD, los repositorios de código, los dispositivos de Internet de las cosas (IoT), las plataformas de orquestación de contenedores como Kubernetes, los servidores de aplicaciones, los escáneres de vulnerabilidades y las plataformas de automatización robótica de procesos (RPA).
La rotación periódica de secretos puede ayudar a evitar robos y abusos, pero la rotación puede ser incoherente o ineficaz sin un sistema de gestión de secretos. Si un secreto permanece inalterado durante demasiado tiempo, un pirata informático podría desbloquearlo mediante conjeturas de ensayo 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 que se produzca 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 servicios en la nube.
Las organizaciones pueden tener miles, incluso millones, de secretos en todas sus aplicaciones nativas en 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, como a través de correos electrónicos o mensajes de texto, donde los actores de amenazas pueden interceptarlos.