OpenSSH 8.4 udgivelse

Efter fire måneders udvikling præsenteret udgivelse af OpenSSH 8.4, en åben klient- og serverimplementering til at arbejde med SSH 2.0- og SFTP-protokollerne.

Vigtigste ændringer:

  • Sikkerhedsændringer:
    • I ssh-agent, når du bruger FIDO-nøgler, der ikke er oprettet til SSH-godkendelse (nøgle-id'et starter ikke med strengen "ssh:"), tjekker den nu, at meddelelsen vil blive signeret ved hjælp af metoderne, der bruges i SSH-protokollen. Ændringen vil ikke tillade, at ssh-agent omdirigeres til fjernværter, der har FIDO-nøgler til at blokere muligheden for at bruge disse nøgler til at generere signaturer til web-godkendelsesanmodninger (det omvendte tilfælde, når en browser kan underskrive en SSH-anmodning, er i første omgang udelukket på grund af brugen af ​​"ssh:"-præfikset i nøgleidentifikatoren).
    • ssh-keygens resident-nøglegenerering inkluderer understøttelse af credProtect-tilføjelsen beskrevet i FIDO 2.1-specifikationen, som giver yderligere beskyttelse af nøgler ved at kræve en PIN-kode, før der udføres nogen handling, der kan resultere i udtrækning af den residente nøgle fra tokenet.
  • Potentielt brydende kompatibilitetsændringer:
    • For at understøtte FIDO/U2F anbefales det at bruge libfido2-biblioteket som minimum version 1.5.0. Muligheden for at bruge ældre udgaver er delvist implementeret, men i dette tilfælde vil funktioner såsom indbyggernøgler, PIN-anmodning og tilslutning af flere tokens ikke være tilgængelige.
    • I ssh-keygen er de autentificeringsdata, der er nødvendige for at verificere bekræftende digitale signaturer, blevet tilføjet til formatet af bekræftelsesinformationen, eventuelt gemt ved generering af en FIDO-nøgle.
    • API'et, der bruges, når OpenSSH interagerer med laget for at få adgang til FIDO-tokens, er blevet ændret.
    • Når du bygger en bærbar version af OpenSSH, er automake nu påkrævet for at generere konfigurationsscriptet og medfølgende build-filer (hvis der bygges fra en publiceret kode-tar-fil, er det ikke nødvendigt at regenerere konfigurationen).
  • Tilføjet understøttelse af FIDO-nøgler, der kræver PIN-bekræftelse i ssh og ssh-keygen. For at generere nøgler med PIN-kode er muligheden "bekræft-krævet" blevet tilføjet til ssh-keygen. Hvis sådanne nøgler bruges, bliver brugeren bedt om at bekræfte deres handlinger ved at indtaste en PIN-kode, før han udfører signaturoprettelse.
  • I sshd er "verify-required" muligheden implementeret i Authorized_keys indstillingen, som kræver brug af kapaciteter til at verificere tilstedeværelsen af ​​brugeren under operationer med tokenet. FIDO-standarden giver flere muligheder for sådan verifikation, men i øjeblikket understøtter OpenSSH kun PIN-baseret verifikation.
  • sshd og ssh-keygen har tilføjet understøttelse til at verificere digitale signaturer, der overholder FIDO Webauthn-standarden, som gør det muligt at bruge FIDO-nøgler i webbrowsere.
  • I ssh i CertificateFile-indstillingerne,
    ControlPath, IdentityAgent, IdentityFile, LocalForward og
    RemoteForward tillader substitution af værdier fra miljøvariabler angivet i formatet "${ENV}".

  • ssh og ssh-agent har tilføjet understøttelse af miljøvariablen $SSH_ASKPASS_REQUIRE, som kan bruges til at aktivere eller deaktivere ssh-askpass-kaldet.
  • I ssh i ssh_config i AddKeysToAgent-direktivet er muligheden for at begrænse gyldighedsperioden for en nøgle blevet tilføjet. Når den angivne grænse er udløbet, slettes nøglerne automatisk fra ssh-agent.
  • I scp og sftp, ved hjælp af "-A"-flaget, kan du nu eksplicit tillade omdirigering til scp og sftp ved hjælp af ssh-agent (omdirigering er deaktiveret som standard).
  • Tilføjet understøttelse af '%k' substitution i ssh-indstillinger, som specificerer værtsnøglens navn. Denne funktion kan bruges til at distribuere nøgler til separate filer (for eksempel "UserKnownHostsFile ~/.ssh/known_hosts.d/%k").
  • Tillad brugen af ​​"ssh-add -d -" operationen til at læse nøgler fra stdin, der skal slettes.
  • I sshd afspejles starten og slutningen af ​​forbindelsesbeskæringsprocessen i loggen, reguleret ved hjælp af MaxStartups-parameteren.

OpenSSH-udviklerne mindede også om den kommende dekommissionering af algoritmer ved hjælp af SHA-1-hashes pga. forfremmelse effektiviteten af ​​kollisionsangreb med et givet præfiks (omkostningerne ved at vælge en kollision anslås til ca. 45 tusind dollars). I en af ​​de kommende udgivelser planlægger de som standard at deaktivere muligheden for at bruge den offentlige nøgle digitale signaturalgoritme "ssh-rsa", som er nævnt i den originale RFC for SSH-protokollen og forbliver udbredt i praksis (for at teste brugen af ssh-rsa i dine systemer, kan du prøve at oprette forbindelse via ssh med muligheden "-oHostKeyAlgorithms=-ssh-rsa").

For at glatte overgangen til nye algoritmer i OpenSSH vil den næste udgivelse aktivere indstillingen UpdateHostKeys som standard, som automatisk vil migrere klienter til mere pålidelige algoritmer. Anbefalede algoritmer til migrering omfatter rsa-sha2-256/512 baseret på RFC8332 RSA SHA-2 (understøttet siden OpenSSH 7.2 og brugt som standard), ssh-ed25519 (understøttet siden OpenSSH 6.5) og ecdsa-sha2-nistp256/384 baseret på RFC521 ECDSA (understøttet siden OpenSSH 5656).

Kilde: opennet.ru

Tilføj en kommentar