OpenSSH 10.6: rafforzamento della sicurezza, firme ibride post-quantum e novità per SSH e SFTP

OpenSSH è la suite open source di riferimento per l’accesso remoto sicuro e il trasferimento cifrato di file, utilizzata quotidianamente da amministratori di sistema, sviluppatori e aziende di ogni dimensione per l’accesso remoto su sistemi GNU/Linux, macOS, Windows e molte altre piattaforme. Sviluppata e mantenuta dal progetto OpenBSD, offre un’implementazione completa del protocollo SSH 2.0 (acronimo di Secure Shell, shell sicura) e include il supporto sia per il client sia per il server SFTP (SSH File Transfer Protocol, protocollo di trasferimento file tramite SSH), lo standard de facto per copiare documenti tra computer in modo cifrato. Offre inoltre strumenti dedicati alla gestione delle chiavi crittografiche, rendendo disponibile un ambiente completo per professionisti IT e utenti che necessitano di comunicazioni affidabili e protette.
La storia di OpenSSH ha inizio nel 1999, quando venne creato come fork (progetto derivato) di OSSH, derivato a sua volta dall’ultima versione open source di SSH 1.2.12. Da quel momento il progetto ha continuato a evolversi fino a diventare un componente predefinito in numerose distribuzioni GNU/Linux, grazie alla sua stabilità, sicurezza e conformità con gli standard aperti. A partire da Windows 10 build 1809 e Windows Server 2019, OpenSSH è disponibile anche come funzionalità opzionale su Windows, ampliando ulteriormente la propria diffusione.
La licenza BSD con cui è distribuito consente un utilizzo libero, inclusa la modifica e la ridistribuzione senza vincoli, purché vengano rispettate le condizioni originali, rendendolo particolarmente adatto a contesti professionali e infrastrutture complesse. Grazie a questa licenza permissiva, il codice di OpenSSH è integrato praticamente in ogni distribuzione GNU/Linux, nei sistemi *BSD, in macOS e in Windows, oltre a essere incorporato in migliaia di prodotti commerciali.
Uno dei punti di forza di OpenSSH è la sua ampia compatibilità multipiattaforma. Oltre alle distribuzioni GNU/Linux, il progetto supporta macOS, Windows, i sistemi BSD, Solaris e molte altre varianti Unix-like. Questa versatilità, unita alla capacità di integrarsi in ambienti eterogenei e alla disponibilità nei principali repository software, lo rende uno strumento essenziale per la gestione di infrastrutture IT moderne. La possibilità di configurare server e client, automatizzare procedure, proteggere l’accesso remoto e trasferire file in modo sicuro contribuisce a consolidare OpenSSH come una delle tecnologie più affidabili nel panorama della sicurezza informatica.
Esistono 2 varianti ufficiali: la versione destinata a OpenBSD e la versione “portabile”, contraddistinta dal suffisso p1, che gira su GNU/Linux, Windows, macOS, Solaris, AIX e numerose altre piattaforme UNIX-like.
La nuova versione OpenSSH 10.6 è stata rilasciata il 6 ottobre 2026 mentre la versione stabile precedente, OpenSSH 10.5, era stata rilasciata l’11 agosto 2026. L’intervallo tra le 2 versioni, più breve rispetto al consueto ciclo semestrale, è una scelta deliberata del team di sviluppo, che ha deciso di pubblicare versioni più frequenti per far arrivare prima le correzioni di sicurezza nelle mani degli utenti: molti difetti recenti sono stati individuati con l’ausilio di modelli di intelligenza artificiale, e gli sviluppatori ritengono che eventuali aggressori potrebbero scoprire autonomamente gli stessi problemi.
Novità in OpenSSH 10.6
OpenSSH 10.6 porta con sé numerose correzioni di sicurezza, diverse nuove funzionalità e interventi di manutenzione. Le modifiche più rilevanti riguardano la crittografia post-quantum e la mitigazione di un attacco laterale alla compressione dei dati, ma non mancano miglioramenti orientati all’usabilità quotidiana di client e server. Andiamo a scoprire nel dettaglio le principali novità.
Firma ibrida post-quantum ssh-mldsa44-ed25519
La novità più significativa dal punto di vista crittografico è l’abilitazione dell’algoritmo di firma ibrido post-quantum ssh-mldsa44-ed25519, che combina lo schema ML-DSA-44, basato sul problema matematico dei reticoli e resistente agli attacchi dei computer quantistici, con il consolidato algoritmo Ed25519. Si tratta di una misura di sicurezza anticipata contro la cosiddetta “raccolta ora e decifratura dopo”, ovvero l’archiviazione oggi di traffico cifrato per decifrarlo in futuro con tecnologie quantistiche. Un dettaglio importante: la nuova implementazione abbandona il suffisso “@openssh.com” usato dalla precedente versione sperimentale, quindi le chiavi generate con il supporto sperimentale di OpenSSH 10.4 devono essere rigenerate o rimosse, perché non risultano più valide.
Mitigazione dell’attacco “Crossing the Streams”
Sia il client ssh sia il server sshd ora disattivano il codificatore di dizionario LZ77, il componente dell’algoritmo di compressione che sostituisce le sequenze di dati ripetute con riferimenti a occorrenze precedenti, condividendo un unico dizionario tra tutti i canali della sessione. La modifica mitiga l’attacco laterale (side-channel) descritto nel documento “Crossing the Streams: SSH Plaintext Recovery via a Common Compression Context in Multiplexed Channels“: un aggressore che controlla l’input di un canale può, sfruttando il dizionario condiviso, recuperare informazioni riservate presenti in un altro canale osservando la lunghezza dei dati cifrati trasmessi. Come conseguenza, l’opzione Compression risulta meno efficace; gli sviluppatori raccomandano di usare la compressione a livello di singola applicazione, immune a questa classe di attacchi e generalmente più efficiente.
Filtraggio dei nomi utente e correzioni di sicurezza
Il client ssh rifiuta i nomi utente digitati sulla riga di comando che contengono i caratteri dollaro ($) e barra rovesciata (\), per impedire che input non attendibile causi iniezione di comandi nella shell in contesti come ProxyCommand o Match exec, dove i valori vengono passati a programmi esterni. I nomi utente specificati con la direttiva “User” nei file di configurazione non sono soggetti a questa restrizione. Il team ricorda comunque che è sconsigliato esporre direttamente la riga di comando di ssh a input non verificato, dato che nessun filtro può essere assoluto rispetto alla varietà di shell e configurazioni esistenti.
Gli altri interventi di sicurezza riguardano:
- la validazione più rigorosa dei percorsi restituiti dal server in SFTP, che impediva a un server malizioso di pilotare una copia ricorsiva verso cartelle esterne alla destinazione;
- la gestione delle credenziali GSSAPI (Generic Security Service Application Program Interface, Interfaccia Generica per i Servizi di Sicurezza delle Applicazioni), ora salvate solo dopo l’autenticazione riuscita e azzerate prima di ogni nuovo tentativo, evitando che credenziali di un accesso fallito restino disponibili per autenticazioni successive;
- il rispetto completo della parola chiave “restrict” in authorized_keys anche per l’inoltro tramite tunnel (PermitTunnel);
- la correzione della gestione dell’ora legale nella conversione delle date dei certificati, che poteva generare scadenze errate fino a 1 ora (2 nel fuso orario Antarctica/Troll);
- il controllo che i pacchetti compressi non superino la lunghezza massima supportata dopo la decompressione;
- l’interpretazione corretta dell’argomento “none” in opzioni come AuthorizedPrincipalsFile quando sovrascritte da un blocco Match.
Infine, su vecchie piattaforme prive di passaggio dei descrittori di file e con allocazione del terminale (PTY) riservata all’amministratore, come QNX 6 e SCO OpenServer 5, il processo post-autenticazione sshd-session manteneva i privilegi di root e poteva eludere i controlli previsti per l’utente: per questa ragione le opzioni “GatewayPorts” e “StreamLocalForwarding” vengono ora disattivate forzatamente su tali sistemi.
Nuove funzionalità per SSH, SFTP e ssh-agent
Sul fronte delle funzionalità spicca l’opzione WarnWeakCrypto anche per il server, attiva per impostazione predefinita: registra un avviso nei registri di sistema (log) quando il client usa uno schema di accordo delle chiavi non sicuro contro i computer quantistici. In SFTP arriva il flag -p per i comandi mkdir e lmkdir, che crea tutte le cartelle intermedie necessarie, analogamente al comando mkdir di sistema, senza segnalare errore se una cartella esiste già. Il client ssh include le stringhe di versione locale e remota nella visualizzazione “~I”, utile per la diagnostica, mentre ChannelTimeout accetta ora valori con frazioni di secondo.
Gli amministratori di sistema trovano novità interessanti nella gestione dell’agente di autenticazione:
- la nuova opzione AgentSocketPath di sshd_config permette di specificare dove collocare il socket (l’endpoint di comunicazione locale usato dall’agente) per l’inoltro dell’agente, scegliendo tra un percorso specifico dell’utente o una cartella condivisa con sottocartella a nome casuale;
- il comando ssh-agent acquisisce il flag -A per la stessa finalità;
- ssh-add introduce -P per saltare la richiesta del PIN quando il token FIDO (Fast IDentity Online, standard di autenticazione con chiavi hardware) o PKCS#11 non lo richiede;
- le chiavi residenti caricate da un token FIDO ora conservano l’obbligo di verifica dell’utente tramite PIN o biometria, grazie al controllo della policy credProtect.
Completano il quadro:
- il nuovo max-pk-ok nell’opzione PubkeyOptions, che riserva un numero configurabile (predefinito 6) di verifiche di chiave pubblica non conteggiate nel limite MaxAuthTries, consentendo di provare più chiavi prima della disconnessione;
- l’estensione di TCPKeepAlive, che ora può attivare i keepalive (segnali periodici che mantengono attiva la connessione) anche sui socket creati per le connessioni inoltrate;
- la modalità di esportazione “hexdump” di ssh-keygen, che scarica la chiave in formato esadecimale utile per documentazione e test;
- l’aumento dei giri predefiniti di KDF (Key Derivation Function, funzione di derivazione della chiave) per le chiavi private, passati da 24 a 32, con un limite massimo di 1 milione di giri accettati in scrittura e lettura per evitare blocchi con chiavi malformate.
Deprecazioni previste
OpenSSH 10.6 segnala 2 deprecazioni importanti. La prima riguarda il flag -R di scp, usato per copiare direttamente 2 host remoti facendo eseguire scp su uno di essi: si tratta di un’ottimizzazione fragile, che richiede credenziali sull’host remoto e comporta rischi se le regole di citazione della shell remota differiscono da quelle attese. Dalla versione 10.6 il flag continua a funzionare ma emette un avviso di deprecazione; nelle versioni future verrà ignorato, mantenendo il comportamento predefinito di copia attraverso l’host locale. La seconda riguarda le piattaforme che non supportano il passaggio dei descrittori di file e richiedono privilegi di root per allocare il terminale, come SCO OpenServer 5 e QNX 6: il loro supporto verrà rimosso in una futura versione, a meno che non emergano soluzioni alternative.
Correzioni e aggiornamenti di portabilità
Tra gli interventi correttivi figurano:
- la correzione della corrispondenza della configurazione per lingue turche con caratteri i/I puntati e non puntati (azerbaijano e tataro di Crimea);
- l’eliminazione di un blocco che poteva verificarsi inserendo la password da un processo in background senza terminale;
- la risoluzione di una condizione di competizione in sshd per cui i segnali di terminazione potevano essere ignorati durante un riavvio richiesto da SIGHUP;
- la prevenzione di un errore di dereferenziazione in SFTP quando il server fallisce un’operazione stat;
- la verifica dei tipi di firma della chiave rispetto agli elenchi di algoritmi consentiti, che ora avviene il prima possibile durante l’analisi, riducendo la superficie di attacco;
- il passaggio dell’implementazione di riserva dell’algoritmo ed25519 da SUPERCOP a libsodium, che offre controlli di rigore supplementari.
Sul fronte della portabilità:
- il sandbox seccomp (l’ambiente isolato che limita le chiamate di sistema disponibili al processo) accetta ora la chiamata madvise con il flag MADV_DONTNEED_LOCKED, richiesta dall’allocatore rinforzato di GrapheneOS, e restringe i flag accettati per mremap;
- sshd non viene più collegato a libselinux;
- viene rimosso un espediente obsoleto per NetBSD che causava cicli di CPU prima dell’autenticazione;
- torna disponibile PAMServiceName nei blocchi Match;
- l’opzione di configurazione –disable-fd-passing viene eliminata.
Su macOS, con SDK 27 o successivi, il sandbox del server non è più supportato perché l’API (Application Programming Interface, Interfaccia di Programmazione delle Applicazioni) necessaria è stata rimossa.
Download e Riferimenti
OpenSSH 10.6 ha una variante appositamente ottimizzata per essere compilata, installata ed eseguita su sistemi operativi diversi da OpenBSD, il sistema nativo per cui OpenSSH è stato inizialmente sviluppato, contraddistinta dalla presenza di una p nel seriale: OpenSSH 10.6p1. Mentre la versione originale, OpenSSH 10.6, è strettamente integrata con OpenBSD, quella portabile, OpenSSH 10.6p1, garantisce il corretto funzionamento sui sistemi GNU/Linux, macOS e altre distribuzioni BSD, dove le differenze a livello di kernel, librerie di sistema e strumenti di gestione potrebbero altrimenti causare incompatibilità o malfunzionamenti.
Questa versione portabile include correzioni di compatibilità specifiche per ciascuna piattaforma, come ad esempio:
- Adeguamenti alle librerie di sistema (ad esempio, per la gestione della crittografia o delle connessioni di rete).
- Supporto per chiamate di sistema (syscall) che possono variare tra i diversi sistemi operativi.
- Ottimizzazioni per l’integrazione con gli ambienti grafici, come il nuovo strumento
askpassper GNOME 40 e versioni successive, che semplifica l’inserimento delle password in interfacce grafiche, rendendo l’esperienza utente più intuitiva e accessibile.
Inoltre, la versione portabile è pensata per sistemi con architetture hardware diverse (ad esempio, 32-bit o 64-bit) e include miglioramenti per la gestione di funzionalità avanzate come PAM (Pluggable Authentication Modules) e seccomp (un meccanismo di sandboxing per limitare le azioni dei processi).
Grazie a queste modifiche, OpenSSH 10.6 può essere utilizzato in modo affidabile su una vasta gamma di sistemi, mantenendo tutte le sue funzionalità di sicurezza e prestazioni.
OpenSSH 10.6 è disponibile sui mirror ufficiali elencati sulla pagina dei download di OpenSSH, in 2 archivi: openssh-10.6.tar.gz per OpenBSD e openssh-10.6p1.tar.gz per la versione portabile destinata a GNU/Linux, Windows e altre piattaforme. Si consiglia di verificare l’integrità degli archivi con i codici di controllo SHA256 (pubblicati in formato base64 e non esadecimale, una particolarità da tenere presente con gli strumenti di verifica) e la firma PGP (Pretty Good Privacy), la cui chiave pubblica è disponibile sul mirror cdn.openbsd.org.
Per la maggior parte degli utenti non è necessario scaricare i sorgenti: essendo un componente di sistema, l’aggiornamento avviene tramite il gestore dei pacchetti software della propria distribuzione GNU/Linux, oppure tramite i normali canali di aggiornamento su macOS e Windows. Gli amministratori di sistema sono invitati a pianificare l’aggiornamento con la consueta attenzione, dato che l’applicazione coinvolge il demone di accesso remoto e la sostituzione delle chiavi sperimentali post-quantum.
Riferimenti Ufficiali
Per consultare l’elenco integrale delle modifiche è disponibile il changelog (registro delle modifiche) completo e i dettagli tecnici sulla pagina ufficiale delle note di rilascio di OpenSSH.
L’annuncio ufficiale della versione OpenSSH 10.6 è disponibile anche su OpenBSD Journal.
Per la segnalazione di bug seguire le indicazioni della guida alla segnalazione, con l’avvertenza che le vulnerabilità di sicurezza vanno comunicate direttamente all’indirizzo openssh@openssh.com. Chi desidera sostenere il progetto può consultare la pagina delle donazioni.
Fonte: https://www.openssh.org/
Fonte: https://www.openssh.org/releasenotes.html#10.6
Fonte: https://undeadly.org/cgi?action=article;sid=20261007052827
Fonte: https://linuxiac.com/openssh-10-6-released-with-security-hardening-post-quantum-support/
Se vuoi sostenermi, puoi farlo acquistando qualsiasi cosa dai diversi link di affiliazione che ho nel mio sito o partendo da qui oppure alcune di queste distribuzioni GNU/Linux che sono disponibili sul mio negozio online, quelle mancanti possono essere comunque richieste.
Se ti senti generoso, puoi anche donarmi solo 1€ o più se vuoi con PayPal e aiutarmi a continuare a pubblicare più contenuti come questo. Grazie!
Hai dubbi o problemi? Ti aiutiamo noi!
Se vuoi rimanere sempre aggiornato, iscriviti al nostro canale Telegram.Se vuoi ricevere supporto per qualsiasi dubbio o problema, iscriviti alla nostra community Facebook o gruppo Telegram.
Cosa ne pensi? Fateci sapere i vostri pensieri nei commenti qui sotto.
Ti piace quello che leggi? Per favore condividilo con gli altri.
























