El protocolo Secure Shell (SSH) es ampliamente utilizado por los administradores de sistemas, proporcionando una forma segura de acceder a sistemas críticos remotos, dispositivos y datos a través de una red no segura. Sin embargo, su uso generalizado y el acceso privilegiado plantean la pregunta: “¿cuál es la mejor manera de gestionar las claves SSH?”
Con la proliferación de tecnologías emergentes como el IoT y la nube, la importancia de las claves SSH ha aumentado drásticamente. Estas claves se implementan ahora en todas las organizaciones, no solo para permitir un acceso remoto seguro, sino también para proteger las sesiones máquina a máquina en entornos altamente automatizados.
¿Desea omitir el blog y escucharlo directamente de los expertos? Simplemente haga clic en “Registrarse” a continuación para unirse a nuestro seminario web sobre los riesgos de la proliferación de claves SSH y las mejores prácticas para recuperar el control.
Claves SSH mal gestionadas
Sin embargo, las claves SSH mal gestionadas expanden rápidamente la superficie de ataque de una organización y crean oportunidades de compromiso por parte de actores maliciosos. A medida que los ciberdelincuentes buscan cada vez más claves SSH para utilizar el acceso de confianza que estas proporcionan, el riesgo de ataque es alto.
Incluso una sola clave es suficiente para que los atacantes obtengan acceso privilegiado no detectado a sistemas y datos críticos. Una vez comprometidas, pueden moverse lateralmente dentro de la organización, encontrar claves adicionales, eludir los controles de seguridad para inyectar datos fraudulentos, subvertir el Software de cifrado, instalar malware persistente o incluso destruir sistemas.
Las recientes campañas coordinadas de malware y botnets a gran escala (por ejemplo, TrickBot, FritxFrog, Lemon_Duck, etc.) son señales de advertencia de la amenaza real que las claves SSH mal utilizadas representan en el panorama de la seguridad.
Hubo un tiempo en que las claves SSH mal gestionadas podían pasar desapercibidas. Sin embargo, hoy en día los reguladores están mucho más preocupados por el acceso privilegiado y la gestión de claves que nunca. Cualquier error puede conducir a un acceso que viole los mandatos de cumplimiento como PCI DSS, HIPAA, GDPR, CCPA o NIST 800-53. Todas estas regulaciones exigen controlar quién puede acceder a qué sistemas y datos.
La seguridad de SSH es fundamental
Por lo tanto, es imperativo mantener estándares sólidos y mejores prácticas para asegurar las claves SSH. El NIST ha publicado el informe NISTIR 7966 , que ofrece orientación a organizaciones y empresas sobre los controles de seguridad adecuados para las implementaciones de SSH. Las recomendaciones del NIST enfatizan el inventario de claves SSH, la identificación de vulnerabilidades, la remediación de riesgos, el monitoreo continuo y, por supuesto, la rotación de claves.
Antes de profundizar en la mejor manera de gestionar las claves SSH, es importante destacar dos cuestiones.
En primer lugar, estas prácticas serán ineficaces si no están respaldadas por políticas claras que consoliden los requisitos operativos y de seguridad. Esto significa abordar las implementaciones de SSH existentes y asegurar que las nuevas implementaciones de SSH se desplieguen y rastreen correctamente.
En segundo lugar, asegurar las claves SSH significa automatizar todos los procesos relacionados. Dada la gran cantidad de claves SSH que poseen las organizaciones, los procesos manuales son inviables. Todos los procesos relacionados con la gestión de claves SSH pueden optimizarse automatizando el ciclo de vida de las claves SSH. Lo más importante es que la automatización puede mejorar significativamente la seguridad, la eficiencia y la disponibilidad.
A continuación, analizaremos las mejores prácticas para la gestión de claves SSH.
01 Inventario de claves SSH
Muchas organizaciones poseen miles de claves SSH desconocidas y no rastreadas que otorgan acceso a sistemas de misión crítica. Las claves heredadas y huérfanas existentes representan un riesgo de seguridad considerable, difícil de mitigar si no se descubren e inventarían.
Descubrir las claves SSH implica crear un inventario de la ubicación de cada par de claves SSH y sus relaciones de confianza. El inventario debe ser evaluado posteriormente con respecto a las políticas de seguridad corporativas definidas. Además, las claves SSH inventariadas deben asignarse a sus propietarios.
Mapear todas las relaciones de confianza que resultan de las claves de identidad implementadas, y requerir la revisión y aprobación de sus propietarios, es una parte crucial del proceso de inventario. Si no se comprenden adecuadamente, estas cadenas de confianza pueden ser utilizadas por actores criminales para infiltrarse y moverse sin ser detectados entre sistemas.
Cualquier clave identificada que no haya sido aprobada podría ser una indicación de una puerta trasera dejada por un atacante y debe eliminarse de inmediato.
02 Identificar vulnerabilidades
El siguiente paso para establecer una implementación segura de SSH es identificar cualquier debilidad y vulnerabilidad en el esquema existente. Por lo tanto, las organizaciones deben realizar una auditoría exhaustiva de sus procesos y procedimientos de gestión de claves SSH existentes.
Las vulnerabilidades en la implementación de SSH pueden abarcar desde debilidades de configuración (uso de algoritmos de cifrado débiles) hasta claves con acceso root innecesario. Dichas vulnerabilidades pueden ser fácilmente explotadas para obtener acceso no autorizado a los sistemas corporativos.
Además, la auditoría debe identificar cualquier control de acceso configurado incorrectamente. Estos controles suelen configurarse a través de una plataforma de Gestión de Identidad y Acceso (IAM) o de Gestión de Acceso Privilegiado (PAM) y son un activo poderoso para cualquier programa de seguridad.
Sin embargo, los controles de acceso configurados incorrectamente pueden habilitar cuentas de acceso SSH con privilegios elevados o acceso no autorizado a otras cuentas.
Finalmente, la auditoría debe descubrir cualquier clave no utilizada que permanezca inactiva en la estructura de la organización esperando ser explotada. Crear una clave de “puerta trasera” y añadirla al archivo de claves autorizadas podría permitir a un atacante eludir cualquier sistema de gestión de acceso privilegiado.
03 Remediar riesgos
La remediación es importante para cerrar brechas y proteger a su organización contra cualquier atacante que busque explotar sus claves SSH vulnerables para causar estragos.
Además, la remediación es necesaria para el cumplimiento normativo. Todas las regulaciones de seguridad y privacidad exigen transparencia y rendición de cuentas al proteger sistemas y datos sensibles. Identificar a los usuarios autorizados y sus derechos de acceso, aplicar el principio de mínimo privilegio y gestionar las claves autorizadas son requisitos predominantes.
Su plan de remediación puede ser bastante laborioso y requerir un esfuerzo considerable, pero es fundamental para la seguridad y el cumplimiento. El proyecto podría incluir las siguientes acciones, dependiendo de los hallazgos del inventario de claves y la identificación de vulnerabilidades:
- Eliminar cualquier clave huérfana, ya que pueden ser “claves de puerta trasera”
- Eliminar cualquier clave de identidad duplicada para reducir la superficie de ataque
- Asegurarse de que todas las claves de identidad interactivas estén protegidas con una frase de contraseña.
- Reemplazar todas las claves que no cumplan con los estándares de la industria en cuanto a longitud de clave y algoritmo de cifrado.
- Asignar propietarios (aplicaciones, procesos de negocio, individuos) a todas las claves que otorgan acceso a servidores.
- Monitorizar los datos de registro para determinar qué claves no se están utilizando y eliminar cualquier clave no utilizada que no esté aprobada para su retención.
04 Monitorizar continuamente
El propósito de la monitorización continua es asegurar que todas las políticas establecidas para la gestión del ciclo de vida de las claves SSH se sigan y se apliquen. La monitorización también es importante para detectar accesos no autorizados realizados como parte de una actividad criminal utilizando claves de puerta trasera.
A continuación, se presentan algunos ejemplos de lo que se debe buscar:
- Detectar claves SSH legítimas que no se estén utilizando y proponer su eliminación para remediar concesiones de acceso innecesarias.
- Detectar y supervisar conexiones desde ubicaciones remotas y asegurar que estén debidamente aprobadas.
- Detectar conexiones que utilizan una clave autorizada desde hosts no aprobados, lo que podría implicar credenciales comprometidas.
- Identificar claves que se utilizan fuera del entorno gestionado como «claves externas» que requieren rotación manual.
Cualquier desviación de la configuración SSH aprobada debe identificarse en un panel o informe para iniciar acciones de remediación.
05 Aplicar la rotación de claves
Finalmente, la mejor manera de gestionar las claves SSH debe implicar la rotación de claves para minimizar los riesgos de credenciales robadas o comprometidas. La vida útil de las claves SSH debe ser limitada y las claves deben rotarse en un ciclo definido.
El ciclo de las claves debe estar claramente definido y de acuerdo con las políticas corporativas de seguridad y auditoría. Además, los propietarios de las claves deben prohibir el uso de las mismas frases de contraseña en varias cuentas.
Durante la rotación, se generan nuevas claves y se intercambian por las antiguas, mientras que las claves no utilizadas se eliminan. Este cambio constante de claves disminuye las posibilidades de que se utilicen claves comprometidas para acceder a los servidores remotos. La rotación de claves también es necesaria para cuestiones administrativas cuando los propietarios de las claves rotan a otras funciones o abandonan la organización.
La automatización es clave
La rotación de claves debe realizarse antes del final de un «período criptográfico» preconfigurado. Es importante asegurar que cualquier clave nueva o rotada se despliegue automáticamente en los servidores basándose en las políticas de acceso controladas por el equipo de seguridad. Una consola de autoservicio puede simplificar el proceso para los administradores de sistemas, al tiempo que automatiza el despliegue en el backend, permitiéndoles actuar rápidamente sin dejar de cumplir los requisitos de seguridad.
La clave para una estrategia eficaz de gestión del ciclo de vida de las claves SSH es automatizar y optimizar los procesos existentes. La automatización no solo asegura su implementación SSH, minimizando los riesgos de una mala gestión, sino que también elimina de la ecuación los procedimientos manuales propensos a errores. En grandes organizaciones que poseen miles de claves SSH, la gestión manual simplemente no es factible.
Obtenga información práctica
¿Listo para implementar una nueva estrategia de gestión de claves SSH y prevenir el riesgo de la proliferación de claves SSH en su organización? Regístrese en nuestro próximo seminario web – Caza de fantasmas: Cómo encontrar y gestionar sus claves SSH.
