Lansarea OpenSSH 8.0

După cinci luni de dezvoltare prezentat eliberare OpenSSH 8.0, o implementare deschisă pentru client și server pentru lucrul prin protocoalele SSH 2.0 și SFTP.

Principalele modificări:

  • Ssh și sshd au fost adăugate suport experimental pentru o metodă de schimb de chei care este rezistentă la atacurile de forță brută pe un computer cuantic. Calculatoarele cuantice sunt radical mai rapide în rezolvarea problemei descompunerii unui număr natural în factori primi, care stă la baza algoritmilor moderni de criptare asimetrică și nu poate fi rezolvată eficient pe procesoarele clasice. Metoda propusă se bazează pe algoritm NTRU Prime (funcția ntrup4591761), dezvoltată pentru criptosisteme post-cuantice și metoda de schimb de chei cu curbă eliptică X25519;
  • În sshd, directivele ListenAddress și PermitOpen nu mai acceptă sintaxa moștenită „gazdă/port”, care a fost implementată în 2001 ca alternativă la „gazdă:port” pentru a simplifica lucrul cu IPv6. În condiții moderne, sintaxa „[::6]:1” a fost stabilită pentru IPv22, iar „gazdă/port” este adesea confundată cu indicarea subrețelei (CIDR);
  • ssh, ssh-agent și ssh-add acceptă acum cheile ECDSA în jetoane PKCS#11;
  • În ssh-keygen, dimensiunea implicită a cheii RSA a fost mărită la 3072 de biți, în conformitate cu noile recomandări NIST;
  • ssh permite utilizarea setării „PKCS11Provider=none” pentru a suprascrie directiva PKCS11Provider specificată în ssh_config;
  • sshd oferă un jurnal de afișare a situațiilor în care conexiunea este întreruptă atunci când se încearcă executarea comenzilor blocate de restricția „ForceCommand=internal-sftp” din sshd_config;
  • În ssh, atunci când se afișează o solicitare de confirmare a acceptării unei noi chei gazdă, în loc de răspunsul „da”, amprenta corectă a cheii este acum acceptată (ca răspuns la invitația de a confirma conexiunea, utilizatorul poate copia hash de referință primit separat prin clipboard, pentru a nu-l compara manual);
  • ssh-keygen oferă creșterea automată a numărului de secvență al certificatului atunci când se creează semnături digitale pentru mai multe certificate pe linia de comandă;
  • O nouă opțiune „-J” a fost adăugată la scp și sftp, echivalentă cu setarea ProxyJump;
  • În ssh-agent, ssh-pkcs11-helper și ssh-add, procesarea opțiunii de linie de comandă „-v” a fost adăugată pentru a crește conținutul de informații al ieșirii (atunci când este specificată, această opțiune este transmisă proceselor secundare, pentru exemplu, când ssh-pkcs11-helper este apelat de la ssh-agent );
  • Opțiunea „-T” a fost adăugată la ssh-add pentru a testa adecvarea cheilor din ssh-agent pentru efectuarea operațiunilor de creare și verificare a semnăturii digitale;
  • sftp-server implementează suport pentru extensia de protocol „lsetstat at openssh.com”, care adaugă suport pentru operația SSH2_FXP_SETSTAT pentru SFTP, dar fără a urma legăturile simbolice;
  • S-a adăugat opțiunea „-h” la sftp pentru a rula comenzile chown/chgrp/chmod cu cereri care nu folosesc legături simbolice;
  • sshd oferă setarea variabilei de mediu $SSH_CONNECTION pentru PAM;
  • Pentru sshd, un mod de potrivire „Match final” a fost adăugat la ssh_config, care este similar cu „Match canonical”, dar nu necesită ca normalizarea numelui de gazdă să fie activată;
  • S-a adăugat suport pentru prefixul „@” la sftp pentru a dezactiva traducerea ieșirii comenzilor executate în modul batch;
  • Când afișați conținutul unui certificat folosind comanda
    „ssh-keygen -Lf /path/certificate” afișează acum algoritmul folosit de CA pentru a valida certificatul;

  • Suport îmbunătățit pentru mediul Cygwin, de exemplu oferind o comparație fără majuscule și minuscule a numelor de grup și utilizatori. Procesul sshd din portul Cygwin a fost schimbat în cygsshd pentru a evita interferența cu portul OpenSSH furnizat de Microsoft;
  • S-a adăugat capacitatea de a construi cu ramura experimentală OpenSSL 3.x;
  • Eliminat vulnerabilitate (CVE-2019-6111) în implementarea utilitarului scp, care permite ca fișierele arbitrare din directorul țintă să fie suprascrise pe partea clientului atunci când se accesează un server controlat de un atacator. Problema este că atunci când folosește scp, serverul decide ce fișiere și directoare să trimită clientului, iar clientul verifică doar corectitudinea numelor obiectelor returnate. Verificarea din partea clientului se limitează doar la blocarea călătoriilor dincolo de directorul curent (“../”), dar nu ia în considerare transferul fișierelor cu nume diferite de cele solicitate inițial. În cazul copierii recursive (-r), pe lângă numele fișierelor, puteți manipula și numele subdirectoarelor într-un mod similar. De exemplu, dacă utilizatorul copiază fișiere în directorul principal, serverul controlat de atacator poate produce fișiere cu numele .bash_aliases sau .ssh/authorized_keys în locul fișierelor solicitate, iar acestea vor fi salvate de utilitarul scp în programul utilizatorului. directorul principal.

    În noua versiune, utilitarul scp a fost actualizat pentru a verifica corespondența dintre numele fișierelor solicitate și cele trimise de server, care se realizează pe partea client. Acest lucru poate cauza probleme cu procesarea măștilor, deoarece caracterele de extindere a măștilor pot fi procesate diferit pe partea de server și de client. În cazul în care astfel de diferențe determină clientul să nu mai accepte fișiere în scp, opțiunea „-T” a fost adăugată pentru a dezactiva verificarea pe partea clientului. Pentru a corecta pe deplin problema, este necesară o reelaborare conceptuală a protocolului scp, care în sine este deja depășit, așa că este recomandat să folosiți în schimb protocoale mai moderne, cum ar fi sftp și rsync.

Sursa: opennet.ru

Adauga un comentariu