Los desarrolladores de Uber han presentado un nuevo módulo para ayudar a los usuarios a habilitar la autenticación continua de claves SSH.
La empresa escribió el módulo para trabajar junto con otra herramienta, una Autoridad Certificadora SSH que diseñó, para mantener el stock de claves SSH públicas. Mientras que su CA es para uso interno, Uber liberó el código para el módulo de código abierto, llamado PAM_SSH, de forma gratuita en Github.
Según Peter Moody, un ingeniero de seguridad de sistemas con el equipo de ingeniería de Uber, la razón detrás de la creación de la herramienta era la inconstancia que se asocia con las llaves de SSH.
Las redes utilizan tradicionalmente las claves SSH para autenticar a los usuarios de un servidor SSH mediante una combinación de criptografía de clave pública y autenticación de tipo challenge-response. Las claves SSH no caducan como lo hacen los certificados SSL, para hacerlo estas deben ser revocadas.
Moody dijo a Threatpost que su equipo creó la herramienta porque no existía una alternativa de código abierto.
"No existían soluciones de código abierto que se ajustaran a nuestras necesidades, así que creamos nuestra propia Autoridad Certificadora (CA). Los certificados SSH nos permiten autoexpirar las claves, reducir los costos de mantenimiento y eliminar las advertencias de incompatibilidad de claves de host", dijo Moody.
Dado que las claves SSH técnicamente no caducan e invalidarlas puede ser engorroso, el departamento de ingeniería de Uber quería una manera más fácil de expirar automáticamente esas claves. La nueva Autoridad Certificadora SSH (CA-Uber SSH) de la empresa, o USSHCA, puede emitir certificados SSH a los empleados y también controlar cómo se utilizan. La CA puede realizar un seguimiento de esas claves SSH, además, puede permitir a la empresa habilitar la expiración automática de las claves y mejorar la autenticación de host.
"Los certificados SSH son ideales para autenticar a un usuario en un solo punto por tiempo, es decir, cuando acceden por primera vez a una máquina determinada. Después de ese punto, incluso si un certificado expira, la sesión de acceso permanecerá activa", escribió Moody.
PAM_SSH, libre para usar a través de una licencia MIT, puede autenticar a los usuarios basándose en la validez continua del certificado SSH de un usuario.
Cuando un usuario ejecuta un comando para obtener un certificado, está conectado a la CA, que realiza una conversación PAM (en este caso PAM_SSH) y envía ese agente SSH a la CA. Asumiendo que tiene éxito, la CA envía la clave SSH, junto con cualquier metadato, pudiendo ser: “período de validez, el usuario es válido para, las opciones permitidas”, de acuerdo con Moody.
PAM es un mecanismo que combina una serie de esquemas de autenticación de nivel inferior en una API de nivel superior.
El módulo es el último de una larga serie de herramientas de código abierto y libre que el departamento de ingeniería de Uber ha compartido con GitHub.
Para saber más acerca de este protocolo (SSH) te puede interesar el siguiente artículo.
Aviso legal |
Créditos |
Staff |
Administración
Copyright © Todos los derechos reservados
UNAM - CERT