Про функцію SFTP

Функція SFTP підтримує різноманітні алгоритми шифрування для безпечного передавання файлів. Для забезпечення сумісності із широким діапазоном серверів підтримуються декілька алгоритмів шифрування, зокрема такі, які можуть не відповідати поточним стандартам безпеки.

Алгоритми шифрування, які підтримуються функцією SFTP

Підтримуються такі алгоритми шифрування.

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

Про рекомендовані алгоритми шифрування

На основі рекомендацій NIST (NIST SP 800-57 Part 1, Revision 5) і пов'язаних із ними стандартів безпеки рекомендуються такі алгоритми шифрування.

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

Про застарілі алгоритми

Функція SFTP також підтримує наведені нижче алгоритми з міркувань сумісності, але вони є застарілими відповідно до рекомендацій NIST (NIST SP 800-57 Part 1, Revision 5) і пов'язаних із ними стандартів безпеки і можуть бути вилучені в подальших версіях.

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

Сумісність з'єднання

Функція SFTP призначена для забезпечення балансу між безпекою та сумісністю. Нижче наведено причини, через які ми підтримуємо застарілі алгоритми, проте в подальших версіях ми можемо вилучити ці алгоритми для підвищення безпеки.

  • Фотографам і відеооператорам-фрілансерам треба підключатися до серверів, якими керують різні клієнти.
  • Має бути збережена сумісність зі старими системами й застарілими серверами.
  • Зміна налаштувань алгоритму шифрування на стороні сервера є складним процесом, тому не всі користувачі готові перейти на безпечні налаштування.
  • Налаштування SFTP на сервері часто використовуються спільно з іншими захищеними сервісами, тому необхідно враховувати вплив на інші сервіси на сервері, а зміни не завжди легко впровадити.
  • Для забезпечення сумісності в різних середовищах необхідна підтримка широкого діапазону криптографічних алгоритмів.

Алгоритм шифрування, який використовується під час з'єднання SFTP, визначається шляхом автоматичного узгодження із сервером призначення, тому він залежить від налаштувань сервера. Хоча ми усвідомлюємо ризики для безпеки, наразі ми надаємо перевагу широкій сумісності, щоб задовольнити різноманітні потреби наших користувачів.

Ризики для безпеки

Використання застарілих алгоритмів підвищує вразливість алгоритмів на основі SHA-1 і ключів DSA до атак типу «зловмисник посередині», ризик підміни ідентифікаційних даних сервера і можливість криптоаналізу за допомогою застарілих алгоритмів шифрування (наприклад, 3DES і варіанти RC4), що може призвести до витоку даних під час передачі.

Рекомендації щодо безпечного з'єднання

Використовуючи функцію SFTP на клієнті, заздалегідь перевірте, чи підтримує сервер, до якого ви підключаєтеся, рекомендовані алгоритми шифрування. Рекомендується вмикати лише рекомендовані алгоритми й вимикати нерекомендовані на стороні сервера.


Посилання

  • 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).
TP1002071201