Vydanie OpenSSH 8.4

Po štyroch mesiacoch vývoja predložené vydanie OpenSSH 8.4, otvorenej implementácie klienta a servera pre prácu s protokolmi SSH 2.0 a SFTP.

Hlavné zmeny:

  • Zmeny zabezpečenia:
    • V ssh-agent pri použití kľúčov FIDO, ktoré neboli vytvorené pre autentifikáciu SSH (ID kľúča nezačína reťazcom "ssh:"), teraz kontroluje, či bude správa podpísaná pomocou metód používaných v protokole SSH. Zmena neumožní presmerovanie ssh-agenta na vzdialených hostiteľov, ktorí majú kľúče FIDO na zablokovanie možnosti použiť tieto kľúče na generovanie podpisov pre požiadavky na webovú autentifikáciu (opačný prípad, keď prehliadač môže podpísať požiadavku SSH, je pôvodne vylúčený z dôvodu použitia predpony „ssh:“ v identifikátore kľúča).
    • Generovanie rezidentného kľúča ssh-keygen zahŕňa podporu pre doplnok credProtect popísaný v špecifikácii FIDO 2.1, ktorý poskytuje dodatočnú ochranu kľúčov vyžadovaním PIN pred vykonaním akejkoľvek operácie, ktorá by mohla viesť k extrahovaniu rezidentného kľúča z tokenu.
  • Potenciálne narušenie zmien kompatibility:
    • Na podporu FIDO/U2F sa odporúča použiť knižnicu libfido2 aspoň vo verzii 1.5.0. Možnosť používania starších edícií bola čiastočne implementovaná, no v tomto prípade nebudú dostupné funkcie ako rezidentné kľúče, požiadavka na PIN a pripojenie viacerých tokenov.
    • V ssh-keygen boli do formátu potvrdzovacích informácií pridané autentifikačné údaje potrebné na overenie potvrdzovania digitálnych podpisov, ktoré sa voliteľne ukladajú pri generovaní kľúča FIDO.
    • Rozhranie API používané pri interakcii OpenSSH s vrstvou na prístup k tokenom FIDO bolo zmenené.
    • Pri zostavovaní prenosnej verzie OpenSSH je teraz Automake potrebné na vygenerovanie konfiguračného skriptu a sprievodných zostavovacích súborov (ak zostavujete z publikovaného súboru tar kódu, regenerácia konfigurácie sa nevyžaduje).
  • Pridaná podpora pre kľúče FIDO, ktoré vyžadujú overenie PIN v ssh a ssh-keygen. Na generovanie kľúčov s kódom PIN bola do ssh-keygen pridaná možnosť „vyžadované overenie“. Ak sú takéto kľúče použité, pred vykonaním operácie vytvorenia podpisu je používateľ vyzvaný, aby potvrdil svoju činnosť zadaním PIN kódu.
  • V sshd je možnosť „verify-required“ implementovaná v nastavení author_keys, čo vyžaduje použitie schopností na overenie prítomnosti používateľa počas operácií s tokenom. Štandard FIDO poskytuje niekoľko možností pre takéto overenie, ale v súčasnosti OpenSSH podporuje iba overenie založené na PIN.
  • sshd a ssh-keygen pridali podporu pre overovanie digitálnych podpisov, ktoré sú v súlade so štandardom FIDO Webauthn, ktorý umožňuje používanie kľúčov FIDO vo webových prehliadačoch.
  • V ssh v nastaveniach CertificateFile,
    ControlPath, IdentityAgent, IdentityFile, LocalForward a
    RemoteForward umožňuje nahradenie hodnôt z premenných prostredia špecifikovaných vo formáte "${ENV}".

  • ssh a ssh-agent pridali podporu pre premennú prostredia $SSH_ASKPASS_REQUIRE, ktorú možno použiť na povolenie alebo zakázanie volania ssh-askpass.
  • V ssh v ssh_config v direktíve AddKeysToAgent bola pridaná možnosť obmedziť dobu platnosti kľúča. Po uplynutí určeného limitu sa kľúče automaticky vymažú z ssh-agenta.
  • V scp a sftp pomocou príznaku "-A" môžete teraz explicitne povoliť presmerovanie na scp a sftp pomocou ssh-agent (presmerovanie je predvolene vypnuté).
  • Pridaná podpora pre nahradenie '%k' v nastaveniach ssh, ktoré špecifikuje názov hostiteľského kľúča. Túto funkciu možno použiť na distribúciu kľúčov do samostatných súborov (napríklad „UserKnownHostsFile ~/.ssh/known_hosts.d/%k“).
  • Povoľte použitie operácie "ssh-add -d -" na čítanie kľúčov z stdin, ktoré sa majú vymazať.
  • V sshd sa začiatok a koniec procesu orezania pripojenia prejaví v protokole, ktorý je regulovaný pomocou parametra MaxStartups.

Vývojári OpenSSH tiež pripomenuli nadchádzajúce vyradenie algoritmov využívajúcich hash SHA-1 z dôvodu povýšenie efektívnosť kolíznych útokov s daným prefixom (náklady na výber kolízie sa odhadujú na približne 45 tisíc dolárov). V jednom z pripravovaných vydaní plánujú predvolene deaktivovať možnosť používať algoritmus digitálneho podpisu s verejným kľúčom „ssh-rsa“, ktorý je uvedený v pôvodnom RFC pre protokol SSH a zostáva v praxi rozšírený (na testovanie použitia ssh-rsa vo vašich systémoch, môžete sa pokúsiť pripojiť cez ssh s voľbou „-oHostKeyAlgorithms=-ssh-rsa“).

Aby sa uľahčil prechod na nové algoritmy v OpenSSH, ďalšie vydanie povolí štandardne nastavenie UpdateHostKeys, ktoré automaticky migruje klientov na spoľahlivejšie algoritmy. Odporúčané algoritmy pre migráciu zahŕňajú rsa-sha2-256/512 založené na RFC8332 RSA SHA-2 (podporované od OpenSSH 7.2 a používané štandardne), ssh-ed25519 (podporované od OpenSSH 6.5) a ecdsa-sha2-nistp256/384/521 na RFC5656 ECDSA (podporované od OpenSSH 5.7).

Zdroj: opennet.ru

Pridať komentár