După trei luni de dezvoltare lansare , o implementare deschisă a clientului și serverului pentru funcționarea pe protocoalele SSH 2.0 și SFTP.
Noua versiune introduce protecție împotriva atacurilor asupra scp, permițând serverului să transmită alte nume de fișiere, diferite de cele solicitate (spre deosebire de , atacul nu permite schimbarea directorului ales de utilizator sau a măștii glob). Amintim că în SCP serverul decide ce fișiere și directoare să trimită clientului, iar clientul doar verifică corectitudinea numelui obiectelor returnate. Esența problemei identificate este că, dacă apelul sistemului utimes eșuează, conținutul fișierului este interpretat ca metadate ale fișierului.
Această caracteristică, atunci când se conectează la un server controlat de un atacator, poate fi folosită pentru a salva în FS-ul utilizatorului alte nume de fișiere și alt conținut atunci când se copiază prin scp în configurații care duc la eșecul apelului utimes (de exemplu, când utimes este interzis de politica SELinux sau de un filtru de apeluri de sistem). Probabilitatea de a desfășura atacuri reale este considerată minimă, deoarece în configurațiile tipice apelul utimes nu eșuează. În plus, atacul nu trece neobservat - în timpul apelului scp se afișează o eroare de transfer de date.
Modificări generale:
- În sftp a fost oprită prelucrarea argumentului „-1”, similar cu ssh și scp, care a fostacceptat anterior, dar ignorat;
- În sshd, atunci când se folosește IgnoreRhosts, acum sunt oferite trei opțiuni: „yes” - a ignora rhosts/shosts, „no” - a lua în considerare rhosts/shosts și „shosts-only” - a permite „.shosts”, dar a interzice „.rhosts”;
- În ssh este asigurată prelucrarea substituției %TOKEN în setările LocalForward și RemoteForward, folosite pentru redirecționarea Unix-socketurilor;
- Este permisă încărcarea cheilor publice dintr-un fișier necriptat cu cheia privată, dacă nu există un fișier separat cu cheia publică;
- Dacă în sistem se află libcrypto, ssh și sshd folosesc acum implementarea algoritmului chacha20 din această bibliotecă, în loc de implementarea portabilă încorporată, care este mai puțin performantă;
- A fost implementată posibilitatea de dump al conținutului listei binare de certificate revocate atunci când se execută comanda „ssh-keygen -lQf /path”;
- În versiunea portabilă a fost implementată determinarea sistemelor în care semnalele cu opțiunea SA_RESTART întrerup execuția select;
- Au fost rezolvate problemele de compilare în sistemele HP/UX și AIX;
- Problemele legate de compilarea seccomp sandbox în anumite configurații Linux au fost remediate;
- Detecția bibliotecii libfido2 a fost îmbunătățită și au fost rezolvate problemele de compilare cu opțiunea „—with-security-key-builtin”.
Dezvoltatorii OpenSSH au avertizat din nou că algoritmii care folosesc hashuri SHA-1 vor fi clasificați ca învechiți, din cauza eficiența atacurilor de coliziune cu un prefix dat (costul generării unei coliziuni este estimat la aproximativ 45.000 de dolari). Într-unul dintre următoarele versiuni, se intenționează dezactivarea implicită a algoritmului de semnătură digitală cu cheie publică „ssh-rsa”, care este menționat în RFC-ul original pentru protocolul SSH și rămâne larg răspândit în practică (pentru a verifica utilizarea ssh-rsa în sistemele dvs., puteți încerca să vă conectați prin ssh cu opțiunea „-oHostKeyAlgorithms=-ssh-rsa”).
Pentru a facilita tranziția către noile algoritmi în OpenSSH, într-una dintre următoarele versiuni va fi activată în mod implicit setarea UpdateHostKeys, care va permite clienților să fie transferați automat la algoritmi mai siguri. Printre algoritmii recomandați pentru migrare se numără rsa-sha2-256/512 bazat pe RFC8332 RSA SHA-2 (susținut din OpenSSH 7.2 și utilizat implicit), ssh-ed25519 (susținut din OpenSSH 6.5) și ecdsa-sha2-nistp256/384/521 bazat pe RFC5656 ECDSA (susținut din OpenSSH 5.7).
Începând cu ultima versiune, „ssh-rsa” și „diffie-hellman-group14-sha1” au fost eliminate din lista CASignatureAlgorithms, care definește algoritmii permisi pentru semnătura digitală a noilor certificate, deoarece utilizarea SHA-1 în certificate implică riscuri suplimentare din cauza că atacatorul are timp nelimitat pentru a căuta coliziuni pentru un certificat existent, în timp ce timpul de atac asupra cheilor gazdelor este limitat de timeout-ul de conectare (LoginGraceTime).
Sursa: opennet.ro
