UEFI Secure Boot-dan yan keçməyə imkan verən GRUB2-də boşluqlar

GRUB2 yükləyicisində UEFI Secure Boot mexanizmindən yan keçməyə və təsdiqlənməmiş kodu işə salmağa imkan verən 7 boşluq aradan qaldırılıb, məsələn, yükləyici və ya kernel səviyyəsində işləyən zərərli proqram təminatını həyata keçirə bilərsiniz. Bundan əlavə, şim qatında bir zəiflik var ki, bu da sizə UEFI Secure Boot-dan yan keçməyə imkan verir. Bootloaderdə əvvəllər müəyyən edilmiş oxşar problemlərə bənzər zəifliklər qrupunun kod adı Boothole 3 idi.

GRUB2 və şimdəki problemləri həll etmək üçün paylamalar GRUB2, shim və fwupd üçün dəstəklənən SBAT (UEFI Secure Boot Advanced Targeting) mexanizmindən istifadə edə biləcək. 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.

Ə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.

Yükləyicidə problemləri həll etmək üçün paylamalar 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əli olacaqlar. 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.

İmzanı ləğv etmək əvəzinə, SBAT sizə Secure Boot düymələrini ləğv etmədən fərdi komponent versiya nömrələri üçün onun 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. Hal-hazırda, SBAT dəstəyi ən populyar Linux paylamalarına artıq əlavə edilmişdir.

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

  • CVE-2021-3696, CVE-2021-3695, nəzəri olaraq təcavüzkar kodunu icra etmək və UEFI Secure Boot-dan yan keçmək üçün istifadə oluna bilən xüsusi hazırlanmış PNG şəkillərini emal edərkən yığın əsaslı bufer daşqınlarıdır. Qeyd olunur ki, problemdən istifadə etmək çətindir, çünki işlək eksployt yaratmaq çoxlu sayda amilin nəzərə alınmasını və yaddaş düzümü haqqında məlumatın mövcudluğunu tələb edir.
  • CVE-2021-3697 - JPEG təsviri emal kodunda bufer axını. Problemdən istifadə etmək yaddaş tərtibatı haqqında bilik tələb edir və PNG məsələsi (CVSS 7.5) ilə təxminən eyni mürəkkəblik səviyyəsindədir.
  • CVE-2022-28733 - grub_net_recv_ip4_packets() funksiyasındakı tam ədəd daşması rsm->total_len parametrinin xüsusi hazırlanmış IP paketinin göndərilməsi ilə təsirlənməsinə imkan verir. Problem təqdim olunan zəifliklərin ən təhlükəlisi kimi qeyd olunub (CVSS 8.1). Uğurla istifadə olunarsa, zəiflik bilərəkdən daha kiçik yaddaş ölçüsünü ayırmaqla məlumatların bufer sərhədindən kənarda yazılmasına imkan verir.
  • CVE-2022-28734 - Soyulmuş HTTP başlıqlarını emal edərkən tək baytlıq bufer daşması. Problem xüsusi hazırlanmış HTTP sorğularını təhlil edərkən GRUB2 metadatasının pozulmasına (buferin bitməsindən dərhal sonra null baytın yazılması) səbəb ola bilər.
  • CVE-2022-28735 shim_lock doğrulayıcısındakı problem nüvədən kənar faylın yüklənməsinə icazə verir. Zəiflik UEFI Secure Boot rejimində imzalanmamış nüvə modullarını və ya təsdiqlənməmiş kodu yükləmək üçün istifadə edilə bilər.
  • CVE-2022-28736 GRUB2 tərəfindən dəstəklənməyən əməliyyat sistemlərini yükləmək üçün istifadə edilən zəncir yükləyici əmrinin təkrar icrası vasitəsilə grub_cmd_chainloader() funksiyasında artıq boşaldılmış yaddaş girişi. Təcavüzkar GRUB2-də yaddaşın ayrılmasını təyin edə bilsə, istismar təcavüzkar kodunun icrası ilə nəticələnə bilər.
  • CVE-2022-28737 - İşlənmiş EFI şəkillərini yükləyərkən və icra edən zaman handle_image() funksiyasında şim qatında bufer daşması baş verir.

Mənbə: opennet.ru

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