¿Por qué no coinciden las huellas dactilares de SSH de gitlab SSH?

11

Intenté iniciar sesión en el gitlab de mi universidad a través de SSH. Como era de esperar, me advirtieron que el host no es conocido. Por lo tanto, traté de encontrar la clave de host SSH en la página de "configuración actual" en el manual. Sin embargo, encontré que la clave no coincide con la clave que SSH me muestra en la primera conexión.

Para demostrar esto, aquí puede encontrar la página correspondiente de "instance_configuration" para gitlab.com. Se dice que la huella digital RSA-SHA256 es

  

2fdd0c7dfa7d9381f847266c800eafc96f5866fe859c4f1cf87da885c82e333a

Usando el script que encontré en esta publicación de superusuario (o cuando se conecta a través de SSH por primera vez) Me dicen que el RSA-SHA256 para el host SSH es

  

ROQFvPThGrW4RuWLoL9tq9I9zJ42fK4XywyRtbOz / EQ

que es

  

44e405bcf4e11ab5b846e58ba0bf6dabd23dcc9e367cae17cb0c91b5b3b3fc44

en hexadecimal (y esperamos que coincida con lo que ves ... o no).

Mis preguntas: ¿No deberían ser iguales? ¿Me he perdido algo? ¿Cómo puedo verificar que la conexión SSH es segura?

    
pregunta HerpDerpington 24.06.2018 - 00:54
fuente

2 respuestas

3

Hay muchas razones por las que esto puede ocurrir:

  1. Ubicación de alojamiento. Gitlab se puede descargar y alojar en otro lugar. Las claves de host publicadas en la página de gitlab no significan nada si su universidad tiene su propia versión de gitlab. En ese caso, nunca vería la clave de host de gitlab; vería la clave de host para el servidor de su universidad, y la diferencia no tendría sentido. Tendría que preguntarle a la universidad cuál es su clave de anfitrión, y es muy poco probable que obtenga una respuesta de ellos.
  2. Información desactualizada La clave de host de Gitlab puede haber cambiado y simplemente se olvidaron de actualizar esa página de ayuda en consecuencia.
  3. MitM Alguien podría estar ejecutando un ataque MitM contra tu computadora y ha redirigido el tráfico de gitlab a su propio servidor malicioso.

Creo que vale la pena mencionar la opción # 1 porque no está del todo claro si la página de gitlab de tu universidad está alojada con gitlab o tu universidad.  Parece que está alojado en gitlab, pero no necesariamente (obviamente, la URL del repositorio debería dejarlo claro).

La posibilidad de MitM

De las tres opciones, el # 3 es el menos probable. Un ataque MitM exitoso en este caso puede ser difícil y tener pocos beneficios reales (para un atacante), tanto que no se me ocurriría considerarlo en circunstancias normales. Por lo tanto, a menos que esté intentando conectarse a un repositorio de gitlab remoto para poder transferir secretos de estado, es probable que solo esté tratando con las opciones # 1 o # 2.

También puede intentar verificar la probabilidad de MitM verificando la dirección IP del servidor al que se está conectando e intentando averiguar si pertenece a gitlab. Gitlab tiene una lista (probablemente también antigua) de sus direcciones IP:

enlace

No hay garantías de una coincidencia, incluso para una conexión gitlab válida debido a la posibilidad de que los documentos estén desactualizados. Además, no hay garantías porque una persona que ejecute un MitM exitoso podría posiblemente (dependiendo de los detalles) también falsificar una dirección IP.

Escenario más probable

En cualquier caso, MitM es (IMO) muy improbable, y como resultado solo haría lo tuyo. Debería poder descubrir lo suficientemente pronto si hay un problema. Es de suponer que se conectará al servidor de gitlab, encontrará los archivos que espera encontrar, copiará algunas cosas propias y luego podrá verificar con quien esté colaborando que recibió una copia de su trabajo. Si es así, definitivamente no hay nada de qué preocuparse.

En general, mi experiencia sugiere que pocas organizaciones se molestan en publicar claves de host para su verificación. Las claves de host pueden utilizarse para verificar un servidor al que nunca se ha conectado, pero en la práctica no encuentro que esto sea terriblemente común. Sospecho que esto se debe principalmente a las razones que mencioné brevemente más arriba: no creo que este sea un vector de ataque común y, por lo general, puede descubrirlo fácilmente si está conectado al servidor correcto simplemente porque casi siempre hay más partes involucradas. para verificar sus resultados. Como resultado, he utilizado la verificación de la clave de host más comúnmente para detectar cuándo el servidor ha cambiado más que cualquier otra cosa, y rara vez (si alguna) lo uso para verificar un servidor en la primera conexión.

    
respondido por el Conor Mancone 06.07.2018 - 14:15
fuente
1

TL; DR : no creo que esto sea algo de lo que deba preocuparse. Si sigue preocupado, póngase en contacto con GitLab. Dudo que alguien pueda darle una respuesta aquí como no trabajamos allí.

Personalmente, no creo que nadie te ayude. Creo que tu mejor oportunidad de obtener una respuesta aquí es contactar al soporte en GitLab, de esa manera obtendrás la respuesta correcta.

En cuanto a si la conexión es segura, no creo que tenga una razón para preocuparse, según el comentario de Semso, si estamos obteniendo lo mismo, probablemente no sea un problema de usted si eso tiene sentido.

No me preocuparía demasiado por esto, si aún estás preocupado, contacta a GitLab y estoy seguro de que estarán encantados de ayudarte.

    
respondido por el J.J 06.07.2018 - 12:19
fuente

Lea otras preguntas en las etiquetas