Alpine: una password lunga apre account senza password
Una falla di OpenSSH (CVE-2026-123158, gravità alta: 8,1 su 10) sui Linux che usano la libreria musl senza PAM — Alpine Linux è il caso principale — fa entrare senza conoscere nessuna password in un account senza password utilizzabile, usando una password fra 257 e 1024 byte. È corretta in OpenSSH 10.6p2; su Alpine servono anche i pacchetti aggiornati. In alternativa si disattiva l'accesso con password.
aggiornata il 6 novembre 2026 · si legge in 3 minuti
Gestisci un server o un router con Alpine Linux, OpenWrt o simili? Qui trovi quando la falla colpisce davvero, come correggerla e come controllare se qualcuno è entrato. Il resoconto incrocia l'avviso ufficiale di Alpine Linux, il record CVE, le note di rilascio di OpenSSH e la pagina del ricercatore che l'ha trovata, oltre al resoconto di BleepingComputer.
Cosa è successo
Il ricercatore Ozgun Kultekin (Wakefield) ha scoperto che OpenSSH, il programma che permette di collegarsi da remoto ai server, su questi sistemi accetta una password sbagliata se è troppo lunga, ma solo per gli account senza password utilizzabile; gli account con una password valida non si aprono così. Per trovarla ha fatto fare a degli agenti di intelligenza artificiale circa 17.600 prove di accesso.
Gli account con accesso a password disattivato hanno un asterisco (*) al posto della password cifrata. La funzione crypt() della libreria musl restituisce anch'essa «*» quando fallisce, ad esempio con una password oltre i 256 byte. I due asterischi risultano uguali e il login riesce.
La causa di fondo risale al 2016, a una correzione di CVE-2016-6210 pensata contro l'enumerazione degli utenti. La falla ha avuto un identificativo ufficiale solo il 5 novembre 2026, lo stesso giorno della notizia: è CVE-2026-123158, con gravità 8,1 su 10 (alta) secondo il punteggio CVSS 3.1. OpenSSH l'ha corretta nella versione 10.6p2, uscita il 5 novembre 2026 insieme alla segnalazione.

Chi è colpito
Le condizioni che seguono vengono dall'avviso ufficiale di Alpine Linux, incrociato con la pagina del ricercatore per i dettagli che l'avviso non copre (gli altri sistemi musl). Servono tutte insieme:
- sistema basato su musl senza PAM: è il caso di Alpine Linux (impostazione predefinita del suo pacchetto openssh-server). Secondo il ricercatore, in generale anche di OpenWrt, Buildroot e Yocto — ma su OpenWrt il server SSH preinstallato è Dropbear, non colpito: conta solo chi ci ha installato OpenSSH al suo posto;
- accesso SSH con password attivo (non basta avere il demone acceso: serve che l'accesso con password non sia disabilitato);
- almeno un account locale con il campo password a «*» (tipico degli account che usano solo chiavi, o LDAP, o root su alcune immagini Alpine — root resta comunque protetto dall'impostazione predefinita PermitRootLogin prohibit-password, a meno che non sia stata cambiata);
- almeno un altro account locale con un hash di password valido ($5$ o $6$);
- l'attaccante invia una password fra 257 e 1024 byte (il record CVE la descrive come «fra 256 e 1024»). Il record CVE classifica comunque la complessità dell'attacco come alta: non è detto che basti un solo tentativo.
Chi non è colpito, e le eccezioni da conoscere
Secondo l'avviso ufficiale di Alpine Linux, non sono colpiti: i sistemi con PAM attivo (openssh-server-pam con UsePAM yes — con UsePAM no resta invece esposto); i container Docker che non eseguono sshd; chi ha già PasswordAuthentication no; gli account bloccati (campo password «!», diverso da «*»); i sistemi senza alcun hash «$»; le immagini cloud con cloud-init che disattiva la password di default. Le immagini già aggiornate (3.21.10, 3.22.8, 3.23.8, 3.24.4 e successive) hanno già il pacchetto corretto.
Questo invece lo dicono il ricercatore e BleepingComputer, non l'avviso di Alpine (che non li nomina): i sistemi basati su glibc — Debian, Ubuntu, Fedora — non sono colpiti, perché la loro implementazione di crypt() non ha lo stesso comportamento in caso di errore.
Un'eccezione da conoscere: le immagini tiny-cloud di Alpine dalla 3.18.11 alla 3.24.3 hanno un utente «alpine» con doas senza password. Se sulla stessa macchina esiste un hash «$6$», diventano sfruttabili: sia Alpine sia il ricercatore dicono che l'accesso equivale a root.
Cosa fare
La correzione è in OpenSSH 10.6p2. Alpine ha pubblicato i numeri esatti dei pacchetti corretti per ogni ramo:
| Ramo Alpine | Pacchetto openssh corretto |
|---|---|
| edge | 10.6_ |
| 3.24 | 10.3_ |
| 3.23 | 10.2_ |
| 3.22 | 10.0_ |
| 3.21 | 9.9_ |
| 3.20 | 9.7_ |
| 3.19 | 9.6_ |
| 3.18 | 9.3_ |
| 3.17 | 9.1_ |
| 3.16 | 9.0_ |
- Aggiorna con apk upgrade -U -a (l'opzione -U aggiorna anche l'indice dei pacchetti, non serve lanciare apk update a parte).
- Riavvia sshd con rc-service sshd restart: aggiornare il pacchetto non basta, il demone già in esecuzione resta vulnerabile finché non riparte.
- Se non puoi aggiornare subito, disattiva l'accesso con password. Dalla versione 3.19 in poi crea il file /etc/ssh/sshd_config.d/00-no-passwords.conf (sshd legge solo i file che finiscono in .conf in quella cartella, e solo da questa versione in su) con dentro PasswordAuthentication no. Sulle versioni precedenti (3.16, 3.17, 3.18), quella cartella non viene letta: secondo l'avviso Alpine bisogna modificare direttamente /etc/ssh/sshd_config (facendone prima una copia, ad esempio cp /etc/ssh/sshd_config /etc/ssh/sshd_config.bak). In entrambi i casi verifica con sshd -t, riavvia sshd e controlla con sshd -T | grep -i passwordauthentication. Prima di farlo assicurati che il login con chiave funzioni e tieni aperta una sessione di prova.
- Sulle immagini tiny-cloud (AWS, Azure) aggiorna o disattiva la password su ogni istanza già avviata: il pacchetto nuovo non si applica da solo a una macchina già accesa.
- Per controllare accessi sospetti cerca Accepted password for in /var/log/messages per account con «*» in /etc/shadow (come «alpine», «root» o utenti solo-chiave), e controlla anche l'uso di doas, utenti creati di recente e chiavi autorizzate aggiunte. Se non puoi escludere un accesso, considera la macchina compromessa.
Da dove vengono questi dati
Fonti ufficiali lette per intero: il record CVE-2026-123158 (CVE Program/MITRE), l'avviso di sicurezza di Alpine Linux del 5 novembre 2026, le note di rilascio di OpenSSH 10.6p2 e il commit di correzione, e la pagina del ricercatore Ozgun Kultekin su sshhole.com. BleepingComputer (5 novembre 2026) resta citata come resoconto giornalistico, utile per il contesto ma non più l'unica fonte.
Non risulta da nessuna fonte: dati su attacchi reali già avvenuti, quanti sistemi nel mondo sono esposti, rilevanza specifica per utenti o aziende italiane.
I prezzi citati in questa guida sono quelli letti sul listino ufficiale del fornitore. Possono cambiare senza preavviso: controllali sul sito del fornitore prima di decidere.
Domande frequenti
Il mio server Ubuntu o Debian è a rischio per la falla OpenSSH-musl (CVE-2026-123158)?
No. I sistemi con PAM attivo non sono colpiti secondo l'avviso ufficiale di Alpine; i sistemi basati su glibc (Debian, Ubuntu, Fedora) non sono colpiti secondo il ricercatore che ha scoperto la falla e BleepingComputer (l'avviso Alpine non li nomina).
La falla OpenSSH-musl è già sfruttata da qualcuno?
Nessuna delle fonti ufficiali lo dichiara. Il punteggio CISA (SSVC) classifica lo sfruttamento di CVE-2026-123158 come «proof of concept» (una dimostrazione tecnica esiste), non come attacco automatizzato o già diffuso.
C'è un numero CVE per questa falla OpenSSH?
Sì: CVE-2026-123158, assegnato il 5 novembre 2026 con gravità 8,1 su 10 (alta). Al momento in cui la notizia è stata scritta la prima volta non era ancora stato pubblicato: è arrivato lo stesso giorno.
Da dove vengono questi dati
- GitHub (CVE Program / MITRE) — record ufficiale CVE-2026-123158 (5 novembre 2026) letta per intero; fonte primaria, descrizione tecnica e punteggio CVSS
- Alpine Linux — avviso ufficiale: bypass dell'autenticazione per password in openssh-server (5 novembre 2026) letta per intero; fonte primaria, numeri dei pacchetti e condizioni di sfruttabilità
- OpenSSH — note di rilascio della versione 10.6p2 letta per intero; fonte primaria, conferma della correzione e credito al ricercatore
- sshhole.com (Ozgun Kultekin) — pagina tecnica del ricercatore letta per intero; fonte primaria, dettaglio tecnico su crypt() di musl
- BleepingComputer — OpenSSH flaw lets attackers log into password-disabled Linux accounts (5 novembre 2026) letta per intero; resoconto giornalistico, non più l'unica fonte
Questa guida l’ho scritta con l’aiuto dell’intelligenza artificiale e l’ho verificata sulle fonti qui sopra prima di pubblicarla. Come lavoro
