Turvauuringud tegi Binarly ettevĂ”tte, kelle kĂ€es on teave UEFI Secure Booti kinnitatud laadimise reĆŸiimi ĂŒletamise vĂ”imalusest enam kui 800 tootes, mille on vĂ€lja andnud Acer, Dell, Fujitsu, Gigabyte, HP, Intel, Lenovo ja Supermicro. Probleem on saanud koodnimeks PKfail ja on seotud usaldusvÀÀrse platvormi vĂ”tme (PK, Platform Key) kasutamisega, mille on genereerinud AMI (American Megatrends International) ja see on antud testimisse. Vanimad pĂŒsivara versioonid, mis kasutasid testvĂ”tit, on vĂ€lja antud 2012. aastal, ja uusimad kuupĂ€evad on juunis 2024. Uuringute andmetel on probleemiga kokku puutunud rohkem kui 10% kĂ”igist kontrollitud pĂŒsivara versioonidest.
VĂ”tme parameetrites oli mĂ€rgitud, et see on usaldusvÀÀrne ja et seda ei tohiks oma toodetes kasutada. Eeldati, et see testvĂ”ti tuleb asendada tootja enda vĂ”tmega, kuid tootjad ei pööranud hoiatusele tĂ€helepanu ning kasutasid lĂ”ppversioonides standardset ĂŒldvĂ”tit, mis saadeti kĂ”igile AMI partneritele ja klientidele.
AMI testvĂ”tme privaatne osa, mis on vajalik digitaalsete allkirjade tegemiseks, on avalikult kergesti kĂ€tte saadav pĂ€rast teabe lekkimist ĂŒhe riistvaratootja juures, kelle töötaja kogemata postitas avalikku GitHubi registrisse koodi, mis sisaldas seda vĂ”tme. Privaatne vĂ”ti oli paigutatud krĂŒpteeritud faili, mille krĂŒpteerimisel kasutati lihtsat 4-tĂ€helise parooli, mille leidmine osutus kergesti Ă€ra arvamiseks.
Platvormi vĂ”ti kasutatakse usaldusvĂ”rgusĂŒsteemi juurttevĂ”tmena, et autentida andmebaase, mis sisaldavad vĂ”tmeid Secure Boot jaoks. Platvormi vĂ”tme privaatse osa kĂ€tte saamine viib kogu usaldusketi kompromiteerimise, mis on seotud laadimissĂŒsteemi komponentide kehtivuse kontrollimisega â teades platvormi vĂ”tit on vĂ”imalik Secure Booti kaitset mööda minna ja korraldada laadimise ajal oma komponentide asendamine KEK (Key Exchange Key) vĂ”tme ja andmebaaside âdbâ (Signature Database) ja âdbxâ (Forbidden Signature Database) manipuleerimise kaudu. KEK vastutab usaldusketi loomise eest pĂŒsivara ja operatsioonisĂŒsteemi vahel, âdbâ sisaldab sertifikaate ja allkirju laadijale ning kolmandate osapoolte UEFI komponentidele, samas kui âdbxâ sisaldab teadaolevate kahjulike komponentide tĂŒhistatud allkirju.
RĂŒnnaku sooritamiseks piisab uutest vĂ”titest ja sertifikaatidest KEK ja db genereerimisest, seejĂ€rel saab kasutada avalikku testvĂ”tit platvormilt, et laadida KEK-sertifikaat UEFI-firmware'i. PĂ€rast KEK-sertifikaadi laadimist firmware'i saab sellega seotud privaatvĂ”tit kasutada uut sertifikaati db laadimiseks andmebaasi. PĂ€rast db-sertifikaadi laadimist saab sellega seotud privaatvĂ”tit kasutada laaditavate EFI-komponentide tĂ”endamiseks. openssl req -newkey rsa:4096 -nodes -keyout KEK.key -new -x509 -sha256 -days 3650 -subj "\/CN=BRLY KEK\/" -out KEK.crt openssl req -newkey rsa:4096 -nodes -keyout db.key -new -x509 -sha256 -days 3650 -subj "\/CN=BRLY db\/" -out db.crt efi-updatevar -a -c KEK.crt -k PK.key KEK efi-updatevar -a -c db.crt -k KEK.key db sbsign âkey db.key âcert db.crt âoutput rogue.efi.signed rogue.efi
Platvormi vĂ”tme Ă”igsuse kontrollimiseks piisab, kui kĂ€ivitada utiliit «efi-readvar -v PK» paketist efitools ja veenduda, et platvormi vĂ”tme ei ole testvĂ”ti: efi-readvar -v PK Muutujad PK, pikkus 862 PK: Loend 0, tĂŒĂŒp X509 Allkiri 0, suurus 834, omanik 26dc4851-195f-4ae1-9a19-fbf883bbb35e Teema: CN=DO NOT TRUST â AMI Test PK VĂ€ljastaja: CN=DO NOT TRUST â AMI Test PK

Allikas: opennet.ru
