¿Se puede usar https en lugar de sftp para transferencias de archivos seguras?

18

Mi empresa trabaja con finanzas, y estamos obligados a transferir archivos que contengan información de consumidores no públicos de forma segura entre nuestra empresa y nuestros clientes.

La solución habitual es utilizar sftp para la transferencia de archivos, sin embargo, muchos de nuestros clientes no están a la vanguardia de la tecnología, y prepararlos con el software sftp y enseñarles cómo usarlos requiere mucho tiempo y, a menudo, es frustrante para ambas partes. .

Como una solución fácil, creé un sitio web muy básico alojado en https que permite a los usuarios iniciar sesión usando sus credenciales ftp y cargar / descargar archivos a través de una interfaz web.

¿Pero puede considerarse https el equivalente a sftp como una forma de transferir un archivo de forma segura?

    
pregunta Rachel 14.11.2012 - 16:20
fuente

5 respuestas

17

HTTPS y SFTP cuando se usan correctamente son igualmente seguros. Los algoritmos de cifrado subyacentes en la práctica son ambos funcionalmente equivalentes, ninguno de los dos puede romperse en la práctica atacando directamente los protocolos criptográficos.

Sin embargo, en la práctica con usuarios no expertos en tecnología, HTTPS es un poco más débil en mi opinión.

Hay ataques contra ambos que se pueden lanzar en usuarios despreocupados que no son expertos en tecnología. El ataque a SFTP como lo dice Rell3oT es que, por lo general, inicialmente no conoce la clave pública del SFTP cuando se conecta por primera vez, y la recuerda para todas las conexiones posteriores (aunque el registro DNS de SSHFP definido en DNSSEC podría resolver este problema, pero actualmente no se utiliza ampliamente ). Esto significa que un atacante que redireccionó el tráfico de Internet inicialmente a su servidor falso de sftp podría capturar sus datos, si atacaron a alguien que se conectó al sitio de sftp por primera vez desde una computadora (que no tiene la clave pública guardada). Este ataque no puede ocurrir en conexiones posteriores.

Sin embargo, con https hay varios ataques potenciales más introducidos que los usuarios no expertos en tecnología podrían engañar.

  1. El usuario no puede ir a enlace , sino que simplemente escriba your-secure-file-transfer.com en el navegador web (que por defecto va a la versión http ). Un atacante podría esperar este caso y luego capturar este tráfico y redirigirlo a su copia falsificada de ese sitio; Robo de la información de autenticación / datos financieros. (Sí, algo similar podría suceder si se reemplaza sftp por ftp; pero como se hace normalmente en una aplicación separada que guarda la información de conexión, parece menos probable): para ir a la versión ftp, el usuario normalmente tiene que escribir manualmente un nombre diferente. número de puerto). Puede solucionar este problema solicitando que el sitio tenga HSTS habilitado . A menos que tengan cuidado con la barra de URL que muestra https , es posible que el usuario no se dé cuenta de que está en un sitio http o en una URL diferente. HSTS solo está habilitado en una pequeña lista de sitios web principales según la mayoría de los navegadores. La mayoría de las veces, se habilita en un navegador web después de visitar con éxito el sitio HTTPS la primera vez (donde hay un encabezado para recordar que este sitio siempre debe conectarse a través de https); dando seguridad funcionalmente equivalente a SFTP.
  2. El navegador web de un usuario no experto en tecnología es menos seguro que su cliente SFTP estándar. Los usuarios a menudo instalan varias extensiones de navegador que tienen la capacidad de acceder a toda su actividad de Internet para obtener algún tipo de funcionalidad. Esta funcionalidad adicional puede venir con un ataque secreto; por ejemplo, robar cookies de sesión, información ingresada en formularios (como su contraseña), etc. que finalmente se envía de vuelta al autor del cliente.
  3. La CA (o la CA intermedia) podría verse comprometida en cualquier fecha y los atacantes podrían obtener certificados de confianza del navegador que les permitan falsificar sus https sin ser detectados. Esto difiere de SFTP nuevamente, donde el cliente sftp recuerda la clave pública del sitio que ha visto anteriormente y le avisa si ha cambiado. (Los navegadores web no lo harán; los certificados pueden cambiar siempre que se firmen correctamente. Nuevamente, es probable que esto no cambie pronto, ya que los servidores web con carga equilibrada generalmente tienen certificados firmados diferentes.

En general, diría que el HTTPS es un poco más débil en la práctica que el SFTP; Mientras que ambos son igualmente seguros en función de sus méritos criptográficos. Si entrena a sus usuarios para verificar que https está presente y en el dominio correcto, y además inculcó algo de paranoia sobre el uso de las extensiones del navegador en sus computadoras de trabajo (o sugiere usar el modo privado de los navegadores normalmente con pocas extensiones instaladas) será más o menos equivalente (suponiendo que haya configurado correctamente el sitio con HSTS / cookies de solo http seguras, etc.).

    
respondido por el dr jimbob 14.11.2012 - 18:34
fuente
17

Sí. Yo diría que HTTPS es equivalente o mejor que SFTP.

HTTPS utiliza una autoridad de certificación central donde SFTP no lo hace. Existe un riesgo la primera vez que se autentica con SFTP. El uso de HTTPS de un tercero de confianza previene ese riesgo.

Es importante tener en cuenta que (suponiendo que se haya establecido un canal seguro) SFTP y HTTPS son igualmente seguros.

    
respondido por el Rell3oT 14.11.2012 - 16:43
fuente
3

HTTPS y SFTP difieren en una forma muy importante que, en mi opinión, inclina la ventaja de manera significativa hacia HTTPS: transmisión de datos frente a transferencia de archivos. Una conexión HTTPS adecuada entre los servicios de software genera y transmite datos de manera incremental y no requiere archivos en reposo. Por otro lado, SFTP por convención, práctica y protocolo requiere que los archivos se creen y almacenen mientras se transfieren (envían y reciben), por lo que existen dos copias en reposo simultáneamente.

Cero archivos en reposo frente a dos archivos en reposo es enorme, especialmente cuando se ponen en contexto con el problema de CA. HTTPS gana.

    
respondido por el Lee 24.11.2015 - 00:37
fuente
1

Se ha aceptado una respuesta que da algunas buenas razones para SFTP, pero parece que nadie ha presentado muchas de las ventajas de usar https.

Primero, la disponibilidad de herramientas para 'https es mucho más amplia que para SFTP. Tiene un uso mucho más amplio, por lo que debería ser una tecnología más madura.

Es mucho más fácil integrar herramientas de diferentes proveedores sin comprometer la fuerza de cifrado.

Mover archivos solo tiene poco beneficio. Es cuando se procesan los datos que se realiza el valor. Es mucho más fácil integrar el procesamiento con 'transferencias https que con SFTP.

Http (y 'https) tiene un vocabulario para describir cómo deben interpretarse los datos (codificación, idioma, tipo mime) y procesados (obtener, publicar, eliminar) que no están disponibles en SFTP.

Http (s) proporciona un mecanismo para proporcionar información contextual junto con la capacidad de transferencia: la documentación, la información sobre el uso de la cuenta, la administración de la cuenta, el registro de problemas y más, que no está disponible es SFTP.

A menudo, el enlace más débil en una red segura son los usuarios. Los usuarios tienen una mejor comprensión de HTTPS que de SFTP. Los certificados / claves de los clientes agregan algo de complejidad a esto, pero decirle a la gente que busque un fondo verde en la URL es mucho más fácil que hablarles a través de la habilitación de la comprobación estricta del host y el manejo de la reinversión si alguna vez cambian.

Y los certificados https tienen una fecha de caducidad y un mecanismo para la verificación de OOB (preinscripción HSTS).

El hecho de que esté haciendo la pregunta me hace pensar que es un analista de seguridad / administrador de sistemas. Desde ese punto de vista, las diferencias pueden no ser tan claras. Ve a hablar con tus desarrolladores y usuarios y obtendrás una imagen muy diferente.

    
respondido por el symcbean 05.10.2015 - 23:44
fuente
0

Comentaría sin una respuesta, pero primero necesito establecer mi reputación. Se puede hacer SFTP para tener una superficie de ataque más pequeña. HTTPS implica un proceso de servidor web y eso está expuesto al ataque. SFTP parece una configuración más simple.

Lista de tareas pendientes: -dedicar un host para SFTP Ejecute rcconf y elimine todos sus servicios innecesarios. -crear un grupo de usuarios sftp y chroot ellos - Habilitar el registro de las actividades de usuario de SFTP por separado en modo detallado -crear subdirectorios coronados para cada uno de sus clientes / socios - copia de seguridad de sus datos a un host diferente

    
respondido por el MevanMartinez 05.10.2015 - 22:34
fuente

Lea otras preguntas en las etiquetas