He intentado implementar un ataque de degradación contra el protocolo SSH, ya que los primeros pasos (intercambio de protocolos de cifrado) no están firmados, según RFC4253 . La idea es interceptar (mitm) estos pasos y reemplazar los algoritmos fuertes por algoritmos más débiles soportados por ambos lados.
El reemplazo funciona bien, y el servidor y el cliente reciben una lista debilitada de algoritmos compatibles. Sin embargo, la comunicación se interrumpe directamente cuando el servidor recibe la lista del cliente.
Esperé que el protocolo implementara alguna protección contra los ataques de degradación, pero no veo en ninguna parte en RFC (o archivos de registro) cómo. SSL procede, por ejemplo, reenviando los primeros pasos cifrados, para permitir que el otro lado descubra cuáles fueron los primeros pasos y evitar así cualquier ataque de degradación. Pero no hay reenvío de nada de lo que dice tcpdump.
¿Qué mecanismos evitan los ataques de baja calificación en SSH?
Muchas gracias, y no dude en solicitar los detalles de la implementación.