Пропуските позволяват изпълнение на злонамерен код още преди стартирането на операционната система
Изследователи от компанията Binarly разкриха шест уязвимости в широко използвания зареждащ модул U-Boot, които могат да позволят изпълнение на злонамерен код по време на стартиране на устройството. Успешната експлоатация би дала възможност за инсталиране на устойчив зловреден софтуер на ниво фърмуер, заобикаляне на защитни механизми и компрометиране на системата още преди зареждането на операционната система.
U-Boot е един от най-разпространените софтуерни компоненти в света на вградените системи. Той се използва в сървърни контролери за управление (BMC), мрежово оборудване, индустриални системи, IoT устройства и множество други решения, базирани на Linux.
Атаката започва още преди операционната система
Особено тревожно е, че уязвимостите засягат механизма Verified Boot, който трябва да гарантира целостта на фърмуера чрез цифрови подписи. Именно този механизъм проверява дали зарежданите компоненти са подписани от доверен източник преди стартиране на устройството.
Според Binarly две от откритите уязвимости могат да доведат до произволно изпълнение на код, докато останалите четири позволяват отказ на услуга чрез срив на устройството по време на процеса на зареждане.
Сред най-сериозните проблеми са уязвимости за повреждане на паметта, неконтролирано четене извън допустимите граници и недостатъчна проверка на данни във фърмуерните изображения. Чрез специално подготвен фърмуер нападателят може да получи контрол върху системата в най-ранния етап на стартиране.
Рискът обхваща повече от десетилетие разработки
Изследването показва, че по-голямата част от уязвимия код присъства в проекта още от версия 2013.07. Това означава, че потенциално са засегнати над 50 официални версии на U-Boot, както и огромен брой модифицирани версии, използвани от производители на хардуер.
При успешна атака престъпниците биха могли да деактивират защитни механизми на фърмуера, да променят процеса на зареждане, да внедрят устойчив зловреден код и да получат контрол върху устройството на ниво, което традиционните решения за защита трудно могат да открият.
Допълнително усложнение е фактът, че физически достъп невинаги е необходим. При устройства, които поддържат дистанционно обновяване на фърмуера, компрометиран административен интерфейс може да бъде използван за качване на злонамерен образ и активиране на атаката.
Предстои дълъг процес по отстраняване
Разработчиците на U-Boot вече са приели корекции за всички шест уязвимости. Реалната защита обаче зависи от производителите на хардуер, които трябва да интегрират поправките в собствените си фърмуерни актуализации.
Това превръща случая в сериозен риск за организации, използващи по-стари или вече неподдържани устройства, които може никога да не получат необходимите обновления. Защитата на фърмуера все по-често се превръща в критичен елемент от киберсигурността, тъй като атаките на това ниво осигуряват висока степен на устойчивост и изключително трудно откриване.









