Рэліз OpenSSH 8.4

Пасля чатырох месяцаў распрацоўкі прадстаўлены рэліз OpenSSH 8.4, адчыненай рэалізацыі кліента і сервера для працы па пратаколах SSH 2.0 і SFTP.

Асноўныя змены:

  • Змены, звязаныя з бяспекай:
    • У ssh-agent пры выкарыстанні ключоў FIDO, створаных не для аўтэнтыфікацыі праз SSH (ідэнтыфікатар ключа пачынаецца не з радка "ssh:"), зараз выконваецца праверка, што паведамленне будзе падпісана з выкарыстаннем метадаў, якія ўжываюцца ў пратаколе SSH. Змена не дазволіць перанакіроўваць ssh-agent на выдаленыя хасты, якія маюць FIDO-ключы, для блакавання магчымасці выкарыстання дадзеных ключоў для фармавання подпісаў запытаў web-аўтэнтыфікацыі (зваротны выпадак, калі браўзэр можа падпісаць запыт SSH, першапачаткова выключаны, дзякуючы ўжыванню прэфікса «ssh:» у ідэнтыфікатары ключа).
    • У ssh-keygen пры генерацыі рэзідэнтнага ключа ўключаная падтрымка дадатку credProtect, апісанага ў спецыфікацыі FIDO 2.1, які прадстаўляе дадатковую абарону для ключоў праз абавязковы запыт уводу PIN-кода перад выкананнем любой аперацыі, якая можа прывесці да вымання рэзідэнтнага ключа з токена.
  • Змены, якія патэнцыйна парушаюць сумяшчальнасць:
    • Для падтрымкі FIDO/U2F рэкамендавана выкарыстоўваць бібліятэку libfido2 як мінімум версіі 1.5.0. Часткова рэалізавана магчымасць выкарыстання і старых выпускаў, але ў гэтым выпадку будуць недаступныя такія функцыі, як рэзідэнтныя ключы, запыт PIN і падлучэнне некалькіх токенаў.
    • У ssh-keygen у фармат пацвярджальнай інфармацыі, апцыянальна захоўваемай пры генерацыі ключа FIDO, дададзены дадзеныя для аўтэнтыфікатара, неабходныя для праверкі якія пацвярджаюць лічбавых подпісаў.
    • Зменены API, які ўжываецца пры ўзаемадзеянні OpenSSH з праслойкай для звароту да токенаў FIDO.
    • Пры зборцы пераноснай версіі OpenSSH зараз патрабуецца automake для фармавання скрыпту configure і спадарожных зборачных файлаў (калі зборка выконваецца з апублікаванага tar-файла з кодам, перагенерацыя configure не патрабуецца).
  • У ssh і ssh-keygen дададзена падтрымка FIDO-ключоў, якія патрабуюць пацверджання пры дапамозе PIN-кода. Для генерацыі ключоў з PIN у ssh-keygen дададзена опцыя "verify-required". У выпадку выкарыстання падобных ключоў, перад выкананнем аперацыі стварэння подпісу карыстачу выводзіцца запыт, які патрабуе пацвердзіць свае дзеянні праз увод PIN-кода.
  • У sshd у наладзе authorized_keys рэалізавана опцыя "verify-required", якая патрабуе прымянення магчымасцяў па верыфікацыі прысутнасці карыстальніка падчас аперацый з токенам. Стандарт FIDO прадугледжвае некалькі варыянтаў падобнай верыфікацыі, але ў наш час у OpenSSH падтрымліваецца толькі праверка на аснове PIN-кода.
  • У sshd і ssh-keygen дададзеная падтрымка праверкі лічбавых подпісаў, якія адпавядаюць стандарту FIDO Webauthn, які дазваляе ўжываць ключы FIDO у web-браўзэрах.
  • У ssh у наладах CertificateFile,
    ControlPath, IdentityAgent, IdentityFile, LocalForward і
    RemoteForward дазволена падстаноўка значэнняў са зменных асяроддзі, паказаных у фармаце «${ENV}».

  • У ssh і ssh-agent дададзена падтрымка зменнай асяроддзя $SSH_ASKPASS_REQUIRE, якую можна выкарыстоўваць для ўключэння ці адключэнні выкліку ssh-askpass.
  • У ssh у ssh_config у дырэктыве AddKeysToAgent дададзена магчымасць абмежавання часу дзеяння ключа. Пасля заканчэння зададзенага ліміту ключы аўтаматычна выдаляюцца з ssh-agent.
  • У scp і sftp пры дапамозе сцяга "-A" зараз можна відавочна дазволіць перанакіраванне ў scp і sftp з выкарыстаннем ssh-agent (па змаўчанні перанакіраванне забаронена).
  • У наладах ssh дададзена падтрымка падстаноўкі '%k', вызначальнай імя ключа хаста. Указаную магчымасць можна выкарыстоўваць для разнясення ключоў па асобных файлах (напрыклад, «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) і ecdsa2/256 на базе RFC384 ECDSA (падтрымліваецца з OpenSSH 521).

Крыніца: opennet.ru

Дадаць каментар