UEFI Secure Boot qorunmasından yan keçməyə imkan verən GRUB2-də iki boşluq

GRUB2 yükləyicisində xüsusi hazırlanmış şriftlərdən istifadə edərkən və müəyyən Unicode ardıcıllıqlarını emal edərkən kodun icrasına səbəb ola biləcək iki boşluq haqqında məlumat açıqlanıb. Zəifliklər UEFI Secure Boot tərəfindən təsdiqlənmiş yükləmə mexanizmini keçmək üçün istifadə edilə bilər.

Müəyyən edilmiş zəifliklər:

  • CVE-2022-2601 - Pf2 formatında xüsusi hazırlanmış şriftləri emal edərkən grub_font_construct_glyph() funksiyasında bufer daşması, bu, max_glyph_size parametrinin səhv hesablanması və yaddaş sahəsinin lazım olandan açıq şəkildə kiçik ayrılması nəticəsində baş verir. qlifləri yerləşdirin.
  • CVE-2022-3775 Xüsusi üslublu şriftdə bəzi Unicode ardıcıllıqlarını göstərən zaman sərhəddən kənar yazma baş verir. Problem şriftin emal kodundadır və qlifin eni və hündürlüyünün mövcud bitmapın ölçüsünə uyğun olmasını təmin etmək üçün lazımi yoxlamaların olmaması ilə əlaqədardır. Təcavüzkar məlumatların quyruğunun ayrılmış buferin kənarına yazılmasına səbəb olacaq şəkildə girişi düzəldə bilər. Qeyd olunur ki, zəiflikdən istifadənin mürəkkəbliyinə baxmayaraq, problemin kodun icrasına çatdırılması istisna edilmir.

Düzəliş yamaq kimi dərc edilib. Dağıtımlarda zəifliklərin aradan qaldırılması vəziyyəti bu səhifələrdə qiymətləndirilə bilər: Ubuntu, SUSE, RHEL, Fedora, Debian. GRUB2-də problemləri həll etmək üçün paketi yeniləmək kifayət deyil, siz həmçinin yeni daxili rəqəmsal imzalar yaratmalı və quraşdırıcıları, yükləyiciləri, nüvə paketlərini, fwupd proqram təminatını və şim qatını yeniləməlisiniz.

Əksər Linux paylamaları UEFI Təhlükəsiz Yükləmə rejimində təsdiqlənmiş yükləmə üçün Microsoft tərəfindən rəqəmsal imzalanmış kiçik şim qatından istifadə edir. Bu təbəqə GRUB2-ni öz sertifikatı ilə yoxlayır ki, bu da paylama tərtibatçılarına Microsoft tərəfindən təsdiq edilmiş hər bir nüvəyə və GRUB yeniləməsinə malik olmamağa imkan verir. GRUB2-dəki boşluqlar sizə kodunuzun uğurlu şəkildə yoxlanılması mərhələsindən sonra, lakin əməliyyat sistemini yükləməzdən əvvəl, Secure Boot rejimi aktiv olduqda etibar zəncirinə yapışaraq və sonrakı yükləmə prosesinə tam nəzarəti əldə etməyə imkan verir. başqa bir ƏS-nin yüklənməsi, əməliyyat sistemi komponentləri sisteminin dəyişdirilməsi və Kiliddən qorunmanın yan keçməsi.

Rəqəmsal imzanı ləğv etmədən zəifliyi bloklamaq üçün paylamalar ən populyar Linux paylamalarında GRUB2, shim və fwupd üçün dəstəklənən SBAT (UEFI Secure Boot Advanced Targeting) mexanizmindən istifadə edə bilər. SBAT Microsoft ilə birgə işlənib hazırlanmışdır və istehsalçı, məhsul, komponent və versiya haqqında məlumatları özündə əks etdirən UEFI komponentlərinin icra edilə bilən fayllarına əlavə metadata əlavə etməyi nəzərdə tutur. Göstərilən metadata rəqəmsal imza ilə təsdiqlənib və ayrıca UEFI Secure Boot üçün icazə verilən və ya qadağan olunmuş komponentlər siyahısına daxil edilə bilər.

SBAT Secure Boot üçün açarları ləğv etmədən fərdi komponent versiya nömrələri üçün rəqəmsal imzaların istifadəsini bloklamağa imkan verir. SBAT vasitəsilə zəifliklərin bloklanması UEFI sertifikatının ləğvi siyahısından (dbx) istifadəni tələb etmir, lakin imzaların yaradılması və GRUB2, şim və paylamalar tərəfindən təmin edilən digər yükləmə artefaktlarının yenilənməsi üçün daxili açarın dəyişdirilməsi səviyyəsində həyata keçirilir. SBAT-ın tətbiqindən əvvəl sertifikatın ləğvi siyahısının (dbx, UEFI Revocation List) yenilənməsi zəifliyin tamamilə bloklanması üçün ilkin şərt idi, çünki istifadə olunan əməliyyat sistemindən asılı olmayaraq təcavüzkar GRUB2-nin köhnə həssas versiyası ilə yüklənə bilən mediadan istifadə edə bilərdi. UEFI Secure Boot-u pozmaq üçün rəqəmsal imza ilə təsdiq edilmişdir.

Mənbə: opennet.ru

Добавить комментарий