Dopo tre mesi di sviluppo, è stata rilasciata la versione OpenSSH 10.4, un'implementazione open-source di client e server per lavorare con i protocolli SSH 2.0 e SFTP. Le principali novità:
- È stato aggiunto il supporto sperimentale per uno schema combinato di generazione di firme digitali "mldsa44-ed25519", che unisce l'algoritmo post-quantum ML-DSA 44 e l'algoritmo basato su curve ellittiche Ed25519. Per attivare il supporto, occorre aggiungere "mldsa44-ed25519" alle direttive HostKeyAlgorithms e PubkeyAcceptedAlgorithms. Per generare le chiavi è possibile usare il comando "ssh-keygen -t mldsa44-ed25519".
- In ssh e sshd è stata implementata una nuova realizzazione del sistema di corrispondenza basato su pattern, fondata su un automa a stati finiti non deterministico e immune al problema di crescita esponenziale della complessità computazionale quando si utilizzano maschere con molti caratteri "*".
- Modificato il comportamento delle build Linux di sshd con la filtrazione delle chiamate di sistema tramite seccomp. In precedenza, il crash all'attivazione di SECCOMP o NO_NEW_PRIVS su sistemi Linux senza supporto per queste funzionalità portava alla registrazione di un avviso nei log e alla continuità del funzionamento senza isolamento, mentre ora provocherà un arresto anomalo.
- Utilizzando l'opzione "sshd -G", nel dump della configurazione le direttive verranno ora registrate utilizzando lettere maiuscole e minuscole, invece di essere scritte solo in minuscolo (ossia "PubkeyAuthentication" invece di "pubkeyauthentication").
- Il comportamento di ssh e sshd è stato allineato con lo standard RFC 4253: l'invio di messaggi non correlati alla negoziazione delle chiavi durante il ri-scambio delle chiavi causerà ora la chiusura della connessione. In precedenza, gli aggressori potevano lanciare un attacco DoS inviando senza fine messaggi estranei durante il processo di scambio delle chiavi, che venivano memorizzati in server e consumavano memoria.
Risolti diversi problemi di sicurezza:
- Nell'utilità ssh è stata risolta una potenziale dereferenziazione di memoria dopo la liberazione (use-after-free) durante l'accesso a codici maligni server. Il problema viene sfruttato cambiando la chiave host durante il ri-scambio delle chiavi.
- Vulnerabilità in sftp che consente di caricare un file in un'altra directory accedendo a un server maligno usando un comando nella forma "sftp host:/path .".
- Vulnerabilità in scp che consente di copiare file tra due server esterni server, uno dei quali è controllato dall'attaccante, organizzare la registrazione dei file nella directory padre, che si trova un livello sotto la directory di destinazione.
- È stato risolto un problema in sshd, che si manifestava durante l'uso dell'implementazione interna del server SFTP («internal-sftp»), disattivata per impostazione predefinita. Il problema era legato al taglio di lunghe sequenze nella riga di comando dopo il 9° argomento, che portava all'abbandono degli argomenti successivi. Pertanto, potrebbero essere esclusi potenzialmente opzioni legate alla sicurezza.
- In sshd è stata risolta una mancanza, per cui la direttiva «DisableForwarding=yes» non disattivava la possibilità di creare tunnel consentiti dall'opzione «PermitTunnel=yes» (non impostata per impostazione predefinita).
- In sshd è stato risolto un problema che poteva essere utilizzato per avviare un attacco di negazione del servizio nella fase prima dell'autenticazione quando era attivata la direttiva GSSAPIAuthentication nelle impostazioni (disabilitata per impostazione predefinita). Il problema non è bloccato dal limite «MaxAuthTries», ma è soggetto alla penalità «PerSourcePenalties».
- In sshd sono state risolte delle mancanze, per cui non veniva sempre aggiunto un ritardo minimo tra i tentativi di autenticazione.
Fonte: opennet.ru
