¿Está el servidor OpenSSH utilizando un parámetro DH alternativo y codificado para 2048 bits?

4

Estoy jugando con las configuraciones OpenSSH y toco los parámetros Diffie-Hellman. Estoy usando la herramienta de GDSSecurity para verificar la configuración de DH y esta página para ver otras configuraciones de SSH.

Por diversión, quité todos los módulos menores de 4096 bits de /etc/ssh/moduli :

$ awk '{print $5}' /etc/ssh/moduli | sort | uniq
4095
6143
8191

Espero que el intercambio de claves falle si el cliente solo acepta grupos de 2048 bits o 3072 bits. Curiosamente, falla en el último caso, pero no en el primer caso de 2048 bits.

KEX proposal client: diffie-hellman-group-exchange-sha256
KEX proposal server: [email protected],diffie-hellman-group-exchange-sha256
KEX algorithm chosen: diffie-hellman-group-exchange-sha256
KEX client group sizes: min = 2048, nbits = 2048, max = 2048
KEX server-chosen group size in bits: 2048
Warning: Permanently added 'test,x.x.x.x' (ED25519) to the list of known hosts.
KEX proposal client: diffie-hellman-group-exchange-sha256
KEX proposal server: [email protected],diffie-hellman-group-exchange-sha256
KEX algorithm chosen: diffie-hellman-group-exchange-sha256
KEX client group sizes: min = 3072, nbits = 3072, max = 3072
ssh_dispatch_run_fatal: Connection to x.x.x.x: DH GEX group out of range

El sitio mencionado también reclama un intercambio de claves exitoso utilizando un grupo de 2048 bits.

Sé muy poco sobre los detalles del protocolo SSH o OpenSSH para entender lo que está pasando aquí. ¿OpenSSH usa un parámetro de respaldo si no hay un grupo apropiado disponible desde el archivo de módulos?

    
pregunta tarleb 17.02.2016 - 17:19
fuente

1 respuesta

4

Los grupos DH de reserva se definen en el código fuente aquí . El grupo actual puede ser 2k o 4k. Pero realmente depende de la versión que esté utilizando (hubo algunos cambios recientemente).

Tenga en cuenta el RFC 4419 , que especifica:

  

Los servidores y clientes DEBERÍAN admitir grupos con una longitud de módulo de k      bits, donde 1024 < = k < = 8192. Los valores recomendados para min y      Los valores máximos son 1024 y 8192, respectivamente.

Y las notas de la versión reciente para el futuro openssh-7.2 :

  
  • ssh (1), sshd (8): aumenta el tamaño de módulo mínimo admitido para   diffie-hellman-group-exchange a 2048 bits.
  •   
    
respondido por el Jakuje 17.02.2016 - 17:45
fuente

Lea otras preguntas en las etiquetas