ข้ามไปที่เนื้อหาหลัก
การสนับสนุน
ลงชื่อเข้าใช้
ลงชื่อเข้าใช้ด้วย Microsoft
ลงชื่อเข้าใช้หรือสร้างบัญชี
สวัสดี
เลือกบัญชีอื่น
คุณมีหลายบัญชี
เลือกบัญชีที่คุณต้องการลงชื่อเข้าใช้

บทนำ

Microsoft ทราบถึงช่องโหว่ที่มีตัวจัดการการบูตของ Windows ที่อนุญาตให้ผู้โจมตีเลี่ยงผ่านการบูตแบบปลอดภัยได้ ปัญหาในตัวจัดการการเริ่มต้นระบบได้รับการแก้ไขแล้วและเผยแพร่เป็นการอัปเดตความปลอดภัย ช่องโหว่ที่เหลือคือผู้โจมตีที่มีสิทธิ์ระดับผู้ดูแลระบบหรือการเข้าถึงทางกายภาพไปยังอุปกรณ์สามารถย้อนกลับตัวจัดการการบูตเป็นเวอร์ชันที่ไม่มีการแก้ไขข้อบกพร่องด้านความปลอดภัย ช่องโหว่ย้อนกลับนี้กําลังถูกใช้โดยมัลแวร์ BlackLotus เพื่อเลี่ยงผ่านการบูตแบบปลอดภัยที่อธิบายโดย CVE-2023-24932 เพื่อแก้ไขปัญหานี้ เราจะเพิกถอนผู้จัดการการเริ่มต้นระบบที่มีความเสี่ยง

เนื่องจากผู้จัดการการบูตจํานวนมากที่ต้องถูกบล็อกเราจึงใช้วิธีอื่นในการบล็อกผู้จัดการการบูต ปัญหานี้มีผลต่อระบบปฏิบัติการที่ไม่ใช่ Windows ซึ่งจะต้องมีการแก้ไขในระบบเหล่านั้นเพื่อบล็อกผู้จัดการการเริ่มต้นระบบ Windows ไม่ให้ถูกใช้เป็นเวกเตอร์การโจมตีบนระบบปฏิบัติการที่ไม่ใช่ Windows

ข้อมูลเพิ่มเติม

วิธีหนึ่งในการบล็อกไบนารีแอปพลิเคชัน EFI ที่เปราะบางจากการโหลดโดยเฟิร์มแวร์คือการเพิ่มแฮชของแอปพลิเคชันที่มีช่องโหว่ลงในรายการ UEFI Forbidden (DBX) รายการ DBX จะถูกเก็บไว้ในเฟิร์มแวร์ของอุปกรณ์ที่จัดการแฟลช ข้อจํากัดของวิธีการบล็อกนี้คือหน่วยความจําแฟลชเฟิร์มแวร์ที่จํากัดซึ่งพร้อมใช้งานสําหรับเก็บ DBX เนื่องจากข้อจํากัดนี้และผู้จัดการการเริ่มต้นระบบจํานวนมากที่ต้องถูกบล็อก (ผู้จัดการการเริ่มต้นระบบ Windows ในช่วง 10 ปีขึ้นไป) จึงไม่สามารถใช้ DBX สําหรับปัญหานี้ได้

สําหรับปัญหานี้ เราได้เลือกวิธีการไฮบริดในการบล็อกผู้จัดการการบูตที่มีช่องโหว่ เฉพาะผู้จัดการการเริ่มต้นระบบไม่กี่คนที่เปิดตัวใน Windows รุ่นก่อนหน้านี้เท่านั้นที่จะถูกเพิ่มไปยัง DBX สําหรับ Windows 10 และเวอร์ชันที่ใหม่กว่า นโยบายการควบคุมแอปพลิเคชัน (WDAC) ของ Windows Defender จะถูกใช้เพื่อบล็อกตัวจัดการการเริ่มต้นระบบ Windows ที่มีความเสี่ยง เมื่อนโยบายถูกนําไปใช้กับระบบ Windows ตัวจัดการการเริ่มต้นระบบจะ "ล็อก" นโยบายกับระบบ โดยการเพิ่มตัวแปรไปยังเฟิร์มแวร์ UEFI ผู้จัดการการเริ่มต้นระบบ Windows จะปฏิบัติตามนโยบายและล็อก UEFI หากล็อก UEFI เข้าที่และนโยบายถูกนําออก ตัวจัดการการเริ่มต้นระบบ Windows จะไม่เริ่มทํางาน หากมีการกําหนดนโยบายไว้ ตัวจัดการการบูตจะไม่เริ่มต้นหากถูกบล็อคโดยนโยบาย

คําแนะนําสําหรับการบล็อกผู้จัดการการเริ่มต้นระบบ Windows ที่มีความเสี่ยง

หมาย เหตุ ผู้ใช้ควรได้รับตัวเลือกเพื่อใช้ตัวแปรเพื่อให้สามารถควบคุมเวลาที่พวกเขาได้รับการป้องกัน

การเปิดใช้งานการล็อก UEFI จะทําให้สื่อ Windows ที่สามารถเริ่มต้นระบบได้ที่มีอยู่หยุดการเริ่มต้นระบบจนกว่าสื่อจะได้รับการอัปเดตด้วยการอัปเดต Windows ที่เผยแพร่ในวันที่ 9 พฤษภาคม 2023 หรือหลังจากนั้น คําแนะนําสําหรับการอัปเดตสื่อสามารถพบได้ใน KB5025885: วิธีการจัดการการเพิกถอน Windows Boot Manager สําหรับการเปลี่ยนแปลงการบูตแบบปลอดภัยที่เกี่ยวข้องกับ CVE-2023-24932

  • สําหรับระบบที่เปิดใช้งาน Secure Boot ที่เริ่มต้นระบบจากระบบปฏิบัติการ

    ที่ไม่ใช่ Windows เท่านั้น สําหรับระบบที่เริ่มต้นระบบปฏิบัติการที่ไม่ใช่ Windows เท่านั้น และจะไม่เริ่ม Windows การแก้ไขเหล่านี้สามารถนําไปใช้กับระบบได้ทันที

  • สําหรับระบบที่ใช้เริ่มต้นระบบแบบคู่ของ Windows และระบบปฏิบัติการ

    อื่น สําหรับระบบที่เริ่มต้น Windows ควรใช้การแก้ไขที่ไม่ใช่ของ Windows หลังจากอัปเดตระบบปฏิบัติการ Windows เป็นการอัปเดต Windows ที่เผยแพร่ในวันที่ 9 พฤษภาคม 2023 หรือหลังจากนั้นเท่านั้น

สร้างล็อก UEFI

ล็อก UEFI มีสองตัวแปรที่จําเป็นเพื่อป้องกันการโจมตีย้อนกลับในตัวจัดการการบูตของ Windows ตัวแปรเหล่านี้มีดังนี้:

  • คุณลักษณะ SKU SiPolicy

    นโยบายนี้มีแอตทริบิวต์ต่อไปนี้:

    • รหัสชนิดนโยบาย:

      {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 นโยบายนี้ใช้ตัวแปร UEFI สองตัวที่จัดเก็บภายใต้ EFI Namespace/Vendor
    GUID(SECUREBOOT_EFI_NAMESPACE_GUID):

    #define SECUREBOOT_EFI_NAMESPACE_GUID \

    {0x77fa9abd, 0x0359, 0x4d32, \

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

    • SkuSiPolicyVersion

      • เป็นชนิด ULONGLONG/UInt64 at runtime

      • ถูกกําหนดโดย <VersionEx>2.0.0.2</VersionEx> ภายใน policy XML ในรูปแบบของ (MAJOR) รอง Revision BUILDNUMBER)

      • โดยแปลเป็น ULONGLONG เป็น

        ((major##ULL << 48) + (รอง##ULL << 32) + (แก้ไข##ULL << 16) + buildnumber)

        หมายเลขเวอร์ชันแต่ละหมายเลขมี 16 บิต ดังนั้นจึงมีทั้งหมด 64 บิต

      • เวอร์ชันของนโยบายที่ใหม่กว่าต้องเท่ากันหรือมากกว่าเวอร์ชันที่จัดเก็บไว้ในตัวแปร UEFI ในรันไทม์

      • คําอธิบาย: เวอร์ชันนโยบายการบูตที่สมบูรณ์ของโค้ดของชุด

      • แอ ตทริ บิวต์:

        (EFI_VARIABLE_NON_VOLATILE | EFI_VARIABLE_BOOTSERVICE_ACCESS)

      • Namespace 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)

      • Namespace 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 ไปใช้

เราได้เผยแพร่ไฟล์ DbxUpdate.bin สําหรับปัญหานี้ใน UEFI.org แฮชเหล่านี้รวมถึงผู้จัดการการเริ่มต้นระบบ Windows ที่ถูกเพิกถอนทั้งหมดที่เผยแพร่ระหว่าง Windows 8 และการเผยแพร่ Windows 10 ครั้งแรกที่ไม่ปฏิบัติตามนโยบายความสมบูรณ์ของโค้ด

เป็นสิ่งสําคัญที่สุดที่สิ่งเหล่านี้จะถูกนําไปใช้ด้วยความระมัดระวังเนื่องจากความเสี่ยงที่อาจทําลายระบบการบูตแบบคู่ที่ใช้ระบบปฏิบัติการหลายระบบและหนึ่งในตัวจัดการการบูตเหล่านี้ ในระยะสั้นเราขอแนะนําให้ใช้แฮชเหล่านี้สําหรับระบบใด ๆ

ต้องการความช่วยเหลือเพิ่มเติมหรือไม่

ต้องการตัวเลือกเพิ่มเติมหรือไม่

สํารวจสิทธิประโยชน์ของการสมัครใช้งาน เรียกดูหลักสูตรการฝึกอบรม เรียนรู้วิธีการรักษาความปลอดภัยอุปกรณ์ของคุณ และอื่นๆ

ชุมชนช่วยให้คุณถามและตอบคําถาม ให้คําติชม และรับฟังจากผู้เชี่ยวชาญที่มีความรู้มากมาย

ข้อมูลนี้เป็นประโยชน์หรือไม่

คุณพึงพอใจกับคุณภาพภาษาเพียงใด
สิ่งที่ส่งผลต่อประสบการณ์ใช้งานของคุณ
เมื่อกดส่ง คำติชมของคุณจะถูกใช้เพื่อปรับปรุงผลิตภัณฑ์และบริการของ Microsoft ผู้ดูแลระบบ IT ของคุณจะสามารถรวบรวมข้อมูลนี้ได้ นโยบายความเป็นส่วนตัว

ขอบคุณสำหรับคำติชมของคุณ!

×