Рэліз OpenSSH 8.3 з ухіленнем уразлівасці ў scp

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

У новым выпуску дададзена абарона ад нападу на scp, якая дазваляе серверу перадаць іншыя імёны файлаў, адрозныя ад запытаных (у адрозненне ад мінулай уразлівасці, атака не дае магчымасць змяніць абраны карыстальнікам каталог або glob-маску). Нагадаем, што ў SCP сервер прымае рашэнне аб тым, якія файлы і каталогі адправіць кліенту, а кліент толькі правярае карэктнасць вернутых імёнаў аб'ектаў. Сутнасць выяўленай праблемы ў тым, што калі сістэмны выклік utimes завяршаецца памылкай, тое змесціва файла інтэрпрэтуецца як метададзеныя файла.

Дадзеная асаблівасць пры падлучэнні да сервера, падкантрольнаму зламысніку, можа выкарыстоўвацца для захавання ў ФС карыстача іншых імёнаў файлаў і іншага змесціва пры капіяванні пры дапамозе scp у канфігурацыях, якія прыводзяць да збою пры выкліку utimes (напрыклад, пры забароне utimes палітыкай SELinux або фільтрам сістэмных выклікаў) . Верагоднасць правядзення рэальных нападаў ацэньваецца як мінімальная, бо ў тыповых канфігурацыях выклік utimes не завяршаецца збоем. Акрамя таго, напад не праходзіць неўзаметку - пры выкліку scp паказваецца памылка перадачы дадзеных.

Агульныя змены:

  • У sftp спынена апрацоўка аргумента "-1" па аналогіі з ssh і scp, які раней прымаўся, але ігнараваўся;
  • У sshd пры выкарыстанні IgnoreRhosts зараз падаецца тры варыянты выбару: "yes" - ігнараваць rhosts/shosts, "no" - улічыць rhosts/shosts і "shosts-only" - дазволіць ".shosts", але забараніць ".rhosts";
  • У ssh забяспечана апрацоўка падстаноўкі %TOKEN у наладах LocalFoward і RemoteForward, якія выкарыстоўваюцца для перанакіравання Unix-сокетаў;
  • Дазволена загрузкі адкрытых ключоў з незашыфраванага файла з прыватным ключом, калі адсутнічае асобны файл з адкрытым ключом;
  • Пры наяўнасці ў сістэме libcrypto у ssh і sshd зараз выкарыстоўвае рэалізацыю алгарытму chacha20 з дадзенай бібліятэкі, замест убудаванай пераноснай рэалізацыі, якая адстае па прадукцыйнасці;
  • Рэалізавана магчымасць дампа змесціва бінарнага спісу адкліканых сертыфікатаў пры выкананні каманды "ssh-keygen -lQf /path";
  • У пераноснай версіі рэалізавана азначэнні сістэм, у якіх сігналы з опцыяй SA_RESTART перарываюць працу select;
  • Вырашаны праблемы са зборкай у сістэмах HP/UX і AIX;
  • Ухілены праблемы са зборкай seccomp sandbox у некаторых канфігурацыях Linux;
  • Палепшана вызначэнне бібліятэкі libfido2 і вырашаны праблемы са зборкай з опцыяй “with-security-key-builtin”.

Распрацоўнікі 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).

Пачынальна з мінулага выпуску "ssh-rsa" і "diffie-hellman-group14-sha1" выдаленыя са спісу CASignatureAlgorithms, вызначальнага алгарытмы, дапушчальныя для лічбавага подпісу новых сертыфікатаў, бо выкарыстанне SHA-1 у сертыфікатах спалучана з дадатковай рызыкай з-за таго , Што атакуючы мае неабмежаваную час на пошук калізіі для існуючага сертыфіката, у той час як час атакі на хостовые ключы абмежаваныя таймаўтам падлучэння (LoginGraceTime).

Крыніца: opennet.ru

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