È stato pubblicato Versione OpenSSH 9.3, un'implementazione client e server aperta per lavorare con i protocolli SSH 2.0 e SFTP. La nuova versione di OpenSSH 9.3 riesce a correggere alcuni problemi di sicurezza, oltre ad aggiungere alcune nuove funzionalità
Per coloro che non sono a conoscenza di OpenSSH (Open Secure Shell) dovrebbe saperlo questo è un insieme di applicazioni che consentono comunicazioni crittografate su una rete, utilizzando il protocollo SSH. È stato creato come alternativa gratuita e aperta al programma Secure Shell, che è un software proprietario.
Principali novità di OpenSSH 9.3
In questa nuova versione di OpenSSH 9.3 una delle nuove funzionalità è che sshd aggiunge un'opzione `sshd -G` che analizza e stampa la configurazione effettiva senza tentare di caricare chiavi private ed eseguire altri controlli. Ciò consente di utilizzare l'opzione prima che le chiavi siano state generate e per la valutazione e la verifica della configurazione da parte di utenti non privilegiati.
Per la parte relativa alla correzione dei bug, è stato rilevato un errore logico nell'utilità ssh-add, quindi quando si aggiungono chiavi smart card a ssh-agent, le restrizioni specificate con l'opzione "ssh-add -h" non vengono passate all'agente. Di conseguenza, è stata aggiunta una chiave all'agente, quindi non c'erano restrizioni che consentissero connessioni solo da determinati host.
Un'altra delle correzioni che è stato implementato, è il vulnerabilità nell'utilità ssh che potrebbe causare la lettura dei dati dall'area dello stack fuori dal buffer allocato durante l'elaborazione di risposte DNS appositamente predisposte se l'impostazione VerifyHostKeyDNS è inclusa nel file di configurazione.
Il problema esiste nell'implementazione integrata della funzione getrrsetbyname(), che viene utilizzata su versioni portatili di OpenSSH compilate senza utilizzare la libreria ldns esterna (–with-ldns) e su sistemi con librerie standard che non supportano getrrsetbyname() chiamando. La possibilità di sfruttare la vulnerabilità, oltre che per avviare un denial of service per il client ssh, è considerata improbabile.
Delle nuove versioni che si distinguono:
- In scp e sftp corregge la corruzione della barra di avanzamento su schermi larghi;
- ssh-add e ssh-keygen usano RSA/SHA256 durante il test dell'usabilità della chiave privata, poiché alcuni sistemi stanno iniziando a disabilitare RSA/SHA1 in libcrypto.
- In sftp-server è stata apportata una correzione per una perdita di memoria.
- In ssh, sshd e ssh-keyscan il codice di compatibilità è stato rimosso e semplificato ciò che resta del protocollo "vestigale".
- È stata apportata una correzione alla serie di risultati dell'analisi statica di Coverity a basso impatto.
Questi includono diversi segnalati:
* ssh_config(5), sshd_config(5): indica che alcune opzioni non lo sono
prima partita vinta
* Registro di rielaborazione per test di regressione. Test di regressione ora
acquisire registri separati per ogni chiamata ssh e sshd in un test.
* ssh(1): fa funzionare `ssh -Q CASsignatureAlgorithms` come pagina man
dice che dovrebbe; bz3532.
Infine, va notato che una vulnerabilità può essere osservata nella libreria libskey incluso con OpenBSD, utilizzato da OpenSSH. Il problema esiste dal 1997 e può causare un overflow del buffer dello stack durante l'elaborazione di nomi host appositamente predisposti.
Infine se sei interessato a saperne di più su questa nuova versione, puoi controllare i dettagli andando al seguente collegamento.
Come installare OpenSSH 9.3 su Linux?
Per coloro che sono interessati a poter installare questa nuova versione di OpenSSH sui propri sistemi, per ora possono farlo scaricando il codice sorgente di questo e eseguire la compilazione sui propri computer.
Questo perché la nuova versione non è stata ancora inclusa nei repository delle principali distribuzioni Linux. Per ottenere il codice sorgente, puoi farlo dal seguente link.
Fatto il download, ora decomprimeremo il pacchetto con il seguente comando:
tar -xvf openssh-9.3.tar.gz
Entriamo nella directory creata:
cd openssh-9.3
Y possiamo compilare con i seguenti comandi:
./configure --prefix=/opt --sysconfdir=/etc/ssh make make install