Buco critico per le PMI del kernel Linux “10 su 10”: dovresti preoccuparti? Intelligenza dei dati PlatoBlockchain. Ricerca verticale. Ai.

Buco SMB del kernel Linux critico "10 su 10": dovresti preoccuparti?

Poco prima del fine settimana di Natale, infatti, più o meno nello stesso periodo in cui l'assediato servizio di gestione delle password LastPass ammetteva che, sì, i tuoi caveau delle password sono stati rubati dai criminali dopotutto, abbiamo notato una grave vulnerabilità del kernel Linux che ha fatto notizia.

Gli avvisi provenivano dalla Zero Day Initiative (ZDI) di Trend Micro, probabilmente meglio conosciuta per l'acquisizione di bug di sicurezza zero-day tramite il popolare Concorsi Pwn2Own, dove le squadre di cacciatori di taglie di bug competono dal vivo sul palco per premi in denaro potenzialmente grandi.

In cambio della sponsorizzazione del premio in denaro, i fornitori di prodotti che vanno dai sistemi operativi e browser alle stampanti di rete e ai router Internet sperano di acquistare nuovi difetti di sicurezza, in modo da poter riparare i buchi in modo responsabile. (Per ritirare i loro premi, i partecipanti devono fornire una corretta descrizione e accettare di non condividere alcuna informazione sul difetto fino a quando il venditore non avrà avuto una buona possibilità di risolverlo.)

Ma ZDI non si occupa solo della ricerca di bug competitiva nei suoi concorsi semestrali, quindi pubblica anche regolarmente avvisi di vulnerabilità per i giorni zero che sono stati divulgati in modi più convenzionali, come questo, intitolato Vulnerabilità legata all'esecuzione di codice in modalità remota Use-After-Free nel kernel Linux ksmbd.

Servire computer Windows tramite Linux

SMB è l'abbreviazione di sblocco messaggio ervered è il protocollo alla base della rete Windows, quindi quasi tutti i server Linux che forniscono servizi di rete ai computer Windows eseguiranno software per supportare SMB.

Come puoi quindi immaginare, i bug di sicurezza relativi alle PMI, in particolare quelli che possono essere sfruttati sulla rete senza che l'attaccante debba prima accedere, come nel caso qui, sono problemi potenzialmente seri per la maggior parte delle reti aziendali di grandi dimensioni.

Il supporto SMB è generalmente necessario anche nei NAS domestici e per le piccole imprese (archiviazione collegata alla rete), che generalmente eseguono Linux internamente e forniscono funzionalità di file server plug-in-and-go facili da usare per piccole reti.

Non c'è bisogno di imparare Linux da soli, o di configurare un server completo, o di imparare a configurare la rete Linux: basta plug-and-play con il dispositivo NAS, che ha il supporto SMB integrato e pronto per te .

Perché i tempi delle vacanze?

In questo caso, il bug non è stato deliberatamente divulgato la notte prima della notte prima di Natale in un tentativo non così-ho-ho-ho di rovinare la tua stagione festiva facendoti impazzire.

E non è stato segnalato poco prima del fine settimana nel tentativo di seppellire le cattive pubbliche relazioni sperando che tu fossi abbastanza attento alle vacanze da perdere completamente la storia o da scrollartene di dosso fino al nuovo anno.

La buona notizia è che, come di solito accade sotto l'ombrello della divulgazione responsabile, la data per il rapporto di ZDI è stata concordata in anticipo, presumibilmente quando il difetto è stato rivelato, dando così al team del kernel Linux tempo sufficiente per risolvere il problema correttamente, pur non permettendo loro di rimandare la questione a tempo indeterminato.

In questo caso, la segnalazione di bug è elencata come avvenuta il 2022-07-26 e ciò che ZDI chiama "rilascio pubblico coordinato dell'[] avviso" è stato fissato per il 2022-12-22, che risulta essere un intervallo di esattamente 150 giorni, se si conta lo stile della vecchia scuola e si include l'intera giornata a ciascuna estremità.

Quindi, anche se questo bug ha avuto una copertura drammatica durante il fine settimana festivo, dato che si trattava di un esecuzione di codice remoto (RCE) nel kernel Linux stesso, ed è arrivato con un cosiddetto punteggio CVSS di 10/10, considerato critico...

... è stato corretto nel codice sorgente di Linux entro soli due giorni dalla divulgazione, e la correzione è stata accettata e impacchettata nel codice sorgente ufficiale del kernel Linux in tempo per il rilascio di Linux 5.15.61, il 2022-08-17, proprio 23 giorni dopo l'arrivo del rapporto.

In altre parole, se da allora hai aggiornato il tuo kernel Linux in qualsiasi momento, sei già al sicuro, indipendentemente dalle impostazioni di configurazione del kernel che tu o la tua distribuzione avete usato durante la compilazione del kernel.

Questo periodo include 24 aggiornamenti successivi alla serie del kernel 5.15, ora alla 5.15.85, insieme a tutte le versioni del kernel 6.0, del kernel 6.1 e del kernel 6.2 ancora in fase di candidatura, tutti con le prime versioni dopo l'agosto 2022 .

Probabilmente non è il software SMB che sospetti

Inoltre, sebbene a prima vista sembri che questo bug influirà inevitabilmente su qualsiasi server o dispositivo Linux che supporti la rete Windows, non è vero neanche questo.

La maggior parte degli amministratori di sistema e, secondo la nostra esperienza, la maggior parte dei programmatori NAS, forniscono supporto Windows SMB tramite un toolkit open source di lunga durata e rispettato chiamato Samba, dove il nome Samba è semplicemente la parola pronunciabile più vicina che lo sviluppatore originale, luminare open-source Andrew "Tridge" Tridgell OAM, potrebbe trovare a rappresentare la sigla SMB.

Chiunque abbia utilizzato Samba saprà che il software funziona come una normale applicazione, in quella che è nota come spazio utente – in altre parole, senza bisogno di un proprio codice in esecuzione all'interno del kernel, dove anche bug modesti potrebbero avere ripercussioni pericolose.

In effetti, viene chiamato il file principale del programma Samba smbd, dove il finale -D è un tipico unixismo che sta per demone, o processo in background, quello che gli amministratori di Windows chiamerebbero a servizio.

Ma questo bug, come puoi vedere dal rapporto ZDI, è in a modulo del kernel detto ksmbd, Dove l' -D denota un servizio in background, the -SMB- denota il supporto di rete di Windows e il K- si intende viene eseguito nello spazio del kernel, cioè proprio all'interno del kernel stesso.

A questo punto, probabilmente ti starai chiedendo: "Perché seppellire la complessità del supporto SMB direttamente nel kernel, dato che abbiamo già un prodotto per lo spazio utente affidabile e rispettato sotto forma di Samba, e dato che i rischi sono molto maggiori?

Perché, infatti?

Come spesso accade, sembrano esserci due motivi principali: [A] perché possiamo! e [B] perché le prestazioni.

Inserendo nel kernel quelle che sono tipicamente funzionalità software di alto livello, è spesso possibile migliorare le prestazioni, anche se quasi sempre si paga il prezzo di una corrispondente, e possibilmente considerevole, diminuzione della sicurezza.

Cosa fare?

  • Controlla se disponi di un kernel Linux basato su qualsiasi versione successiva o successiva alla 5.15.61 (datata 2022-08-17). In tal caso, questo bug è stato corretto nel codice sorgente. Indipendentemente dalle opzioni di compilazione del kernel che tu (o il tuo produttore di distro) scegli, il bug non apparirà nella build del kernel.
  • Controlla se la tua build del kernel Linux include anche ksmbd. Le distribuzioni più popolari non lo compilano né lo compilano come modulo, quindi non puoi caricarlo o attivarlo, nemmeno per errore.
  • Verifica con il tuo fornitore se stai utilizzando un'applicazione come una scatola NAS o un altro dispositivo che supporta le connessioni da computer Windows. È probabile che il tuo dispositivo NAS non venga utilizzato ksmbd, anche se ha ancora una versione del kernel teoricamente vulnerabile. (Nota per i clienti Sophos: per quanto ne sappiamo, nessuna appliance Sophos utilizza ksmbd.)
  • Se stai usando ksmbd fuori scelta, considera di rivalutare il tuo rischio. Assicurati di misurare il vero aumento delle prestazioni che hai ottenuto e decidi se ne vale davvero la pena.

COMANDI CHE PUOI USARE PER CONTROLLARE LA TUA ESPOSIZIONE

Qualsiasi Linux dalla versione 5.15.61 in poi, o qualsiasi versione 6.x, è già aggiornato. Per verificare la tua versione di Linux: $ uname -o -r 6.1.1 GNU/Linux     
Per vedere se questa funzionalità del kernel è compilata, puoi eseguire il dump della configurazione in fase di compilazione del kernel in esecuzione: $ zcat /proc/config.gz | grep SMB_SERVER # CONFIG_SMB_SERVER non è impostato Se questa impostazione di configurazione in fase di compilazione non è impostata o è impostata su "n" per no, la funzionalità non è stata creata affatto. Se dice "y" per sì, il server SMB del kernel è compilato direttamente nel tuo kernel, quindi assicurati di avere una versione con patch. Se dice "m" per modulo, la build del kernel probabilmente include un modulo runtime che può essere caricato su richiesta.
Per vedere se il tuo kernel ha un modulo caricabile disponibile: $ /sbin/modprobe --show ksmbd modprobe: FATAL: Modulo ksmbd non trovato nella directory /lib/modules/6.1.1 Nota che "--show" significa "non farlo mai" mostrarlo, basta mostrare se il caricamento funzionerebbe o meno".
Per vedere se il tuo sistema ha il modulo ksmbd già attivo: $ lsmod | grep ksmbd Se non vedi alcun output, il modulo non corrispondeva nell'elenco.
Per interrompere il caricamento involontario del modulo nel caso in cui venga visualizzato, aggiungi un file con un nome come ksmbd.conf alla directory /lib/modules.d o /etc/modules.d con queste righe al suo interno: blacklist ksmbd install ksmbd /bin/falso

Timestamp:

Di più da Sicurezza nuda