Analisi di l'essenza di SBAT è prublemi cù l'aghjurnamentu à Windows, chì hà affettatu u caricamentu Linux

Matthew Garrett, un famosu sviluppatore di kernel Linux, chì hà ricevutu una volta un premiu da a Free Software Foundation per u so cuntributu à u sviluppu di software liberu, hà parlatu di l'essenza di u mecanismu SBAT (Secure Boot Advanced Targeting), creatu per bluccà e vulnerabilità in u bootloader senza revucà a firma digitale, è ancu di u so rolu in l'incidentu recente cù l'aghjurnamentu per Windows, chì hà causatu l'arrestu di u caricamentu di alcune distribuzioni Linux, installatu in parallelu cù Windows nantu à i sistemi cù UEFI Secure Boot attivatu. In breve, sia Microsoft, chì ùn hà micca testatu cumpletamente l'aghjurnamentu è l'hà applicatu à sistemi chì ùn duverebbe micca avè, sia i sviluppatori di alcune distribuzioni sò da culpà. Linux, chì ùn hà micca aghjurnatu u bootloader GRUB è u numeru di generazione SBAT quandu e vulnerabilità sò state scuperte in GRUB.

Quì sottu hè una traduzzione di a nota di Garrett:

Quandu a specificazione UEFI Secure Boot hè stata sviluppata, tutti i so participanti eranu, per dì, un pocu ingenu. U mudellu di sicurità di basa di Secure Boot hè chì tuttu u codice chì corre in un ambiente privilegiatu à u livellu di u kernel deve esse verificatu prima di l'esekzione - u firmware verifica u bootloader, u bootloader verifica u kernel, u kernel verifica qualsiasi codice di kernel supplementu caricatu in runtime, è avà avemu un ambiente di fiducia per impone ogni altra pulitica di sicurità chì vulemu. Ovviamente, a ghjente pò sbaglià, ma a specificazione hà furnitu un modu per revocà cumpunenti firmati chì sò stati trovati micca affidabili: aghjunghje solu un hash di u codice micca fiduciale à una variàbile, è poi ricusate di carricà qualcosa cù quellu hash, ancu s'ellu era. firmatu cù una chjave di fiducia.

Sfurtunatamente, si scopre chì u prublema hè a scala. Ogni distribuzione Linux, chì opera in l'ecosistema Secure Boot, genera i so propri binari di bootloader, ognunu cù u so propiu hash. Sè una vulnerabilità hè scuperta in u codice surghjente di un tale bootloader, un gran numeru di binari diversi devenu esse richiamati. U spaziu di memoria per almacenà una variabile chì cuntene tutti questi hash hè limitatu. Ùn ci hè micca abbastanza spaziu per aghjunghje un novu inseme di hash ogni volta chì GRUB (un bootloader scrittu in origine in l'era pre-Secure Boot, cù parechji parser .img separati è un parser di caratteri) si trova per avè un altru mecanismu per un attaccante per eseguisce codice arbitrariu, dunque era necessaria un'altra suluzione.

Questa suluzione era SBAT. U cuncettu generale di SBAT hè abbastanza simplice. Ogni cumpunente criticu in a catena di boot dichjara una generazione di sicurità chì hè inclusa in u binariu firmatu. Quandu una vulnerabilità hè scuperta è fissata, sta generazione aumenta. Una aghjurnazione pò esse emessa chì definisce a generazione minima - i cumpunenti di u boot fighjenu u prossimu articulu in a catena, paragunate u so nome è u numeru di generazione cù quelli chì sò almacenati in a variàbile firmware, è decide s'ellu l'eseguisce o micca basatu annantu à questu. . Invece di revocà un gran numaru di hashes individuali, pudete emette una sola aghjurnazione chì dice solu: "Qualcuna versione di GRUB cù una generazione di sicurità sottu à questu numeru hè cunsiderata senza fiducia".

Perchè questu hè diventatu di colpu pertinente? SBAT hè statu sviluppatu in cullaburazione da a cumunità. Linux è Microsoft è Microsoft anu decisu di pubblicà un aghjurnamentu per Windows, chì diceva à i sistemi di ùn fidà si di e versioni GRUB cù una generazione di sicurezza sottu à un certu livellu. Questu hè statu fattu perchè ste versioni GRUB avianu vere vulnerabilità di sicurezza chì permettevanu à l'attaccanti di rompe a catena di avvio sicura. Windows, è avemu vistu esempi veri di malware chì vulianu fà questu (Black Lotus hà sfruttatu una vulnerabilità in u bootloader Windows, ma a vulnerabilità GRUB era altrettantu efficace). Da una perspettiva puramente di sicurezza, questu hè un desideriu perfettamente legittimu.

Avà, in quantu à u missaghju "Qualcosa hè andatu seriamente male" è l'impossibilità di avvià per via di questu aghjurnamentu, hè Shim chì u manda in uscita, micca qualchì codice da Microsoft. Shim tene contu di l'aghjurnamenti SBAT, è per ùn viulà i principii di sicurezza aduttati da altri bootloader in u sistema, è ancu s'è Microsoft hà publicatu un aghjurnamentu SBAT, hè u bootloader chì hè rispunsevule. Linux Cusì, si rifiuta di lancià versioni più vechje di GRUB. Tuttu funziona cum'è duveria.

U prublema chì a ghjente hà scontru hè chì parechje distribuzioni Linux ùn anu micca publicatu versioni di GRUB cù una generazione più recente di sicurezza, è dunque queste versioni di GRUB sò cunsiderate insicure (vale a pena nutà chì GRUB hè firmatu da e distribuzioni stesse, micca da Microsoft, dunque ùn ci hè micca ritardu introduttu esternamente quì). Sicondu u pianu di Microsoft, l'aghjurnamentu Windows L'aghjurnamentu duvia applicà l'aghjurnamentu SBAT solu à i sistemi chì funzionavanu solu Windows, è qualsiasi installazione dual-boot resterebbe vulnerabile à l'attacchi finu à chì a distribuzione installata ùn aghjurnà GRUB è a generazione SBAT. Sfurtunatamente, cum'è hè avà chjaru, questu ùn hà micca funziunatu cum'è previstu, è almenu alcuni sistemi dual-boot anu applicatu l'aghjurnamentu, è u Shim di a distribuzione hà rifiutatu di caricà GRUB.

Chì ghjè a cunclusione? Microsoft (per ragioni evidenti) ùn vulia micca Windows puderia esse attaccatu cù una versione vulnerabile di GRUB, chì puderia esse ingannata per eseguisce codice arbitrariu è poi injectà un bootkit in u kernel Windows durante l'avvio. Microsoft hà fattu questu publicendu un aghjurnamentu Windows, chì hà aghjurnatu a variabile SBAT per indicà chì e versioni vulnerabili di GRUB ùn devenu micca esse avviate nantu à questi sistemi. U bootloader di prima tappa furnitu da a distribuzione Shim hà lettu sta variabile, hà lettu a partizione SBAT da a copia installata di GRUB, hà capitu ch'elli eranu in cunflittu è hà rifiutatu di caricà GRUB cù u messagiu "Qualcosa hè andatu seriamente male". Questa aghjurnazione ùn era micca destinata à applicà si à i sistemi dual-boot, ma hè stata applicata quantunque.

In generale:

1) Microsoft hà applicatu l'aghjurnamentu à i sistemi chì ùn era micca suppostu applicà.

2) Alcune distribuzioni Linux ùn hà micca aggiornatu u bootloader GRUB è a generazione di sicurezza SBAT quandu sò state scuperte vulnerabilità in GRUB.

In u risultatu, alcune persone ùn sò micca capaci di avvià i so sistemi. Pensu chì ci hè parechje persone à culpisce quì. Microsoft duveria avè fattu più teste per assicurà chì e installazioni dual boot ponu esse rilevate accuratamente. Ma e distribuzioni chì furniscenu bootloaders firmati anu da assicurà chì l'aghjurnà è aghjurnà a generazione di sicurità per currispondenu, perchè altrimenti furniscenu un vettore d'attaccu chì pò esse usatu per pirate altri sistemi operativi, è questu hè una spezia di violazione di u cuntrattu suciale intornu à ellu. tutti.

Sfurtunatamente, i vittimi quì sò soprattuttu utilizatori finali chì sò affruntati cù u fattu chì u sistema di colpu ricusa di carricà u SO chì volenu carricà. Questu ùn deve mai succede. Ùn pensu micca di dumandà à l'utilizatori finali se volenu l'aghjurnamenti di Secure Boot darà un bonu risultatu, è mentre sò vagamente inclinu à pensà chì UEFI Secure Boot ùn hè micca qualcosa chì benefiziu a maiò parte di l'utilizatori finali, hè ancu ciò chì fate. Ùn vogliu micca sapè dopu incidenti cum'è questu, chì hè per quessa chì mi simpatizza per esse attivatu per automaticamente, per quessa, sustene l'attivazione predeterminata, è sparte a scelta di Microsoft, eccettu u sfurtunatu tentativu di evità l'aghjurnamentu nantu à i sistemi di dual boot.

In ogni casu, sò statu assai implicatu in l'implementazione di stu mecanismu per Linux in u 2012 è hà scrittu u primu prototipu di Shim (chì hè avà un bootloader significativamente megliu, supportatu da una più larga gamma di persone, è chì ùn aghju micca toccu dapoi parechji anni), dunque sè vulete culpà qualchissia, per piacè sentitevi liberi di culpà mè. Questu hè qualcosa chì ùn duverebbe micca esse accadutu, è à menu chì ùn siate Microsoft o una distribuzione Linux, allora ùn hè micca colpa toia. Mi scusu.

Source: opennet.ru

Cumprate un hosting affidabile per i siti cù prutezzione DDoS, servitori VPS VDS 🔥 Cumprate un hosting di siti web affidabile cù prutezzione DDoS, servitori VPS VDS | ProHoster