¿Por qué es útil la reutilización de sesión en FTPS?

1

Noté que no todos los clientes FTPS admiten la reutilización de la sesión y me pregunto si es una opción de seguridad crítica que debe dejarse habilitada en el servidor.

Supongo que es posible que un atacante secuestre la conexión de datos incluso si se usa SSL / TLS tanto para el control como para la conexión de datos, si la opción de reutilización de la sesión no está habilitada. ¿Alguien podría ayudar a confirmar / refutar esto y dar explicaciones más detalladas?

También encontré esto: VU # 2558 El protocolo de transferencia de archivos permite el secuestro de la conexión de datos a través de la condición de carrera en modo PASV , sin saber si es relevante ya que no menciona SSL / TLS en absoluto.

Cyker
fuente

Respuestas:

3

Tu suposición es correcta. La reutilización de la sesión TLS lo protege de una posibilidad teórica de que un atacante secuestra una conexión de datos FTP.

Cuando inicia una transferencia de datos, el servidor abre un puerto de conexión de datos en el servidor (en modo pasivo). Un posible atacante podría adivinar el puerto y conectarse antes de que lo haga su cliente FTP, robándole sus datos.

Si el servidor requiere que se use la misma sesión TLS para la conexión de datos, el atacante no podrá iniciar su propia sesión TLS, lo que evitará que decodifique los datos.


Otro beneficio de reutilizar la sesión TLS es el rendimiento, ya que no necesita hacer un nuevo protocolo de enlace TLS para cada conexión de datos / transferencia de archivos. Lo que importa particularmente si transfieres muchos archivos pequeños.


los vulnerabilidad a la que te refieres es en realidad un superconjunto del problema que la reutilización de la sesión TLS intenta evitar.

Martin Prikryl
fuente
2

Algunos servidores esperan que los clientes utilicen la misma sesión SSL para el control y las conexiones de datos. Aparte de esa sesión, la reutilización acelera las conexiones porque reduce el número de viajes de ida y vuelta necesarios para establecer una conexión SSL. Puede ser que el cliente que no usa un interruptor explícito para habilitar la reutilización de la sesión simplemente lo use implícitamente, como lo hacen los navegadores.

Steffen Ullrich
fuente