Microsoft로 로그인
로그인하거나 계정을 만듭니다.
안녕하세요.
다른 계정을 선택합니다.
계정이 여러 개 있음
로그인할 계정을 선택합니다.

소개

Microsoft는 공격자가 보안 부팅을 우회할 수 있게 하는 Windows 부팅 관리자의 취약성을 인지했습니다. 부팅 관리자의 문제가 해결되어 보안 업데이트로 릴리스되었습니다. 남아 있는 취약성은 디바이스에 대한 관리자 권한 또는 물리적 액세스 권한이 있는 공격자가 보안 수정이 없는 버전으로 부팅 관리자를 롤백할 수 있다는 것입니다. 이 롤백 취약성은 CVE-2023-24932에서 설명한 보안 부팅을 우회하기 위해 BlackLotus 맬웨어에서 사용되고 있습니다. 이 문제를 해결하기 위해 취약한 부팅 관리자를 해지합니다.

차단해야 하는 부팅 관리자 수가 많기 때문에 부팅 관리자를 차단하는 다른 방법을 사용하고 있습니다. 이는 비 Windows 운영 체제에서 Windows 부팅 관리자가 공격 벡터로 사용되지 않도록 차단하기 위해 해당 시스템에 수정 사항을 제공해야 한다는 측면에서 비 Windows 운영 체제에 영향을 줍니다.

자세한 내용

취약한 EFI 애플리케이션 이진 파일이 펌웨어에 의해 로드되지 않도록 차단하는 한 가지 방법은 취약한 애플리케이션의 해시를 UEFI 금지 목록(DBX)에 추가하는 것입니다. DBX 목록은 디바이스 펌웨어 관리 플래시에 저장됩니다. 이 차단 방법의 한계는 DBX를 저장하는 데 사용할 수 있는 펌웨어 플래시 메모리가 제한적이라는 것입니다. 이러한 한계와 함께 차단해야 하는 부팅 관리자의 수가 많기 때문에(지난 10년 이상 Windows 부팅 관리자) 이 문제를 DBX에 전적으로 의존하는 것은 불가능합니다.

이 문제를 해결하기 위해 취약한 부팅 관리자를 차단하는 하이브리드 방법을 선택했습니다. 이전 버전의 Windows에서 릴리스된 일부 부팅 관리자만 DBX에 추가됩니다. Windows 10 이상 버전의 경우 취약한 Windows 부팅 관리자를 차단하는 Windows Defender WDAC(애플리케이션 제어) 정책이 사용됩니다. 정책이 Windows 시스템에 적용되면 부팅 관리자는 UEFI 펌웨어에 변수를 추가하여 정책을 시스템에 "잠급니다". Windows 부팅 관리자는 정책과 UEFI 잠금을 적용합니다. UEFI 잠금이 설정되어 있고 정책이 제거된 경우 Windows 부팅 관리자가 시작되지 않습니다. 정책이 있는 경우 정책에 의해 차단된 경우 부팅 관리자가 시작되지 않습니다.

취약한 Windows 부팅 관리자를 차단하기 위한 지침

참고 보호되는 시기를 제어할 수 있도록 사용자에게 변수를 적용하는 옵션이 제공되어야 합니다.

UEFI 잠금을 사용하도록 설정하면 2023년 5월 9일 또는 그 이후에 릴리스된 Windows 업데이트로 미디어가 업데이트될 때까지 기존 부팅 가능한 Windows 미디어 부팅이 중지됩니다. 미디어 업데이트 지침은 KB5025885: CVE-2023-24932 관련 보안 부팅 변경에 대한 Windows 부팅 관리자 해지를 관리하는 방법에서 찾을 수 있습니다.

  • 비 Windows 운영 체제만 부팅하는 보안 부팅 사용 시스템의

    경우 비 Windows 운영 체제만 시작하고 Windows를 시작하지 않는 시스템의 경우 이러한 완화를 즉시 시스템에 적용할 수 있습니다.

  • Windows 및 다른 운영 체제를 이중 부팅하는 시스템의

    경우 Windows를 시작하는 시스템의 경우 Windows 운영 체제가 2023년 5월 9일 또는 그 이후에 릴리스된 Windows 업데이트로 업데이트된 후에만 비 Windows 완화를 적용해야 합니다.

UEFI 잠금 만들기

UEFI 잠금에는 Windows 부팅 관리자에서 롤백 공격을 방지하는 데 필요한 두 가지 변수가 있습니다. 이러한 변수는 다음과 같습니다.

  • SKU SiPolicy 특성

    이 정책은 다음과 같은 특성이 있습니다.

    • 정책 유형 ID:

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

    • "SkuSiPolicy.p7b"의 특정 파일 이름

    • EFI\Microsoft\Boot의 특정 물리적 위치

    서명된 모든 WDAC 정책과 마찬가지로 서명된 SKU 정책은 다음 두 개의 UEFI 변수로 보호됩니다.

    • SKU_POLICY_VERSION_NAME: “SkuSiPolicyVersion”

    • SKU_POLICY_UPDATE_POLICY_SIGNERS_NAME: “SkuSiPolicyUpdateSigners”

  • SKU SiPolicy 변수

    이 정책은 EFI 네임스페이스/공급업체 아래에 저장된 두 개의 UEFI 변수를 사용합니다
    GUID(SECUREBOOT_EFI_NAMESPACE_GUID):

    #define SECUREBOOT_EFI_NAMESPACE_GUID \

    {0x77fa9abd, 0x0359, 0x4d32, \

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

    • SkuSiPolicyVersion

      • 은(는) 런타임에 ULONGLONG/UInt64 유형입니다.

      • (MAJOR.MINOR.REVISION.BUILDNUMBER) 양식의 정책 XML 내에서 <VersionEx>2.0.0.2</VersionEx>에 의해 정의됩니다

      • 다음과 같이 ULONGLONG으로 변환됩니다

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

        각 버전 번호에 16비트이므로 총 64비트입니다.

      • 최신 정책의 버전은 런타임 시 UEFI 변수에 저장된 버전보다 크거나 같아야 합니다.

      • 설명: 코드 무결성 부팅 정책 버전을 설정합니다.

      • 특성:

        (EFI_VARIABLE_NON_VOLATILE | EFI_VARIABLE_BOOTSERVICE_ACCESS)

      • 네임스페이스 GUID:

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

      • 데이터 형식:

        uint8_t[8]

      • 데이터:

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

    • SkuSiPolicyUpdateSigners

      • Windows 서명자여야 합니다.

      • 설명: 정책 서명자 정보입니다.

      • 특성:

        (EFI_VARIABLE_NON_VOLATILE | EFI_VARIABLE_BOOTSERVICE_ACCESS)

      • 네임스페이스 GUID:

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

      • 데이터 형식:

        uint8_t[131]

      • 데이터:

        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};

DBX 적용

UEFI.org에 이 문제에 대한 DbxUpdate.bin 파일을 릴리스했습니다. 이러한 해시에는 Windows 8 코드 무결성 정책을 준수하지 않는 Windows 10 초기 릴리스 간에 해제된 모든 해지된 Windows 부팅 관리자가 포함됩니다.

이러한 해시는 여러 운영 체제와 이러한 부팅 관리자 중 하나를 사용하는 이중 부팅 시스템을 손상시킬 수 있는 위험이 있기 때문에 주의해서 적용하는 것이 매우 중요합니다. 단기적으로는 어떤 시스템이든 이러한 해시를 선택적으로 적용하는 것이 좋습니다.

도움이 더 필요하세요?

더 많은 옵션을 원하세요?

구독 혜택을 살펴보고, 교육 과정을 찾아보고, 디바이스를 보호하는 방법 등을 알아봅니다.

커뮤니티를 통해 질문하고 답변하고, 피드백을 제공하고, 풍부한 지식을 갖춘 전문가의 의견을 들을 수 있습니다.

이 정보가 유용한가요?

언어 품질에 얼마나 만족하시나요?
사용 경험에 어떠한 영향을 주었나요?
제출을 누르면 피드백이 Microsoft 제품과 서비스를 개선하는 데 사용됩니다. IT 관리자는 이 데이터를 수집할 수 있습니다. 개인정보처리방침

의견 주셔서 감사합니다!

×