Säkerhetsnycklar för moderkort på låg nivå läckte i MSI-brott, hävdar forskare

Säkerhetsnycklar för moderkort på låg nivå läckte i MSI-brott, hävdar forskare

Källnod: 2641177

För ungefär en månad sedan skrev vi om en meddelande om överträdelse av data utgiven av den stora moderkortstillverkaren MSI.

Företaget sa:

MSI drabbades nyligen av en cyberattack mot en del av sina informationssystem. […] För närvarande har de berörda systemen gradvis återupptagit normal drift, utan någon betydande inverkan på finansverksamheten. […] MSI uppmanar användare att skaffa firmware/BIOS-uppdateringar endast från sin officiella webbplats och att inte använda filer från andra källor än den officiella webbplatsen.

Företagets mea culpa kom två dagar efter att ett gäng med cyberutpressning som heter Money Message påstod sig ha stulit MSI-källkod, BIOS-utvecklingsverktyg och privata nycklar.

Vid den tiden var brottslingarna fortfarande i nedräkningsläge och hävdade att de skulle göra det "publicera stulen data när timern går ut":

Skärmdump tre timmar innan intrångstimern gick ut [2023-04-07].

Klockan stannade

"Avslöjningstimern" i skärmdumpen ovan gick ut 2023-04-07, för drygt en månad sedan, men Money Message-sajten på den mörka webben är i övrigt oförändrad sedan gängets första inlägg:

En månad senare [2023-05-09].

Ändå hävdar forskare vid sårbarhetsforskningsföretaget Binarly att de inte bara har fått tag i data som stulits i intrånget, utan också att de har sökt igenom den efter inbäddade krypteringsnycklar och kommit fram till många träffar.

Än så länge gör Binarly anspråk på Github och Twitter att ha extraherat ett flertal signeringsnycklar från data i sin ägo, inklusive vad den beskriver [2023-05-09T14:00Z] som:

  • 1 Intel OEM-nyckel. Tydligen kan denna nyckel användas för att kontrollera firmware-felsökning på 11 olika moderkort.
  • 27 nycklar för bildsignering. Binarly hävdar att dessa nycklar kan användas för att signera firmwareuppdateringar för 57 olika MSI-moderkort.
  • 4 Intel Boot Guard-nycklar. Dessa läckta nycklar styr tydligen körtidsverifiering av firmwarekod för 116 olika MSI-moderkort.

Hårdvarubaserat BIOS-skydd

Enligt Intels egen dokumentation, kan moderna Intel-baserade moderkort skyddas av flera lager av kryptografisk säkerhet.

Först kommer BIOS Guard, som endast tillåter kod som är signerad med en tillverkarspecificerad kryptonyckel att få skrivåtkomst till det flashminne som används för att lagra s.k. Initialt startblockeller IBB.

Som namnet antyder är IBB där den första komponenten i moderkortsleverantörens startkod finns.

Att undergräva det skulle ge en angripare kontroll över en infekterad dator, inte bara på en nivå under alla operativsystem som senare laddas, utan också under nivån för eventuella firmware-verktyg installerade i den officiella EFI (utökat firmware-gränssnitt) diskpartition, eventuellt även om den partitionen är skyddad av firmwarens eget digitala signatursystem för Secure Boot.

Efter BIOS Guard kommer Stövelskydd, som verifierar koden som laddas från IBB.

Tanken här verkar vara att även om BIOS Guard borde förhindra att några inofficiella firmwareuppdateringar flashas i första hand, genom att neka skrivåtkomst till oseriösa firmwareuppdateringsverktyg...

...det kan inte säga att firmware "officiellt" signerad av moderkortsleverantören inte kan litas på på grund av en läckt firmware-bildsigneringsnyckel.

Det är där Boot Guard går in och tillhandahåller en andra nivå av attestering som syftar till att upptäcka, vid körning under varje uppstart, att systemet kör firmware som inte är godkänd för ditt moderkort.

Nyckellagring en gång

För att stärka nivån av kryptografisk verifiering som tillhandahålls av både BIOS Guard och Boot Guard, och för att knyta processen till en specifik moderkorts- eller moderkortsfamilj, lagras inte de kryptografiska nycklar som de använder i ett omskrivbart flashminne.

De är räddade, eller blåst, på jargongen, till skriv-en gång-minne inbäddat på själva moderkortet.

Ordet blåst härrör från det faktum att lagringskretsen är konstruerad som en serie nanoskopiska "anslutningsledningar" implementerade som små elektriska säkringar.

Dessa anslutningar kan lämnas intakta, vilket innebär att de läses upp som binära 1:or (eller 0:or, beroende på hur de tolkas), eller "blåsta" - sammansmälta med andra ord - i en engångsmodifiering som vänder dem permanent till binära 0:or (eller 1:or).

Att utlösa bitförbränningsprocessen är i sig skyddad av en säkring, så moderkortsleverantören får en engångschans att ställa in värdet på dessa s.k. Fältprogrammerbara säkringar.

Det är de goda nyheterna.

När BIOS Guard och Boot Guard kryptografiska verifieringsnycklar är skrivna till det smältbara minnet är de låsta för alltid, och kan aldrig undergrävas.

Men motsvarande dåliga nyheter är förstås att om de privata nycklar som motsvarar dessa säkra-till-änden-av-universums offentliga nycklar någonsin äventyras, kommer de inbrända offentliga nycklarna kan aldrig uppdateras.

På samma sätt ger en OEM-nyckel på felsökningsnivå, som nämnts ovan, en moderkortsleverantör ett sätt att ta kontroll över den fasta programvaran när den startar upp, inklusive att se den instruktion för instruktion, justera dess beteende, spionera på och modifiera data det håller i minnet och mycket mer.

Som du kan föreställa dig är den här typen av tillgång till och kontroll över uppstartsprocessen avsedd att hjälpa utvecklare att få koden direkt i labbet, innan den bränns in i moderkort som kommer att gå till kunderna.

Intels dokumentation listar tre felsökningsnivåer.

Grön betecknar felsökningsåtkomst tillåten för vem som helst, vilket inte är tänkt att avslöja några hemligheter på låg nivå eller tillåta att uppstartsprocessen modifieras.

Orange betecknar fullständig läs-skriv-felsökningsåtkomst tillåten för någon som har motsvarande leverantörs privata nyckel.

Red betecknar detsamma som orange, men hänvisar till en privat huvudnyckel som tillhör Intel som kan låsa upp alla vnedors moderkort.

Som Intel ganska uppenbart och rakt ut säger i sin dokumentation:

Det antas att plattformstillverkaren inte kommer att dela sin [Orange Mode] autentiseringsnyckel med någon annan uppsättning felsökningsverktyg.

Tyvärr hävdar Binarly att skurkarna nu har läckt en orange lägesnyckel som kan möjliggöra uppstartsfelsökning på låg nivå på 11 olika moderkort från HP, Lenovo, Star Labs, AOPEN och CompuLab.

Akta dig för bootkitet

Binarlys påståenden verkar därför antyda att med en signeringsnyckel för firmware och en Boot Guard-signeringsnyckel kanske en angripare inte bara kan lura dig och dina firmwareuppdateringsverktyg att installera vad som ser ut som en äkta firmware-uppdatering i första hand...

…men också kunna lura ett moderkort som är hårdvarulåst via Boot Guard-skyddet att tillåta den där falska firmwaren att laddas, även om uppdateringen korrigerar själva Initial Boot Block.

På samma sätt kan att kunna starta upp en stulen dator i firmware-felsökningsläge att en angripare kan köra eller implantera oseriös kod, extrahera hemligheter eller på annat sätt manipulera lågnivåstartprocessen för att lämna ett offers dator i en opålitlig, osäker och osäker stat.

Enkelt uttryckt kan du åtminstone i teorin sluta inte bara med en rootkit, Men en boot kit.

A rootkit, på jargongen, är kod som manipulerar operativsystemets kärna för att förhindra till och med själva operativsystemet från att upptäcka, rapportera eller förhindra vissa typer av skadlig programvara senare.

Vissa rootkits kan aktiveras efter att operativsystemet har laddats, vanligtvis genom att utnyttja en sårbarhet på kärnnivå för att göra obehöriga interna ändringar i själva operativsystemets kod.

Andra rootkits kringgår behovet av ett säkerhetshål på kärnnivå genom att undergräva en del av den firmware-baserade startsekvensen, i syfte att få en säkerhetsbakdörr aktiverad innan operativsystemet börjar laddas, vilket äventyrar en del av den underliggande koden på vilken systemets egen säkerhet är beroende av.

Och a boot kit, löst uttryckt, tar det tillvägagångssättet ännu längre, så att lågnivåbakdörren laddas så tidigt och så oupptäckbart som möjligt i firmware-startprocessen, kanske till och med innan datorn överhuvudtaget undersöker och läser något från hårddisken.

Ett bootkit nere på den nivån innebär att man till och med torkar eller byter ut hela din hårddisk (inklusive s.k. Systempartition för utökat firmwaregränssnitt, förkortat EFI eller ESP) är inte tillräckligt för att desinficera systemet.

Typisk Mac-diskinstallation.
EFI-partitionen är märkt i enlighet därmed.
Vanlig diskinstallation för Windows 11.
Typ c12a7...ec93b betecknar en EFI-partition.

Som en analogi kan du tänka på ett rootkit som laddas efter operativsystemet som att vara lite som att försöka muta en jury för att frikänna en skyldig tilltalad i en brottmålsrättegång. (Risken för att detta ska hända är en anledning till att kriminella juryer vanligtvis har 12, 15 eller fler medlemmar.)

Ett rootkit som laddas sent i firmwareprocessen är lite som att försöka muta åklagaren eller chefsutredaren för att göra ett dåligt jobb och lämna åtminstone några bevishål för de skyldiga delarna att slingra sig igenom.

Men en bootkit är mer som att få lagstiftaren själv att upphäva just den lag enligt vilken den tilltalade åtalas, så att målet, oavsett hur noggrant bevisen samlades in och presenterades, inte alls kan fortsätta.

Vad göra?

Boot Guards offentliga nycklar, när de har bränts in på ditt moderkort, kan inte uppdateras, så om deras motsvarande privata nycklar äventyras finns det inget du kan göra för att åtgärda problemet.

Signeringsnycklar för komprometterad firmware kan dras tillbaka och ersättas, vilket ger nedladdare av firmware och uppdateringsverktyg en chans att varna dig i framtiden om firmware som signerades med en nu opålitlig nyckel, men detta hindrar inte aktivt att de stulna signeringsnycklarna används .

Att förlora signeringsnycklar är lite som att förlora den fysiska huvudnyckeln till varje våning och varje svit i en kontorsbyggnad.

Varje gång du byter ett av de komprometterade låsen har du minskat användbarheten av den stulna nyckeln, men om inte och tills du har bytt varje lås har du inte löst ditt säkerhetsproblem ordentligt.

Men om du omedelbart byter ut varje enskilt lås i byggnaden över natten, kommer du att låsa ute alla, så att du inte kommer att kunna låta genuina hyresgäster och arbetare fortsätta använda sina kontor under en respitperiod då de kan byta sina gamla nycklar för nya.

Det bästa i det här fallet är därför att hålla fast vid MSI:s ursprungliga råd:

[O]Håll in firmware/BIOS-uppdateringar endast från [MSI:s] officiella webbplats och [använd inte] filer från andra källor än den officiella webbplatsen.

Tyvärr kokar det rådet förmodligen ner till fem inte helt hjälpsamma ord och ett utropstecken.

Var försiktiga där ute, gott folk!


Uppdatering. Intels PR-företag mailade oss för att berätta att företaget "är medveten om dessa rapporter och undersöker aktivt." De bad oss ​​också påpeka det "Intel Boot Guard OEM-nycklar genereras av systemtillverkaren, [så] dessa är inte Intel-signeringsnycklar." Förkortningen OEM är en förkortning för originalutrustningstillverkare, en något förvirrande men sedan länge etablerad term som inte syftar på leverantören eller leverantörerna av de individuella komponenterna som är inbyggda i en produkt, utan till leverantören som tillverkat hela systemet. Till exempel, när du köper vad du kan kalla ett "Intel-moderkort" från MSI, är MSI OEM, medan Intel är leverantören av processorchippet, och kanske andra chipsetkomponenter, i hjärtat av den färdiga produkten. (Om ditt moderkort var en cykelsäkerhetskabel, då skulle Intel ha gjort låset, men OEM skulle ha svetsat ihop kabeln, täckt produkten med dess skyddande beläggning och valt siffrorna för kombinationen.) [2023-05 -09T22:45Z]


Tidsstämpel:

Mer från Naken säkerhet