OpenSSH 8.4 version

Efter fyra månaders utveckling presenteras release av OpenSSH 8.4, en öppen klient- och serverimplementering för att arbeta med SSH 2.0- och SFTP-protokollen.

Huvudändringar:

  • Säkerhetsförändringar:
    • I ssh-agent, när man använder FIDO-nycklar som inte skapades för SSH-autentisering (nyckel-ID:t börjar inte med strängen "ssh:"), kontrollerar den nu att meddelandet kommer att signeras med metoderna som används i SSH-protokollet. Ändringen tillåter inte att ssh-agent omdirigeras till fjärrvärdar som har FIDO-nycklar för att blockera möjligheten att använda dessa nycklar för att generera signaturer för webbautentiseringsbegäranden (omvända fallet, när en webbläsare kan signera en SSH-begäran, är initialt utesluten på grund av användningen av prefixet "ssh:" i nyckelidentifieraren).
    • ssh-keygens inbyggda nyckelgenerering inkluderar stöd för credProtect-tillägget som beskrivs i FIDO 2.1-specifikationen, vilket ger ytterligare skydd för nycklar genom att kräva en PIN-kod innan du utför någon operation som kan resultera i att extrahera den inbyggda nyckeln från token.
  • Potentiellt brytande kompatibilitetsändringar:
    • För att stödja FIDO/U2F rekommenderas att du använder libfido2-biblioteket minst version 1.5.0. Möjligheten att använda äldre utgåvor har delvis implementerats, men i det här fallet kommer funktioner som inhemska nycklar, PIN-begäran och att ansluta flera tokens inte att vara tillgängliga.
    • I ssh-keygen har autentiseringsdata som krävs för att verifiera bekräftande digitala signaturer lagts till formatet för bekräftelseinformationen, som eventuellt sparas när en FIDO-nyckel genereras.
    • API:et som används när OpenSSH interagerar med lagret för åtkomst till FIDO-tokens har ändrats.
    • När man bygger en bärbar version av OpenSSH krävs nu automake för att generera konfigureringsskriptet och tillhörande byggfiler (om man bygger från en publicerad kod tar-fil, krävs inte en regenererande konfiguration).
  • Tillagt stöd för FIDO-nycklar som kräver PIN-verifiering i ssh och ssh-keygen. För att generera nycklar med PIN-kod har alternativet "verifiera-krävs" lagts till i ssh-keygen. Om sådana nycklar används, uppmanas användaren att bekräfta sina handlingar genom att ange en PIN-kod innan man utför signaturskapandet.
  • I sshd är alternativet "verifiera-required" implementerat i inställningen authorized_keys, vilket kräver användning av funktioner för att verifiera närvaron av användaren under operationer med token. FIDO-standarden ger flera alternativ för sådan verifiering, men för närvarande stöder OpenSSH endast PIN-baserad verifiering.
  • sshd och ssh-keygen har lagt till stöd för att verifiera digitala signaturer som överensstämmer med FIDO Webauthn-standarden, vilket gör att FIDO-nycklar kan användas i webbläsare.
  • I ssh i CertificateFile-inställningarna,
    ControlPath, IdentityAgent, IdentityFile, LocalForward och
    RemoteForward tillåter ersättning av värden från miljövariabler specificerade i formatet "${ENV}".

  • ssh och ssh-agent har lagt till stöd för miljövariabeln $SSH_ASKPASS_REQUIRE, som kan användas för att aktivera eller inaktivera ssh-askpass-anropet.
  • I ssh i ssh_config i AddKeysToAgent-direktivet har möjligheten att begränsa giltighetstiden för en nyckel lagts till. När den angivna gränsen har löpt ut raderas nycklarna automatiskt från ssh-agent.
  • I scp och sftp, med hjälp av flaggan "-A", kan du nu uttryckligen tillåta omdirigering till scp och sftp med ssh-agent (omdirigering är inaktiverat som standard).
  • Lade till stöd för '%k'-ersättning i ssh-inställningar, som anger värdnyckelns namn. Den här funktionen kan användas för att distribuera nycklar till separata filer (till exempel "UserKnownHostsFile ~/.ssh/known_hosts.d/%k").
  • Tillåt användning av operationen "ssh-add -d -" för att läsa nycklar från stdin som ska raderas.
  • I sshd återspeglas början och slutet av anslutningsbeskärningsprocessen i loggen, reglerad med parametern MaxStartups.

OpenSSH-utvecklarna påminde också om den kommande avvecklingen av algoritmer som använder SHA-1-hashar p.g.a. befordran effektiviteten av kollisionsattacker med ett givet prefix (kostnaden för att välja en kollision uppskattas till cirka 45 tusen dollar). I en av de kommande utgåvorna planerar de att som standard inaktivera möjligheten att använda den digitala signaturalgoritmen för publik nyckel "ssh-rsa", som nämns i den ursprungliga RFC för SSH-protokollet och som fortfarande är utbredd i praktiken (för att testa användningen av ssh-rsa i dina system, kan du försöka ansluta via ssh med alternativet "-oHostKeyAlgorithms=-ssh-rsa").

För att smidiga övergången till nya algoritmer i OpenSSH kommer nästa version att aktivera UpdateHostKeys-inställningen som standard, vilket automatiskt migrerar klienter till mer pålitliga algoritmer. Rekommenderade algoritmer för migrering inkluderar rsa-sha2-256/512 baserad på RFC8332 RSA SHA-2 (stöds sedan OpenSSH 7.2 och används som standard), ssh-ed25519 (stöds sedan OpenSSH 6.5) och ecdsa-sha2-nistp256/384 baserat på RFC521 ECDSA (stöds sedan OpenSSH 5656).

Källa: opennet.ru

Lägg en kommentar