เบชเบญเบ‡เบŠเปˆเบญเบ‡เป‚เบซเบงเปˆเปƒเบ™ GRUB2 เบ—เบตเปˆเบญเบฐเบ™เบธเบเบฒเบ”เปƒเบซเป‰เบ—เปˆเบฒเบ™เบ‚เป‰เบฒเบก UEFI Secure Boot เบ›เป‰เบญเบ‡เบเบฑเบ™

ะ ะฐัะบั€ั‹ั‚ั‹ ัะฒะตะดะตะฝะธั ะพ ะดะฒัƒั… ัƒัะทะฒะธะผะพัั‚ัั… ะฒ ะทะฐะณั€ัƒะทั‡ะธะบะต GRUB2, ะบะพั‚ะพั€ั‹ะต ะผะพะณัƒั‚ ะฟั€ะธะฒะตัั‚ะธ ะบ ะฒั‹ะฟะพะปะฝะตะฝะธัŽ ะบะพะดะฐ ะฟั€ะธ ะธัะฟะพะปัŒะทะพะฒะฐะฝะธะธ ัะฟะตั†ะธะฐะปัŒะฝะพ ะพั„ะพั€ะผะปะตะฝะฝั‹ั… ัˆั€ะธั„ั‚ะพะฒ ะธ ะพะฑั€ะฐะฑะพั‚ะบะต ะพะฟั€ะตะดะตะปั‘ะฝะฝั‹ั… Unicode-ะฟะพัะปะตะดะพะฒะฐั‚ะตะปัŒะฝะพัั‚ะตะน. ะฃัะทะฒะธะผะพัั‚ะธ ะผะพะณัƒั‚ ะธัะฟะพะปัŒะทะพะฒะฐั‚ัŒัั ะดะปั ะพะฑั…ะพะดะฐ ะผะตั…ะฐะฝะธะทะผะฐ ะฒะตั€ะธั„ะธั†ะธั€ะพะฒะฐะฝะฝะพะน ะทะฐะณั€ัƒะทะบะธ UEFI Secure Boot.

เบŠเปˆเบญเบ‡เป‚เบซเบงเปˆเบ—เบตเปˆเบฅเบฐเบšเบธเป„เบงเป‰:

  • CVE-2022-2601 โ€” ะฟะตั€ะตะฟะพะปะฝะตะฝะธะต ะฑัƒั„ะตั€ะฐ ะฒ ั„ัƒะฝะบั†ะธะธ grub_font_construct_glyph() ะฟั€ะธ ะพะฑั€ะฐะฑะพั‚ะบะต ัะฟะตั†ะธะฐะปัŒะฝะพ ะพั„ะพั€ะผะปะตะฝะฝั‹ั… ัˆั€ะธั„ั‚ะพะฒ ะฒ ั„ะพั€ะผะฐั‚ะต pf2, ะฒะพะทะฝะธะบะฐัŽั‰ะตะต ะธะท-ะทะฐ ะฝะตะฒะตั€ะฝะพะณะพ ั€ะฐัั‡ั‘ั‚ะฐ ะฟะฐั€ะฐะผะตั‚ั€ะฐ max_glyph_size ะธ ะฒั‹ะดะตะปะตะฝะธั ะพะฑะปะฐัั‚ะธ ะฟะฐะผัั‚ะธ, ะทะฐะฒะตะดะพะผะพ ะผะตะฝัŒัˆะตะน, ั‡ะตะผ ะฝะตะพะฑั…ะพะดะธะผะพ ะดะปั ั€ะฐะทะผะตั‰ะตะฝะธั ะณะปะธั„ะพะฒ.
  • CVE-2022-3775 โ€” ะทะฐะฟะธััŒ ะทะฐ ะฟั€ะตะดะตะปั‹ ะฒั‹ะดะตะปะตะฝะฝะพะน ะพะฑะปะฐัั‚ะธ ะฟะฐะผัั‚ะธ ะฟั€ะธ ะพั‚ั€ะธัะพะฒะบะต ะฝะตะบะพั‚ะพั€ั‹ั… ะฟะพัะปะตะดะพะฒะฐั‚ะตะปัŒะฝะพัั‚ะตะน Unicode ัะฟะตั†ะธะฐะปัŒะฝะพ ะพั„ะพั€ะผะปะตะฝะฝั‹ะผ ัˆั€ะธั„ั‚ะพะผ. ะŸั€ะพะฑะปะตะผะฐ ะฟั€ะธััƒั‚ัั‚ะฒัƒะตั‚ ะฒ ะบะพะดะต ะพะฑั€ะฐะฑะพั‚ะบะธ ัˆั€ะธั„ั‚ะพะฒ ะธ ะฒั‹ะทะฒะฐะฝะฐ ะพั‚ััƒั‚ัั‚ะฒะธะตะผ ะดะพะปะถะฝั‹ั… ะฟั€ะพะฒะตั€ะพะบ ัะพะพั‚ะฒะตั‚ัั‚ะฒะธั ัˆะธั€ะธะฝั‹ ะธ ะฒั‹ัะพั‚ั‹ ะณะปะธั„ะฐ ั€ะฐะทะผะตั€ัƒ ะธะผะตัŽั‰ะตะนัั ะฑะธั‚ะพะฒะพะน ะบะฐั€ั‚ั‹. ะั‚ะฐะบัƒัŽั‰ะธะน ะผะพะถะตั‚ ะฟะพะดะพะฑั€ะฐั‚ัŒ ะฒะฒะพะด ั‚ะฐะบะธะผ ะพะฑั€ะฐะทะพะผ, ั‡ั‚ะพะฑั‹ ะฒั‹ะทะฒะฐั‚ัŒ ะทะฐะฟะธััŒ ั…ะฒะพัั‚ะฐ ะดะฐะฝะฝั‹ั… ะฝะฐ ะฟั€ะตะดะตะปะฐะผะธ ะฒั‹ะดะตะปะตะฝะฝะพะณะพ ะฑัƒั„ะตั€ะฐ. ะžั‚ะผะตั‡ะฐะตั‚ัั, ั‡ั‚ะพ ะฝะตัะผะพั‚ั€ั ะฝะฐ ัะปะพะถะฝะพัั‚ัŒ ัะบัะฟะปัƒะฐั‚ะฐั†ะธะธ ัƒัะทะฒะธะผะพัั‚ะธ, ะดะพะฒะตะดะตะฝะธะต ะฟั€ะพะฑะปะตะผั‹ ะดะพ ะฒั‹ะฟะพะปะฝะตะฝะธั ะบะพะดะฐ ะฝะต ะธัะบะปัŽั‡ะฐะตั‚ัั.

ะ˜ัะฟั€ะฐะฒะปะตะฝะธะต ะพะฟัƒะฑะปะธะบะพะฒะฐะฝะพ ะฒ ะฒะธะดะต ะฟะฐั‚ั‡ะฐ. ะกั‚ะฐั‚ัƒั ัƒัั‚ั€ะฐะฝะตะฝะธั ัƒัะทะฒะธะผะพัั‚ะตะน ะฒ ะดะธัั‚ั€ะธะฑัƒั‚ะธะฒะฐั… ะผะพะถะฝะพ ะพั†ะตะฝะธั‚ัŒ ะฝะฐ ะดะฐะฝะฝั‹ั… ัั‚ั€ะฐะฝะธั†ะฐั…: Ubuntu, SUSE, RHEL, Fedora, Debian. ะ”ะปั ัƒัั‚ั€ะฐะฝะตะฝะธั ะฟั€ะพะฑะปะตะผ ะฒ GRUB2 ะฝะตะดะพัั‚ะฐั‚ะพั‡ะฝะพ ะฟั€ะพัั‚ะพ ะพะฑะฝะพะฒะธั‚ัŒ ะฟะฐะบะตั‚, ะฟะพั‚ั€ะตะฑัƒะตั‚ัั ั‚ะฐะบะถะต ัั„ะพั€ะผะธั€ะพะฒะฐั‚ัŒ ะฝะพะฒั‹ะต ะฒะฝัƒั‚ั€ะตะฝะฝะธะต ั†ะธั„ั€ะพะฒั‹ะต ะฟะพะดะฟะธัะธ ะธ ะพะฑะฝะพะฒะปัั‚ัŒ ะธะฝัั‚ะฐะปะปัั‚ะพั€ั‹, ะทะฐะณั€ัƒะทั‡ะธะบะธ, ะฟะฐะบะตั‚ั‹ ั ัะดั€ะพะผ, fwupd-ะฟั€ะพัˆะธะฒะบะธ ะธ shim-ะฟั€ะพัะปะพะนะบัƒ.

เบเบฒเบ™เปเบˆเบเบขเบฒเบ Linux เบชเปˆเบงเบ™เปƒเบซเบเปˆเปƒเบŠเป‰เบŠเบฑเป‰เบ™ shim เบ‚เบฐเบซเบ™เบฒเบ”เบ™เป‰เบญเบเบฅเบปเบ‡เบ™เบฒเบกเป‚เบ”เบ Microsoft เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบเบงเบ”เบชเบญเบšเบเบฒเบ™เบšเบนเบ”เปƒเบ™ UEFI Secure Boot mode. เบŠเบฑเป‰เบ™เบ™เบตเป‰เบเบงเบ”เบชเบญเบš GRUB2 เบ”เป‰เบงเบเปƒเบšเบขเบฑเป‰เบ‡เบขเบทเบ™เบ‚เบญเบ‡เบ•เบปเบ™เป€เบญเบ‡, เป€เบŠเบดเปˆเบ‡เบญเบฐเบ™เบธเบเบฒเบ”เปƒเบซเป‰เบœเบนเป‰เบžเบฑเบ”เบ—เบฐเบ™เบฒเบเบฒเบ™เปเบˆเบเบขเบฒเบเบšเปเปˆเปƒเบซเป‰เบกเบตเบ—เบธเบ kernel เปเบฅเบฐเบเบฒเบ™เบ›เบฑเบšเบ›เบธเบ‡ GRUB เบ—เบตเปˆเป„เบ”เป‰เบฎเบฑเบšเบเบฒเบ™เบขเบฑเป‰เบ‡เบขเบทเบ™เป‚เบ”เบ Microsoft. เบŠเปˆเบญเบ‡เป‚เบซเบงเปˆเปƒเบ™ GRUB2 เบŠเปˆเบงเบเปƒเบซเป‰เบ—เปˆเบฒเบ™เบšเบฑเบ™เบฅเบธเบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เบฅเบฐเบซเบฑเบ”เบ‚เบญเบ‡เบ—เปˆเบฒเบ™เปƒเบ™เบ‚เบฑเป‰เบ™เบ•เบญเบ™เบซเบผเบฑเบ‡เบˆเบฒเบเบเบฒเบ™เบเบงเบ”เบชเบญเบš shim เบชเบปเบšเบœเบปเบ™เบชเปเบฒเป€เบฅเบฑเบ”, เปเบ•เปˆเบเปˆเบญเบ™เบ—เบตเปˆเบˆเบฐเป‚เบซเบฅเบ”เบฅเบฐเบšเบปเบšเบ›เบฐเบ•เบดเบšเบฑเบ”เบเบฒเบ™, wedging เป€เบ‚เบปเป‰เบฒเป„เบ›เปƒเบ™เบฅเบฐเบšเบปเบšเบ•เปˆเบญเบ‡เป‚เบชเป‰เบ‚เบญเบ‡เบ„เบงเบฒเบกเป„เบงเป‰เบงเบฒเบ‡เปƒเบˆเปƒเบ™เป€เบงเบฅเบฒเบ—เบตเปˆเป‚เบซเบกเบ” Secure Boot เบกเบตเบเบฒเบ™เป€เบ„เบทเปˆเบญเบ™เป„เบซเบงเปเบฅเบฐเป„เบ”เป‰เบฎเบฑเบšเบเบฒเบ™เบ„เบงเบšเบ„เบธเบกเบขเปˆเบฒเบ‡เป€เบ•เบฑเบกเบ—เบตเปˆเบเปˆเบฝเบงเบเบฑเบšเบ‚เบฐเบšเบงเบ™เบเบฒเบ™ boot เบ•เบทเปˆเบกเบญเบตเบ, เบฅเบงเบกเบ—เบฑเบ‡. เบเบฒเบ™เป‚เบซเบผเบ” OS เบญเบทเปˆเบ™, เบ›เบฑเบšเบ›เบธเบ‡เบฅเบฐเบšเบปเบšเบญเบปเบ‡เบ›เบฐเบเบญเบšเบ‚เบญเบ‡เบฅเบฐเบšเบปเบšเบ›เบฐเบ•เบดเบšเบฑเบ”เบเบฒเบ™ เปเบฅเบฐเบœเปˆเบฒเบ™เบเบฒเบ™เบ›เป‰เบญเบ‡เบเบฑเบ™ Lockdown.

เป€เบžเบทเปˆเบญเบชเบฐเบเบฑเบ”เบŠเปˆเบญเบ‡เป‚เบซเบงเปˆเป‚เบ”เบเบšเปเปˆเบกเบตเบเบฒเบ™เบ–เบญเบ™เบฅเบฒเบเป€เบŠเบฑเบ™เบ”เบดเบˆเบดเบ•เบญเบ™, เบเบฒเบ™เปเบˆเบเบขเบฒเบเบชเบฒเบกเบฒเบ”เบ™เปเบฒเปƒเบŠเป‰เบเบปเบ™เป„เบ SBAT (UEFI Secure Boot Advanced Targeting) เป€เบŠเบดเปˆเบ‡เบชเบฐเบซเบ™เบฑเบšเบชเบฐเบซเบ™เบนเบ™เบชเปเบฒเบฅเบฑเบš GRUB2, shim เปเบฅเบฐ fwupd เปƒเบ™เบเบฒเบ™เปเบˆเบเบขเบฒเบ Linux เบ—เบตเปˆเบ™เบดเบเบปเบกเบซเบผเบฒเบเบ—เบตเปˆเบชเบธเบ”. SBAT เป„เบ”เป‰เบ–เบทเบเบžเบฑเบ”เบ—เบฐเบ™เบฒเบฎเปˆเบงเบกเบเบฑเบ™เบเบฑเบš Microsoft เปเบฅเบฐเบเปˆเบฝเบงเบ‚เป‰เบญเบ‡เบเบฑเบšเบเบฒเบ™เป€เบžเบตเปˆเบก metadata เป€เบžเบตเปˆเบกเป€เบ•เบตเบกเปƒเบ™เป„เบŸเบฅเปŒเบ›เบฐเบ•เบดเบšเบฑเบ”เบเบฒเบ™เบ‚เบญเบ‡เบญเบปเบ‡เบ›เบฐเบเบญเบš UEFI, เป€เบŠเบดเปˆเบ‡เบ›เบฐเบเบญเบšเบกเบตเบ‚เปเป‰เบกเบนเบ™เบเปˆเบฝเบงเบเบฑเบšเบœเบนเป‰เบœเบฐเบฅเบดเบ”, เบœเบฐเบฅเบดเบ”เบ•เบฐเบžเบฑเบ™, เบญเบปเบ‡เบ›เบฐเบเบญเบšเปเบฅเบฐเบชเบฐเบšเบฑเบš. metadata เบ—เบตเปˆเบเปเบฒเบ™เบปเบ”เป„เบงเป‰เปเบกเปˆเบ™เป„เบ”เป‰เบฎเบฑเบšเบเบฒเบ™เบขเบฑเป‰เบ‡เบขเบทเบ™เบ”เป‰เบงเบเบฅเบฒเบเป€เบŠเบฑเบ™เบ”เบดเบˆเบดเบ•เบญเบ™เปเบฅเบฐเบชเบฒเบกเบฒเบ”เบ–เบทเบเบฅเบงเบกเป€เบ‚เบปเป‰เบฒเปเบเบเบ•เปˆเบฒเบ‡เบซเบฒเบเปƒเบ™เบšเบฑเบ™เบŠเบตเบฅเบฒเบเบŠเบทเปˆเบ‚เบญเบ‡เบญเบปเบ‡เบ›เบฐเบเบญเบšเบ—เบตเปˆเบญเบฐเบ™เบธเบเบฒเบ”เบซเบผเบทเบซเป‰เบฒเบกเบชเปเบฒเบฅเบฑเบš UEFI Secure Boot.

SBAT ะฟะพะทะฒะพะปัะตั‚ ะฑะปะพะบะธั€ะพะฒะฐั‚ัŒ ะธัะฟะพะปัŒะทะพะฒะฐะฝะธะต ั†ะธั„ั€ะพะฒะพะน ะฟะพะดะฟะธัะธ ะดะปั ะพั‚ะดะตะปัŒะฝั‹ั… ะฝะพะผะตั€ะพะฒ ะฒะตั€ัะธะน ะบะพะผะฟะพะฝะตะฝั‚ะพะฒ ะฑะตะท ะฝะตะพะฑั…ะพะดะธะผะพัั‚ะธ ะพั‚ะทั‹ะฒะฐ ะบะปัŽั‡ะตะน ะดะปั Secure Boot. ะ‘ะปะพะบะธั€ะพะฒะฐะฝะธะต ัƒัะทะฒะธะผะพัั‚ะตะน ั‡ะตั€ะตะท SBAT ะฝะต ั‚ั€ะตะฑัƒะตั‚ ะธัะฟะพะปัŒะทะพะฒะฐะฝะธั ัะฟะธัะบะฐ ะพั‚ะพะทะฒะฐะฝะฝั‹ั… ัะตั€ั‚ะธั„ะธะบะฐั‚ะพะฒ UEFI (dbx), ะฐ ะฟั€ะพะธะทะฒะพะดะธั‚ัั ะฝะฐ ัƒั€ะพะฒะฝะต ะทะฐะผะตะฝั‹ ะฒะฝัƒั‚ั€ะตะฝะฝะตะณะพ ะบะปัŽั‡ะฐ ะดะปั ั„ะพั€ะผะธั€ะพะฒะฐะฝะธั ะฟะพะดะฟะธัะตะน ะธ ะพะฑะฝะพะฒะปะตะฝะธั GRUB2, shim ะธ ะดั€ัƒะณะธั… ะฟะพัั‚ะฐะฒะปัะตะผั‹ั… ะดะธัั‚ั€ะธะฑัƒั‚ะธะฒะฐะผะธ ะทะฐะณั€ัƒะทะพั‡ะฝั‹ั… ะฐั€ั‚ะตั„ะฐะบั‚ะพะฒ. ะ”ะพ ะฒะฝะตะดั€ะตะฝะธั SBAT, ะพะฑะฝะพะฒะปะตะฝะธะต ัะฟะธัะบะฐ ะพั‚ะพะทะฒะฐะฝะฝั‹ั… ัะตั€ั‚ะธั„ะธะบะฐั‚ะพะฒ (dbx, UEFI Revocation List) ะฑั‹ะปะพ ะพะฑัะทะฐั‚ะตะปัŒะฝั‹ะผ ัƒัะปะพะฒะธะตะผ ะฟะพะปะฝะพะณะพ ะฑะปะพะบะธั€ะพะฒะฐะฝะธั ัƒัะทะฒะธะผะพัั‚ะธ, ั‚ะฐะบ ะบะฐะบ ะฐั‚ะฐะบัƒัŽั‰ะธะน, ะฝะตะทะฐะฒะธัะธะผะพ ะพั‚ ะธัะฟะพะปัŒะทัƒะตะผะพะน ะพะฟะตั€ะฐั†ะธะพะฝะฝะพะน ัะธัั‚ะตะผั‹, ะผะพะณ ะดะปั ะบะพะผะฟั€ะพะผะตั‚ะฐั†ะธะธ UEFI Secure Boot ะธัะฟะพะปัŒะทะพะฒะฐั‚ัŒ ะทะฐะณั€ัƒะทะพั‡ะฝั‹ะน ะฝะพัะธั‚ะตะปัŒ ัะพ ัั‚ะฐั€ะพะน ัƒัะทะฒะธะผะพะน ะฒะตั€ัะธะตะน GRUB2, ะทะฐะฒะตั€ะตะฝะฝะพะน ั†ะธั„ั€ะพะฒะพะน ะฟะพะดะฟะธััŒัŽ.

เปเบซเบผเปˆเบ‡เบ‚เปเป‰เบกเบนเบ™: opennet.ru

เป€เบžเบตเปˆเบกเบ„เบงเบฒเบกเบ„เบดเบ”เป€เบซเบฑเบ™