Distribuzioni Linux colpite dalla vulnerabilità RCE nel Bootloader Shim

Distribuzioni Linux colpite dalla vulnerabilità RCE nel Bootloader Shim

Distribuzioni Linux colpite dalla vulnerabilità RCE nel bootloader Shim PlatoBlockchain Data Intelligence. Ricerca verticale. Ai.

Lo shim di Linux, un piccolo pezzo di codice utilizzato da molte delle principali distribuzioni Linux durante il processo di avvio sicuro, presenta una vulnerabilità legata all'esecuzione di codice in modalità remota che offre agli aggressori un modo per assumere il controllo completo dei sistemi interessati.

Tutte le distribuzioni Linux che supportano Secure Boot, incluso Red Hat, UbuntuDebbiano, ed SUSE sono affetti dal difetto, identificato come CVE-2023-40547. Il difetto è la più grave delle sei vulnerabilità presenti nello shim di Linux che il suo manutentore Red Hat ha recentemente rivelato e per il quale ha rilasciato un aggiornamento (spessore 15.8). Bill Demirkapi, un ricercatore del Security Response Center di Microsoft che ha scoperto il bug e lo ha segnalato a Red Hat, lo ha descritto come ogni bootloader Linux firmato negli ultimi dieci anni.

Errore di scrittura fuori dai limiti

Nel suo avviso Red Hat ha affermato che il bug aveva a che fare con il codice di avvio shim che si fidava dei valori controllati dall'aggressore durante l'analisi di una risposta HTTP. "Questo difetto consente a un utente malintenzionato di creare una specifica richiesta HTTP dannosa, portando a una primitiva scrittura fuori limite completamente controllata e a una compromissione completa del sistema."

Il National Vulnerability Database (NVD) e Red Hat avevano opinioni leggermente diverse sulla gravità della vulnerabilità e sulla sua sfruttabilità. IL NVD ha assegnato il bug un punteggio di gravità quasi massimo di 9.8 su 10 sulla scala CVSS 3.1 e lo ha identificato come qualcosa che un utente malintenzionato potrebbe sfruttare sulla rete con poca complessità e senza richiedere alcuna interazione o privilegi da parte dell'utente.

Red Hat ha assegnato al bug un punteggio di gravità più modesto pari a 8.3 e lo ha descritto come sfruttabile solo attraverso una rete adiacente e che comporta un'elevata complessità di attacco. Si trattava di una valutazione che i manutentori delle altre distribuzioni Linux interessate hanno condiviso con Ubuntu, ad esempio, definendo CVE-2023-40547 un bug di gravità "media" e SUSE assegnandogli una valutazione "importante" che in genere è leggermente inferiore a quella critica.

Red Hat ha spiegato i diversi punteggi di gravità in questo modo: “I punteggi CVSS per i componenti open source dipendono da fattori specifici del fornitore (ad esempio versione o catena di build). Pertanto, il punteggio e la valutazione dell'impatto di Red Hat possono essere diversi da quelli di NVD e di altri fornitori." Sia NVD che Red Hat concordano tuttavia sul fatto che la vulnerabilità ha un impatto elevato sulla riservatezza, sull'integrità e sulla disponibilità dei dati.

Un bootloader shim è fondamentalmente una piccola app che viene caricata prima del bootloader del sistema operativo principale sui sistemi basati su Unified Extensible Firmware Interface (UEFI). Funziona come un ponte tra il firmware UEFI e i bootloader principali del sistema operativo, che nel caso di Linux è tipicamente GRUB o system-boot. La sua funzione è verificare il bootloader del sistema operativo principale prima di caricarlo ed eseguirlo.

Vettori di attacco multipli

ricercatori provenienti da catena di fornitura del software identificato il fornitore di sicurezza Eclypsium tre percorsi diversi che un utente malintenzionato potrebbe utilizzare per sfruttare la vulnerabilità. Il primo avviene tramite un attacco man-in-the-middle (MiTM), in cui l’avversario intercetta il traffico HTTP tra la vittima e il server HTTP che serve i file per supportare l’avvio HTTP. "L'aggressore potrebbe trovarsi su qualsiasi segmento di rete tra la vittima e il server legittimo."

Un utente malintenzionato con privilegi sufficienti su un sistema vulnerabile potrebbe anche sfruttare la vulnerabilità localmente manipolando i dati nelle variabili Extensible Firmware Interface (EFI) o nelle partizioni EFI. “Questo può essere realizzato con una chiavetta USB Linux live. L'ordine di avvio può quindi essere modificato in modo tale da caricare sul sistema uno shim remoto e vulnerabile.

Un utente malintenzionato sulla stessa rete della vittima può anche manipolare l'ambiente di esecuzione pre-avvio per caricare a catena un bootloader shim vulnerabile, ha affermato Eclypsium. "Un utente malintenzionato che sfrutta questa vulnerabilità ottiene il controllo del sistema prima che il kernel venga caricato, il che significa che ha un accesso privilegiato e la capacità di aggirare qualsiasi controllo implementato dal kernel e dal sistema operativo", ha osservato il fornitore.

Gravità esagerata?

Alcuni esperti di sicurezza, tuttavia, hanno percepito che la vulnerabilità richiede un elevato grado di complessità e casualità per essere sfruttata. Lionel Litty, capo architetto della sicurezza presso Menlo Security, afferma che il livello di sfruttamento è alto perché l'aggressore dovrebbe aver già ottenuto i privilegi di amministratore su un dispositivo vulnerabile. Oppure dovrebbero prendere di mira un dispositivo che utilizza l'avvio di rete ed essere anche in grado di eseguire un attacco man-in-the-middle sul traffico di rete locale del dispositivo preso di mira.

"Secondo il ricercatore che ha scoperto la vulnerabilità, un utente malintenzionato locale può modificare la partizione EFI per modificare la sequenza di avvio e quindi poter sfruttare la vulnerabilità", afferma Litty. "[Ma] la modifica della partizione EFI richiederà di essere un amministratore con tutti i privilegi sul computer della vittima", afferma.

Se il dispositivo utilizza l'avvio di rete e l'aggressore può eseguire MITM sul traffico, è allora che può prendere di mira l'overflow del buffer. "Restituirebbero una risposta HTTP non valida che attiverebbe il bug e darebbe loro il controllo sulla sequenza di avvio a questo punto", afferma Litty. Aggiunge che le organizzazioni con macchine che utilizzano l'avvio HTTP o l'avvio dell'ambiente di esecuzione pre-avvio (PXE) dovrebbero essere preoccupate, soprattutto se la comunicazione con il server di avvio avviene in un ambiente in cui un avversario potrebbe inserirsi nel mezzo del traffico.

Shachar Menashe, direttore senior della ricerca sulla sicurezza presso JFrog, afferma che la valutazione di Red Hat sulla gravità della vulnerabilità è più accurata del punteggio "troppo esagerato" di NVD.

Ci sono due possibili spiegazioni per la discrepanza, dice. "NVD ha fornito il punteggio in base alle parole chiave della descrizione e non a un'analisi approfondita della vulnerabilità", afferma. Ad esempio, presupponendo che la “richiesta HTTP dannosa” si traduca automaticamente in un vettore di attacco di rete.

NVD potrebbe anche alludere a uno scenario peggiore estremamente improbabile in cui la macchina vittima è già configurata per l'avvio tramite HTTP da un server esterno alla rete locale e l'aggressore ha già il controllo su questo server HTTP. "Si tratta di uno scenario estremamente improbabile che causerebbe un sacco di problemi anche non correlati a questo CVE", afferma Shachar.

Timestamp:

Di più da Lettura oscura