Про функцію 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).

