L'ultimo difetto del kernel Linux non ha un nome elegante; si chiama semplicemente "ssh‑keysign‑pwn". È la quarta falla di sicurezza locale di alto profilo a colpire Linux in poche settimane. Questa consente agli utenti ordinari di leggere tranquillamente alcuni dei file più sensibili di un sistema, incluse le chiavi private host di Secure Shell (SSH) e il file delle password shadow.

La vulnerabilità prende il soprannome "ssh‑keysign‑pwn" da uno dei principali percorsi di sfruttamento: l'abuso del binario helper ssh-keysign di OpenSSH. Keysign viene utilizzato per l'autenticazione basata su host e di solito viene eseguito con setuid root, aprendo le chiavi SSH dell'host prima di abbassare i privilegi per completare il suo lavoro.

I ricercatori di sicurezza dell'azienda Qualys hanno divulgato CVE‑2026‑46333, una vulnerabilità di divulgazione di informazioni nel controllo di accesso ptrace del kernel Linux. Qualys afferma che esiste in una forma o nell'altra da circa sei anni.

Il difetto risiede nella logica __ptrace_may_access() che viene eseguita quando i processi terminano. In determinate condizioni, il kernel salta i normali controlli "dumpable" una volta che un processo ha rilasciato la sua mappatura della memoria. Questo apre una breve finestra per un altro processo per rubare i suoi descrittori di file.

Sebbene ssh‑keysign‑pwn non fornisca di per sé una shell di root completa, la capacità di esfiltrare chiavi host e hash delle password è un potente elemento costitutivo per il movimento laterale e la persistenza a lungo termine. Inoltre, con le chiavi SSH rubate, gli aggressori possono impersonare macchine in relazioni di fiducia basate su host. Con l'accesso alla directory delle password shadow, possono tentare il cracking offline delle password e riutilizzare quelle credenziali su più sistemi.

Nella sua patch, Linus Torvalds ha spiegato che il problema esiste perché "Abbiamo uno strano caso speciale: ptrace_may_access() usa 'dumpable' per controllare varie altre cose del tutto indipendentemente dalla MM (tipicamente usando esplicitamente flag come PTRACE_MODE_READ_FSCREDS). Incluso per thread che non hanno più una VM (e forse non l'hanno mai avuta, come la maggior parte dei thread del kernel). Non è ciò per cui questo flag è stato progettato, ma è quello che è."

Ciò che questo significa per te e me è che combinando questo errore logico con la chiamata di sistema pidfd_getfd(2), gli utenti non privilegiati possono intrufolarsi in processi privilegiati che stanno spegnendosi, afferrare i loro descrittori di file ancora aperti e leggere file che normalmente sarebbero accessibili solo a root.

La buona notizia è che la correzione è disponibile. Il manutentore stabile di Linux Greg Kroah‑Hartman ha già rilasciato aggiornamenti su diversi rami supportati, incluse nuove versioni come 7.0.8, 6.18.31, 6.12.89, 6.6.139, 6.1.173, 5.15.207 e 5.10.256, tutte con la correzione per ssh‑keysign‑pwn. Dovreste passare a uno di questi kernel il prima possibile. Questa falla colpisce tutti i kernel Linux rilasciati prima del 14 maggio 2026.

Fino a quando i kernel patchati non saranno ampiamente disponibili, i team di sicurezza hanno alcune opzioni di mitigazione, ma ognuna ha dei compromessi. Una soluzione rapida e sporca è stringere le restrizioni ptrace di Yama di Linux, che disabilita ptrace per gli utenti non root e blocca lo sfruttamento, ma rompe anche molti flussi di lavoro di debug e monitoraggio. Potete anche ridurre l'esposizione disabilitando l'autenticazione SSH basata su host e l'helper ssh-keysign completamente sui sistemi dove non sono necessari, anche se questo blocca SSH sul nascere.

Come ha detto un membro stanco del team di Manjaro Linux: "Non accendete il PC se non vi serve. Chiudetevi dentro e guardatevi alle spalle." Beh, questo è sicuramente un modo per affrontarlo!