Версия на OpenSSH 8.4

След четири месеца разработка представени издание на OpenSSH 8.4, отворена клиентска и сървърна реализация за работа с помощта на протоколите SSH 2.0 и SFTP.

Основни промени:

  • Промени в сигурността:
    • В ssh-agent, когато се използват FIDO ключове, които не са създадени за SSH удостоверяване (ID на ключа не започва с низа "ssh:"), той сега проверява дали съобщението ще бъде подписано с помощта на методите, използвани в SSH протокола. Промяната няма да позволи ssh-agent да бъде пренасочен към отдалечени хостове, които имат FIDO ключове, за да блокират възможността за използване на тези ключове за генериране на подписи за заявки за уеб удостоверяване (обратният случай, когато браузър може да подпише SSH заявка, първоначално е изключен поради използването на префикса „ssh:“ в идентификатора на ключа).
    • Генерирането на резидентен ключ на ssh-keygen включва поддръжка за добавката credProtect, описана в спецификацията FIDO 2.1, която осигурява допълнителна защита за ключовете чрез изискване на ПИН преди извършване на каквато и да е операция, която може да доведе до извличане на резидентния ключ от токена.
  • Потенциално нарушаващи съвместимостта промени:
    • За да поддържате FIDO/U2F, се препоръчва да използвате библиотеката libfido2 поне версия 1.5.0. Възможността за използване на по-стари издания е частично реализирана, но в този случай функции като резидентни ключове, заявка за ПИН и свързване на множество токени няма да са налични.
    • В ssh-keygen данните за удостоверяване, необходими за проверка на потвърждаващите цифрови подписи, са добавени към формата на информацията за потвърждение, по избор запазена при генериране на ключ FIDO.
    • API, използван, когато OpenSSH взаимодейства със слоя за достъп до FIDO токени, е променен.
    • Когато се изгражда преносима версия на OpenSSH, вече се изисква automake да генерира скрипта за конфигуриране и придружаващите го компилационни файлове (ако се изгражда от публикуван tar файл с код, повторното генериране на конфигурацията не е необходимо).
  • Добавена е поддръжка за FIDO ключове, които изискват потвърждение на ПИН в ssh и ssh-keygen. За генериране на ключове с ПИН, опцията „изисква се проверка“ е добавена към ssh-keygen. Ако се използват такива ключове, преди да извърши операцията по създаване на подпис, потребителят получава подкана да потвърди действията си чрез въвеждане на ПИН код.
  • В sshd опцията „verify-required“ е внедрена в настройката authorized_keys, която изисква използването на възможности за проверка на присъствието на потребителя по време на операции с токена. Стандартът FIDO предоставя няколко опции за такава проверка, но в момента OpenSSH поддържа само проверка, базирана на PIN.
  • sshd и ssh-keygen добавиха поддръжка за проверка на цифрови подписи, които отговарят на стандарта FIDO Webauthn, който позволява използването на FIDO ключове в уеб браузъри.
  • В ssh в настройките на CertificateFile,
    ControlPath, IdentityAgent, IdentityFile, LocalForward и
    RemoteForward позволява заместване на стойности от променливи на средата, посочени във формат "${ENV}".

  • ssh и ssh-agent добавиха поддръжка за променливата на средата $SSH_ASKPASS_REQUIRE, която може да се използва за активиране или деактивиране на извикването ssh-askpass.
  • В ssh в ssh_config в директивата AddKeysToAgent е добавена възможност за ограничаване на периода на валидност на ключ. След като посоченият лимит изтече, ключовете автоматично се изтриват от ssh-агента.
  • В scp и sftp, като използвате флага "-A", вече можете изрично да разрешите пренасочване към scp и sftp с помощта на ssh-агент (пренасочването е деактивирано по подразбиране).
  • Добавена е поддръжка за заместване на „%k“ в настройките на ssh, което указва името на ключа на хоста. Тази функция може да се използва за разпространение на ключове в отделни файлове (например „UserKnownHostsFile ~/.ssh/known_hosts.d/%k”).
  • Разрешете използването на операцията "ssh-add -d -" за четене на ключове от stdin, които трябва да бъдат изтрити.
  • В sshd началото и краят на процеса на съкращаване на връзката се отразява в дневника, регулиран с помощта на параметъра MaxStartups.

Разработчиците на OpenSSH също припомниха предстоящото извеждане от експлоатация на алгоритми, използващи SHA-1 хешове поради промоция ефективността на атаките на сблъсък с даден префикс (цената за избор на сблъсък се оценява на приблизително 45 хиляди долара). В една от предстоящите версии те планират да деактивират по подразбиране възможността за използване на алгоритъма за цифров подпис с публичен ключ „ssh-rsa“, който е споменат в оригиналния RFC за SSH протокола и остава широко разпространен в практиката (за тестване на използването на ssh-rsa във вашите системи, можете да опитате да се свържете чрез ssh с опцията „-oHostKeyAlgorithms=-ssh-rsa“).

За плавен преход към нови алгоритми в OpenSSH, следващата версия ще активира настройката UpdateHostKeys по подразбиране, която автоматично ще мигрира клиенти към по-надеждни алгоритми. Препоръчителните алгоритми за миграция включват rsa-sha2-256/512, базиран на RFC8332 RSA SHA-2 (поддържан от OpenSSH 7.2 и използван по подразбиране), ssh-ed25519 (поддържан от OpenSSH 6.5) и базиран на ecdsa-sha2-nistp256/384/521 на RFC5656 ECDSA (поддържа се от OpenSSH 5.7).

Източник: opennet.ru

Добавяне на нов коментар