Zraniteľnosti, umožňujúce zameniť obrazy a vykonať kód na ASU serveroch projektu OpenWrt

V rozvíjajúcom sa projekte OpenWrt boli v nástroji ASU (Attended SysUpgrade) odhalené kritické zraniteľnosti (CVE-2024-54143), ktoré umožňujú skompromitovať zostavovacie artefakty distribuované cez službu sysupgrade.openwrt.org alebo prostredníctvom externých ASU serverov, a dosiahnuť inštaláciu modifikovaných obrazov firmvéru, ktoré vytvoril útočník na systémy používateľov, ktorí používajú režim „attended upgrade“ na aktualizáciu firmvérov cez webové rozhranie selector.openwrt.org alebo nástroj príkazového riadku attended.sysupgrade.

Na úspešné vykonanie útoku stačí útočníkovi poslať požiadavku na vytvorenie zostavy na server ASU (podobné požiadavky môže poslať každý používateľ bez autentifikácie). Manipuláciou so špeciálne formátovaným zoznamom balíkov môže útočník organizovať odosielanie predtým vygenerovaných škodlivých obrazov ako odpoveď na legitímne zostavovacie požiadavky iných používateľov.

Služba ASU sa používa v OpenWrt na vytváranie a inštaláciu aktualizácií firmvéru bez straty existujúcich nastavení a nainštalovaných balíkov používateľom. Cez webové rozhranie alebo nástroj príkazového riadku používateľ posiela požiadavku na vytvorenie aktualizovaného obrazu firmvéru, pričom uvádza balíky nainštalované v jeho systéme. Po chvíli server ASU vytvorí obraz, ktorý zodpovedá požadovanému obsahu, po čom si ho používateľ stiahne a nainštaluje do svojho zariadenia. Okrem toho je k dispozícii možnosť, ktorá umožňuje zachovať existujúce nastavenia v aktualizovanom firmvéri.

Za spracovanie požiadaviek od používateľov zodpovedá server ASU, ktorý spúšťa automatickú zostavu obrazov firmvéru pomocou nástroja ImageBuilder a tiež podporuje cache z predtým pripravených zostáv. V prípade, že používateľ požaduje obraz, ktorý bol už predtým zostavený a zachováva aktuálnosť, systém okamžite poskytne existujúci obraz z cache bez spustenia zostavovacieho procesu. serveri a zachováva aktuálnosť, systém okamžite poskytne existujúci obraz z cache bez spustenia zostavovacieho procesu.

Správanie útoku sa stalo možným vďaka dvom zraniteľnostiam:

  • Zraniteľnosť v spracovateľovi požiadaviek build_reques.py z nástrojového súboru Imagebuilder umožňuje vloženie vlastných príkazov do procesu zostavovania prostredníctvom zadaných špeciálne formátovaných názvov balíkov. Zraniteľnosť je spôsobená nedostatočnou kontrolou špeciálnych znakov v názvoch balíkov pred ich použitím medzi argumentmi utility make. Využitím tejto zraniteľnosti môže útočník na serveri vytvoriť škodlivé obrazy firmvéru, podpísané správnym zostavovacím kľúčom.
  • Zraniteľnosť v knižnici util.py, spôsobená tým, že hashe SHA-256 použité na overenie prítomnosti už hotových obrazov firmvéru boli skrátené na 12 znakov, čo výrazne znižovalo úroveň entropie a umožňovalo cez hľadanie kolízií vytvoriť škodlivý obraz, ktorého hash zodpovedá legitímnemu obrazu. V kombinácii so zraniteľnosťou v Imagebuilder mohla byť problém s hashom využitá útočníkom na "znečistenie" cache ASU Server a umiestnenie v nej škodlivých obrazov, ktoré by boli zasielané na požiadavky bežných používateľov.

Zmena, po ktorej sa objavila možnosť vykonania útoku, bola vykonaná 8. júla. Problém bol odstránený 4. decembra. Na zabezpečenie fungovania služby ASU boli použité samostatné servery, ktoré sa neprekryli s hlavnými zostavovacími systémami projektu, oddelené od OpenWrt Buildbotu a nemali prístup k takým dôverným zdrojom, ako sú SSH kľúče a certifikáty na vytváranie digitálnych podpisov.

Tvrdí sa, že vývojári OpenWrt nenašli žiadne stopy po kompromise infraštruktúry projektu, ale pre bezpečnosť znova nainštalovali systémy, na ktorých sa vykonávali zraniteľné komponenty. Problém sa nedotkol oficiálnych obrazov distribuovaných cez web downloads.openwrt.org, a pri analýze zostavovacích protokolov neboli nájdené žiadne stopy zaslania škodlivých požiadaviek. Zároveň, keďže na serveroch ASU prebieha automatické čistenie zostáv starších ako 7 dní, uskutočniť audit starých zostáv sa ukázalo ako nemožné.

Pravdepodobnosť využitia identifikovaných zraniteľností v praxi na šírenie škodlivých obrazov prostredníctvom infraštruktúry OpenWrt je predstaviteľmi OpenWrt hodnotená ako blízka nule, avšak používateľom ASU sa odporúča nahradiť firmvér OpenWrt na svojich zariadeniach na tú istú verziu.

Zdroj: opennet.ru

Kúpte si spoľahlivý hosting pre webové stránky s ochranou proti DDoS, VPS VDS servery 🔥 Kúpte si spoľahlivý hosting pre webové stránky s ochranou proti DDoS, VPS VDS servery | ProHoster