Подробности за Уязвимости в случаите на ASU (Присъствал на SysUpgrade) от OpenWrt. Откритите уязвимости позволяват на нападателите да компрометират артефакти създаване на програми, разпространявани чрез сървъри на sysupgrade.openwrt.org или ASU сървъри на трети страни, улесняващи инсталирането на злонамерен фърмуер на устройствата на жертвите.
Услугата ASU е критичен инструмент, който позволява на потребителите на OpenWrt да генерират актуализации на фърмуера, съобразени с техните системи, без да губят инсталирани конфигурации или пакети. Потребителите могат да извършват тези актуализации с помощта на уеб интерфейс или инструмент от командния ред, което прави процеса достъпен и ефективен. Тази достъпност обаче носи и рискове, тъй като липсата на механизми за удостоверяване в заявките към сървъра оставя вратата отворена за нападателите да експлоатират системата.
Споменава се, че уязвимият компонент, ASU Server, отговаря за управлението на заявките, стартирането на процеса на автоматично компилиране на изображения с помощта на ImageBuilder, както и за съхраняването на тези изображения в кеш за повторна употреба. Използването на кеша, макар и ефективно, е ключът към проблема, тъй като целостта или произходът на съхранените изображения не се проверяват.
El атаката използва основната функционалност на услугата ASUЧе позволява на потребителите да генерират персонализирани изображения на фърмуера чрез подадени заявки без удостоверяване. Нападателят може да манипулира тези заявки, като въведе специално изработен списък с пакети, за да замени легитимните изображения, поискани от други потребители, с предварително генерирани злонамерени версии. Това е възможно поради начина, по който ASU сървърът управлява процеса на генериране на изображения и кеша.
Как работи атаката?
- Нападателят изпраща заявка до ASU сървъра, която не изисква удостоверяване.
- Манипулира списъка с пакети, за да вмъкне вече генерирани злонамерени изображения в системата.
- Когато друг потребител направи законна заявка за подобно изображение, сървърът, вместо да генерира ново изображение, доставя злонамерената версия от своя кеш.
По отношение на атаката се споменава, че тя е била улеснена благодарение на промяна, направена на 8 юли, и е разрешена на 4 декември. За да смекчи въздействието и да защити услугата ASU, OpenWrt използва отделни сървъри, изолирани от основните системи на проекта, без достъп до чувствителни ресурси като SSH ключове и сертификати, използвани за цифрово подписване на изображенията.
El атаката беше възможна благодарение на две уязвимости :
- Уязвимост в манипулатора на заявки build_reques.py: което позволи на нападател да отмени командите на процеса на изграждане при предаване на специално форматирани имена на пакети. Неуспешната проверка на специалните символи в имената на пакетите, преди да се използват като аргументи на помощната програма make, позволи на атакуващите да вмъкнат злонамерени команди по време на процеса на създаване на изображение на фърмуера. В резултат на това нападателят може да генерира злонамерени изображения на сървъра, подписани с правилния ключ за сглобяване.
- Уязвимост в библиотеката util.py свързани с хеша SHA-256: В този случай, SHA-256 хешове, използвани за проверка на изображения списъци на фърмуера в кеша бяха намалени до само 12 знака, което направи нивото на ентропия значително ниско. Това намаление позволи на атакуващия да използва техники за избор на сблъсък, за да генерира злонамерено изображение, чийто хеш законно съответства на този на валидно изображение. Това, съчетано с уязвимостта на Imagebuilder, позволи на атакуващия да „замърси“ кеша на сървъра на ASU и да върне злонамерени изображения на нормалните потребители, които правят легитимни заявки.
Накрая се споменава, че въпреки че Разработчиците на OpenWrt смятат това la вероятност че тези уязвимости са били ефективно използвани е близо до нула, препоръчва се че потребителите на ASU сменете фърмуера на OpenWrt на вашите устройства със същата версия, като предпазна мярка.
Ако сте заинтересовани да научите повече за това, можете да проверите подробностите в следваща връзка.