OpenSSH 8.3 release fixar scp sårbarhet

Efter tre månaders utveckling presenteras släpp OpenSSH 8.3, en öppen klient- och serverimplementering för att arbeta via SSH 2.0- och SFTP-protokollen.

Den nya utgåvan lägger till skydd mot scp-attacker som gör att servern kan skicka andra filnamn än de begärda (i motsats till tidigare sårbarhet, gör attacken det inte möjligt att ändra den användarvalda katalogen eller globmasken). Kom ihåg att i SCP bestämmer servern vilka filer och kataloger som ska skickas till klienten, och klienten kontrollerar bara att de returnerade objektnamnen är korrekta. Kärnan i det identifierade problemet är att om utimes systemanrop misslyckas, så tolkas innehållet i filen som filmetadata.

Denna funktion, när du ansluter till en server som kontrolleras av en angripare, kan användas för att spara andra filnamn och annat innehåll i användarens FS vid kopiering med scp i konfigurationer som leder till misslyckande vid anrop av utimes (till exempel när utimes är förbjudet av SELinux-policyn eller systemanropsfiltret). Sannolikheten för riktiga attacker uppskattas vara minimal, eftersom utimes-anropet inte misslyckas i typiska konfigurationer. Dessutom går attacken inte obemärkt förbi - när man anropar scp visas ett dataöverföringsfel.

Allmänna ändringar:

  • I sftp har bearbetningen av "-1"-argumentet stoppats, liknande ssh och scp, som tidigare accepterades men ignorerades;
  • I sshd, när du använder IgnoreRhosts, finns det nu tre val: "yes" - ignorera rhosts/shosts, "no" - respektera rhosts/shosts och "shosts-only" - tillåt ".shosts" men inaktivera ".rhosts";
  • Ssh stöder nu %TOKEN-substitution i inställningarna LocalFoward och RemoteForward som används för att omdirigera Unix-sockets;
  • Tillåt inläsning av offentliga nycklar från en okrypterad fil med en privat nyckel om det inte finns någon separat fil med den offentliga nyckeln;
  • Om libcrypto är tillgängligt i systemet använder ssh och sshd nu implementeringen av chacha20-algoritmen från detta bibliotek, istället för den inbyggda bärbara implementeringen, som släpar efter i prestanda;
  • Implementerade möjligheten att dumpa innehållet i en binär lista över återkallade certifikat när kommandot "ssh-keygen -lQf /path" kördes;
  • Den bärbara versionen implementerar definitioner av system där signaler med SA_RESTART-alternativet avbryter operationen av select;
  • Löste problem med montering på HP/UX och AIX-system;
  • Fixade problem med att bygga seccomp sandbox på vissa Linux-konfigurationer;
  • Förbättrad libfido2-biblioteksdetektering och löst byggproblem med alternativet "--med-säkerhetsnyckel-builtin".

OpenSSH-utvecklarna varnade också återigen för den förestående nedbrytningen av algoritmer med hjälp av 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, i en framtida version kommer UpdateHostKeys-inställningen att vara aktiverad som standard, vilket automatiskt kommer att migrera 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).

Från och med den senaste utgåvan har "ssh-rsa" och "diffie-hellman-group14-sha1" tagits bort från CASignatureAlgorithms-listan som definierar de algoritmer som får signera nya certifikat digitalt, eftersom användning av SHA-1 i certifikat utgör en ytterligare risk på grund av att angriparen har obegränsad tid på sig att söka efter en kollision för ett befintligt certifikat, medan tiden för attack mot värdnycklar begränsas av anslutningstiden (LoginGraceTime).

Källa: opennet.ru

Lägg en kommentar