Logga in med Microsoft
Logga in eller skapa ett konto.
Hej,
Välj ett annat konto.
Du har flera konton
Välj det konto som du vill logga in med.

Inledning

Microsoft blev medveten om en säkerhetsrisk med Windows-starthanteraren som gör att en angripare kan kringgå Säker start. Problemet i starthanteraren har åtgärdats och släppts som en säkerhetsuppdatering. Den återstående säkerhetsrisken är att en angripare med administratörsbehörighet eller fysisk åtkomst till enheten kan återställa starthanteraren till en version utan säkerhetskorrigeringen. Den här säkerhetsrisken används av BlackLotus malware för att kringgå Säker start som beskrivs av CVE-2023-24932. För att lösa det här problemet återkallar vi de sårbara starthantarna.

På grund av det stora antalet starthanterare som måste blockeras använder vi ett alternativt sätt att blockera starthanterare. Detta påverkar icke-Windows-operativsystem eftersom en korrigering måste tillhandahållas på dessa system för att blockera Windows-starthanterare från att användas som attackvektor på icke-Windows-operativsystem.

Mer information

En metod för att blockera sårbara EFI-program binärfiler från att läsas in av den inbyggda programvaran är att lägga till hash-värden för de sårbara programmen i UEFI Forbidden List (DBX). DBX-listan lagras i enheter som hanteras med flash-programvara. Begränsningen av denna blockeringsmetod är det begränsade flashminnet för inbyggd programvara som finns tillgängligt för lagring av DBX. På grund av den här begränsningen och det stora antalet starthanterare som måste blockeras (Windows-starthanterare från de senaste 10 åren) är det inte möjligt att helt förlita sig på DBX för det här problemet.

I det här problemet har vi valt en hybridmetod för att blockera sårbara starthanterare. Endast ett fåtal starthanterare som släppts i tidigare versioner av Windows läggs till i DBX. För Windows 10 och senare versioner används en WDAC-princip (Windows Defender Application Control) som blockerar sårbara Windows-starthanterare. När principen tillämpas på ett Windows-system kommer starthanteraren att "låsa" principen i systemet genom att lägga till en variabel i den inbyggda UEFI-programvaran. Windows-starthanterare följer principen och UEFI-låset. Om UEFI-låset är på plats och principen har tagits bort startar inte Windows-starthanteraren. Om principen är på plats startar inte starthanteraren om den har blockerats av principen.

Vägledning för blockering av sårbara Windows-starthanterare

OBSERVERA Användarna bör ha möjlighet att använda variabeln så att de kan styra när de är skyddade.

Aktivering av UEFI-låset gör att befintliga startbara Windows-media slutar starta tills mediet uppdateras med Windows-uppdateringarna från och med den 9 maj 2023. Vägledning för uppdatering av media finns i KB5025885: Så här hanterar du återkallning av Windows Boot Manager för ändringar av säker start som är associerade med CVE-2023-24932.

  • För system med säker start som bara startar icke-Windows-operativsystem

    För system som endast startar icke-Windows-operativsystem och aldrig kommer att starta Windows, kan dessa lösningar tillämpas på systemet omedelbart.

  • För system med dubbel start av Windows och ett annat operativsystem

    För system som startar Windows ska åtgärder som inte är Windows-åtgärder tillämpas först efter att Windows-operativsystemet har uppdaterats till Windows-uppdateringarna som släpptes den 9 maj 2023 eller senare.

Skapa UEFI-låset

UEFI Lock har två variabler som krävs för att förhindra återställningsattacker i Windows-starthanteraren. Dessa variabler är följande:

  • Attribut för SKU SiPolicy

    Den här principen har följande attribut:

    • Principtyp-ID:

      {976d12c8-cb9f-4730-be52-54600843238e}

    • Specifikt filnamn för "SkuSiPolicy.p7b"

    • Specifik fysisk plats för EFI\Microsoft\Boot

    Precis som alla signerade WDAC-principer skyddas en signerad SKU-princip av två UEFI-variabler:

    • SKU_POLICY_VERSION_NAME: "SkuSiPolicyVersion"

    • SKU_POLICY_UPDATE_POLICY_SIGNERS_NAME: "SkuSiPolicyUpdateSigners"

  • SKU SiPolicy-variabler

    Den här principen använder två UEFI-variabler som lagras under EFI-namnrymden/-leverantören
    GUID(SECUREBOOT_EFI_NAMESPACE_GUID):

    #define SECUREBOOT_EFI_NAMESPACE_GUID \

    {0x77fa9abd, 0x0359, 0x4d32, \

    {0xbd, 0x60, 0x28, 0xf4, 0xe7, 0x8f, 0x78, 0x4b}};

    • SkuSiPolicyVersion

      • är av typen ULONGLONG/UInt64 vid körning

      • definieras av <VersionEx>2.0.0.2</VersionEx> i princip-XML i form av (MAJOR. MINDRE. ÖVERSYN. BUILDNUMBER)

      • Det översätts till ULONGLONG som

        ((major##ULL << 48) + (minor##ULL << 32) + (revision##ULL << 16) + versionsnummer)

        Varje versionsnummer har 16 bitar, så det har totalt 64 bitar.

      • Den nyare principens version måste vara lika med eller större än den version som lagras i UEFI-variabeln vid körning.

      • Beskrivning: Set's the code integrity boot policy version.

      • Attribut:

        (EFI_VARIABLE_NON_VOLATILE | EFI_VARIABLE_BOOTSERVICE_ACCESS)

      • Namespace Guid:

        77fa9abd-0359-4d32-bd60-28f4e78f784b

      • Datatyp:

        uint8_t[8]

      • Data:

        uint8_t SkuSiPolicyVersion[8] = { 0x2,0x0,0x0,0x0,0x0,0x0,0x2,0x0 };

    • SkuSiPolicyUpdateSigners

      • Måste vara Windows-undertecknaren.

      • Beskrivning: Information om principsignerare.

      • Attribut:

        (EFI_VARIABLE_NON_VOLATILE | EFI_VARIABLE_BOOTSERVICE_ACCESS)

      • Namespace Guid:

        77fa9abd-0359-4d32-bd60-28f4e78f784bd

      • Datatyp:

        uint8_t[131]

      • Data:

        uint8_tSkuSiPolicyUpdateSigners[131] =

             { 0x01, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00,

              0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00

              0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00

              0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00

              0x0b, 0x00, 0x00, 0x00, 0xd0, 0x91, 0x73, 0x00

              0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00

              0x00, 0x00, 0x00, 0x00, 0x54, 0xa6, 0x78, 0x00

              0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00

              0x00, 0x00, 0x00, 0x00, 0x5c, 0xa6, 0x78, 0x00

              0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00

              0x00, 0x00, 0x00, 0x00, 0x64, 0xa6, 0x78, 0x00

              0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00

              0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00

              0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00

              0x00, 0x00, 0x00, 0x00, 0x0a, 0x2b, 0x06, 0x01

              0x04, 0x01, 0x82, 0x37, 0x0a, 0x03, 0x06, 0x00

              0x00, 0x00, 0x00};

Använda DBX

Vi har släppt filen DbxUpdate.bin för det här problemet på UEFI.org. Dessa hash-funktioner omfattar alla återkallade Windows-starthanterare som släppts mellan Windows 8 och den första versionen av Windows 10 som inte respekterar kodintegritetspolicyn.

Det är av yttersta vikt att dessa tillämpas med försiktighet på grund av risken att de kan bryta ett system med dubbla start som använder flera operativsystem och en av dessa starthanterare. På kort sikt rekommenderar vi att de här hasharna tillämpas för alla system.

Behöver du mer hjälp?

Vill du ha fler alternativ?

Utforska prenumerationsförmåner, bläddra bland utbildningskurser, lär dig hur du skyddar din enhet med mera.

Communities hjälper dig att ställa och svara på frågor, ge feedback och få råd från experter med rika kunskaper.

Hade du nytta av den här informationen?

Hur nöjd är du med språkkvaliteten?
Vad påverkade din upplevelse?
Genom att trycka på skicka, kommer din feedback att användas för att förbättra Microsofts produkter och tjänster. IT-administratören kan samla in denna data. Sekretesspolicy.

Tack för din feedback!

×