Informacje o funkcji SFTP

Funkcja SFTP obsługuje różne algorytmy szyfrowania służące do bezpiecznego przesyłania plików. Aby zapewnić kompatybilność z szeroką gamą serwerów, jest obsługiwanych kilka algorytmów szyfrowania, w tym takie, które mogą być niezgodne z bieżącymi najlepszymi praktykami bezpieczeństwa.

Algorytmy szyfrowania obsługiwane przez funkcję SFTP

Obsługiwane są następujące algorytmy szyfrowania.

Key exchange algorithms

  • curve25519-sha256
  • curve25519-sha256@libssh.org
  • ecdh-sha2-nistp256
  • ecdh-sha2-nistp384
  • ecdh-sha2-nistp521
  • diffie-hellman-group-exchange-sha256
  • diffie-hellman-group16-sha512
  • diffie-hellman-group18-sha512
  • diffie-hellman-group14-sha256
  • diffie-hellman-group14-sha1
  • diffie-hellman-group1-sha1
  • diffie-hellman-group-exchange-sha1

Host key algorithms

  • ecdsa-sha2-nistp256
  • ecdsa-sha2-nistp384
  • ecdsa-sha2-nistp521
  • ecdsa-sha2-nistp256-cert-v01@openssh.com
  • ecdsa-sha2-nistp384-cert-v01@openssh.com
  • ecdsa-sha2-nistp521-cert-v01@openssh.com
  • ssh-ed25519
  • ssh-rsa
  • ssh-dss

Ciphers

  • aes128-ctr
  • aes192-ctr
  • aes256-ctr
  • aes256-cbc
  • rijndael-cbc@lysator.liu.se
  • aes192-cbc
  • aes128-cbc
  • blowfish-cbc
  • arcfour128
  • arcfour
  • cast128-cbc
  • 3des-cbc

MACs

  • hmac-sha2-256
  • hmac-sha2-512
  • hmac-sha1
  • hmac-sha1-96
  • hmac-md5
  • hmac-md5-96
  • hmac-ripemd160
  • hmac-ripemd160@openssh.com

Informacje na temat zalecanych algorytmów szyfrowania

W oparciu o zalecenia NIST (NIST SP 800-57 Part 1, Revision 5) i powiązane standardy bezpieczeństwa, zalecane są następujące algorytmy szyfrowania.

Key exchange algorithms

  • curve25519-sha256
  • curve25519-sha256@libssh.org
  • ecdh-sha2-nistp256
  • ecdh-sha2-nistp384
  • ecdh-sha2-nistp521
  • diffie-hellman-group-exchange-sha256
  • diffie-hellman-group16-sha512
  • diffie-hellman-group18-sha512

Host key algorithms

  • ecdsa-sha2-nistp256
  • ecdsa-sha2-nistp384
  • ecdsa-sha2-nistp521
  • ecdsa-sha2-nistp256-cert-v01@openssh.com
  • ecdsa-sha2-nistp384-cert-v01@openssh.com
  • ecdsa-sha2-nistp521-cert-v01@openssh.com
  • ssh-ed25519

Ciphers

  • aes128-ctr
  • aes192-ctr
  • aes256-ctr

MACs

  • hmac-sha2-256
  • hmac-sha2-512

Informacje o przestarzałych algorytmach

Funkcja SFTP obsługuje także poniższe algorytmy ze względu na kompatybilność, ale zostały one uznane za przestarzałe na podstawie zaleceń NIST (NIST SP 800-57 Part 1, Revision 5) i powiązanych standardów bezpieczeństwa i mogą zostać usunięte w przyszłych wersjach.

Key exchange algorithms

  • diffie-hellman-group14-sha256
  • diffie-hellman-group14-sha1
  • diffie-hellman-group1-sha1
  • diffie-hellman-group-exchange-sha1

Host key algorithms

  • ssh-dss
  • ssh-rsa

Ciphers

  • rijndael-cbc@lysator.liu.se
  • blowfish-cbc
  • arcfour128
  • arcfour
  • cast128-cbc
  • 3des-cbc
  • aes128-cbc
  • aes192-cbc
  • aes256-cbc

MACs

  • hmac-sha1
  • hmac-sha1-96
  • hmac-md5
  • hmac-md5-96
  • hmac-ripemd160
  • hmac-ripemd160@openssh.com

Zgodność połączenia

Funkcja SFTP została zaprojektowana tak, aby zapewnić równowagę między bezpieczeństwem a kompatybilnością. Obecnie obsługujemy przestarzałe algorytmy z następujących powodów, ale w przyszłych wersjach możemy je usunąć, aby zwiększyć bezpieczeństwo.

  • Fotografowie i filmowcy muszą łączyć się z serwerami obsługiwanymi przez różnych klientów.
  • Należy zachować kompatybilność ze starszymi systemami i serwerami.
  • Zmiana ustawień algorytmu szyfrowania po stronie serwera jest złożona i nie wszyscy użytkownicy są przygotowani na przejście do bezpiecznych ustawień.
  • Ustawienia serwera SFTP są często wspólne z innymi bezpiecznymi usługami, dlatego konieczne jest uwzględnienie wpływu na inne usługi na serwerze, a wprowadzenie zmian nie zawsze może być łatwe.
  • Aby zapewnić współpracę w różnych środowiskach, konieczna jest obsługa szerokiej gamy algorytmów kryptograficznych.

Algorytm szyfrowania używany podczas połączenia SFTP jest ustalany na drodze automatycznego uzgadniania z serwerem docelowym, więc zależy on od ustawień serwera. Chociaż jesteśmy świadomi ryzyka związanego z bezpieczeństwem, obecnie priorytetowo traktujemy szeroką kompatybilność, aby sprostać różnorodnym potrzebom naszych użytkowników.

Zagrożenia bezpieczeństwa

Używanie przestarzałych algorytmów zwiększa podatność algorytmów opartych na SHA-1 i kluczy DSA na ataki typu „man-in-the-middle”, ryzyko podszywania się pod tożsamość serwera oraz możliwość przeprowadzenia kryptoanalizy przy użyciu starszych algorytmów szyfrowania (np. 3DES i wariantów RC4), które mogą narażać przesyłane dane na ujawnienie.

Zalecenia dotyczące bezpiecznego połączenia

W przypadku korzystania z funkcji klienta SFTP, należy wcześniej sprawdzić, czy serwer, z którym się łączysz, obsługuje zalecane algorytmy szyfrowania. Wskazane jest, aby włączyć tylko zalecane algorytmy oraz wyłączyć po stronie serwera algorytmy niezalecane.


Źródła

  • Recommendation for Key Management, Special Publication 800-57 Part 1 Revision 5, NIST, 2020.
  • Transitioning the Use of Cryptographic Algorithms and Key Lengths, Special Publication 800-131A Revision 2, NIST, 2019.
  • Recommendation for Block Cipher Modes of Operation: The CMAC Mode for Authentication, Special Publication 800-38B, NIST, 2005 (includes updates as of 10/06/2016).
TP1002071156