UEFI Secure Boot хамгаалалтыг давах боломжийг олгодог GRUB2 дахь хоёр эмзэг байдал

GRUB2 ачаалагчийн хоёр эмзэг байдлын талаар мэдээлэл илэрсэн бөгөөд энэ нь тусгайлан боловсруулсан фонт ашиглах, Юникод тодорхой дарааллыг боловсруулах үед кодыг гүйцэтгэхэд хүргэдэг. UEFI Secure Boot баталгаажуулсан ачаалах механизмыг тойрч гарахын тулд эмзэг байдлыг ашиглаж болно.

Тодорхойлогдсон сул талууд:

  • CVE-2022-2601 - max_glyph_size параметрийн буруу тооцоолол, санах ойн талбайн хуваарилалт шаардлагатай хэмжээнээс илт бага зэргээс шалтгаалан pf2 форматаар тусгайлан боловсруулсан фонтуудыг боловсруулах үед grub_font_construct_glyph() функцийн буфер халилт. глифүүдийг байрлуулах.
  • CVE-2022-3775 Зарим Юникод дарааллыг тусгайлан боловсруулсан фонтоор буулгах үед хязгаараас гадуур бичих тохиолдол гардаг. Асуудал нь фонт боловсруулах кодонд байгаа бөгөөд глифийн өргөн ба өндөр нь боломжтой битмап хэмжээтэй тохирч байгаа эсэхийг шалгах зохих шалгалт хийгдээгүйгээс үүдэлтэй. Халдагч нь өгөгдлийн сүүлийг хуваарилагдсан буферын гадна талд бичихэд хүргэх байдлаар оролтыг урлаж чадна. Эмзэг байдлыг ашиглах нь төвөгтэй хэдий ч кодыг гүйцэтгэхэд асуудлыг авчрахыг үгүйсгэхгүй гэдгийг тэмдэглэв.

Засварыг засвар хэлбэрээр нийтэлсэн. Түгээлтийн сул талуудыг арилгах статусыг Ubuntu, SUSE, RHEL, Fedora, Debian гэсэн хуудсууд дээр үнэлж болно. GRUB2-ийн асуудлыг засахын тулд багцаа шинэчлэх нь хангалттай биш бөгөөд та шинэ дотоод дижитал гарын үсэг үүсгэх, суулгагч, ачаалагч, цөмийн багц, fwupd програм хангамж, shim давхаргыг шинэчлэх шаардлагатай болно.

Ихэнх Линуксийн түгээлтүүд нь UEFI Secure Boot горимд баталгаажсан ачааллыг хийхийн тулд Microsoft-ын тоон гарын үсэг бүхий жижиг давхаргыг ашигладаг. Энэ давхарга нь GRUB2-г өөрийн гэрчилгээгээр баталгаажуулдаг бөгөөд энэ нь түгээлтийн хөгжүүлэгчдэд цөм болон GRUB шинэчлэлт бүрийг Microsoft-оос баталгаажуулахгүй байх боломжийг олгодог. GRUB2-ийн эмзэг байдал нь танд кодыг амжилттай баталгаажуулсны дараа үйлдлийн системийг ачаалахаас өмнө аюулгүй ачаалах горим идэвхжсэн үед итгэлцлийн гинжин хэлхээнд орж, цаашдын ачаалах процессыг бүрэн хянах боломжийг олгодог. өөр үйлдлийн систем ачаалах, үйлдлийн системийн бүрэлдэхүүн хэсгүүдийн системийг өөрчлөх, түгжих хамгаалалтыг тойрч гарах.

Дижитал гарын үсгийг хүчингүй болгохгүйгээр эмзэг байдлыг хаахын тулд түгээлтүүд SBAT (UEFI Secure Boot Advanced Targeting) механизмыг ашиглаж болох бөгөөд энэ нь ихэнх Linux түгээлтийн GRUB2, shim болон fwupd-д дэмжигддэг. SBAT нь Майкрософт компанитай хамтран бүтээгдсэн бөгөөд үйлдвэрлэгч, бүтээгдэхүүн, бүрэлдэхүүн хэсэг, хувилбарын талаарх мэдээллийг агуулсан UEFI бүрэлдэхүүн хэсгүүдийн гүйцэтгэгдэх файлуудад нэмэлт мета өгөгдлийг нэмж оруулсан болно. Заасан мета өгөгдөл нь дижитал гарын үсгээр баталгаажсан бөгөөд UEFI Secure Boot-ийн зөвшөөрөгдсөн эсвэл хориотой бүрэлдэхүүн хэсгүүдийн жагсаалтад тусад нь оруулж болно.

SBAT нь Secure Boot-ын түлхүүрүүдийг хүчингүй болгохгүйгээр бие даасан бүрэлдэхүүн хэсгийн хувилбарын дугаарт дижитал гарын үсэг ашиглахыг хориглох боломжийг олгодог. SBAT-ээр дамжуулан эмзэг байдлыг блоклох нь UEFI гэрчилгээг хүчингүй болгох жагсаалтыг (dbx) ашиглах шаардлагагүй бөгөөд гарын үсэг үүсгэх, GRUB2, shim болон түгээлтээс нийлүүлсэн бусад ачаалах эд ангиудыг шинэчлэхийн тулд дотоод түлхүүрийг солих түвшинд хийгддэг. SBAT-ийг нэвтрүүлэхээс өмнө халдагч нь ашигласан үйлдлийн системээс үл хамааран GRUB2-ийн хуучин эмзэг хувилбар бүхий ачаалах боломжтой медиаг ашиглаж болох тул гэрчилгээг хүчингүй болгох жагсаалтыг (dbx, UEFI Revocation List) шинэчлэх нь эмзэг байдлыг бүрэн хаах урьдчилсан нөхцөл байсан. UEFI Secure Boot-ийг зөрчихийн тулд дижитал гарын үсгээр баталгаажуулсан.

Эх сурвалж: opennet.ru

сэтгэгдэл нэмэх